10.3. SSHの便利な使い方

【動画説明】
ネットワークの帯域が十分広ければ気にする必要はありませんが、ダイヤルアップ接続時など帯域が狭い場合には、圧縮をかけて通信したほうが効率のいいことがあります。圧縮付きの暗号化を行うには、“-C”というパラメータをつけるだけです。

$ ssh -Cv 192.168.2.201 -l example ←”-v”で冗長表示

OpenSSH_5.3p1, OpenSSL 1.0.0-fips 29 Mar 2010

debug1: Reading configuration data /etc/ssh/ssh_config

Last login: Tue Jan 31 17:56:54 2012 from 192.168.2.81

圧縮レベルは1(最低、最速)〜9(最高、低速)までありますが、標準では6が用いられています。レベルを変更するには引数に“-o CompressionLevel=9”のように指定します。

$ ssh -v -o CompressionLevel=9 example@192.168.2.201

ところでSSHの仕組みを用いれば、盗聴されたくないファイルを転送することもできます。暗号化ファイル転送にはscpコマンドを用います。書式は、

scp [オプション] コピー元 コピー先(複数指定可能)

となっています。コピー元、コピー先の指定法は「IPアドレスorホスト名:ディレクトリ」となっています。たとえば以下のようになります。

scp test.txt example@192.168.2.201:/tmp

【オプション説明】

-C 通信を圧縮する
-r ディレクトリを再帰的にコピーします
-p コピー元ファイルの最終修正時刻、最終アクセス時刻、およびパーミッションを保持したままコピーする。(オーナーは所持できません)
-P ポート番号を指定します
-v 冗長表示モードで実行する

ディレクトリを指定しない場合はリモートホストにおけるホームディレクトリとなります。オプションはsshコマンドのものが流用できるため、“-C”による圧縮転送が可能です。帯域の狭い状況でのテキスト転送に効果があります。

 $ scp -Cv XXXXXX example@192.168.2.201:/tmp

example@192.168.2.201’s password:

XXXXXX                                100%  132KB 132.1KB/s   00:00

さらに便利な機能として、

  • ポートフォワーディング機能
  • Xクライアントのリモート呼び出し機能

等が存在します。是非インターネットで調べて活用してみてください。