ほとんどの場合、Secure Shell セッションのクライアント側の特性は、システムの構成ファイル (/etc/ssh/ssh_config) によって決定されます。このファイルは、システム管理者が設定します。$HOME/.ssh/config 内のユーザーの構成は、システムの構成ファイル内の設定より優先されます。さらに、コマンド行での指定は、これらの構成ファイルより優先されます。
コマンド行オプションはクライアント側の要求ですが、 サーバー側の /etc/ssh/sshd_config ファイルによって許可または拒否されます (ssh_config(4) のマニュアルページを参照)。構成ファイルのキーワードとコマンドオプションについては、次の節で説明します。詳細は、ssh(1)、scp(1)、sftp(1)、および ssh_config(4) のマニュアルページを参照してください。2 つのユーザー構成ファイルの中で Host キーワードには、ホストまたはワイルドカード表現を指定します。このキーワードは、次の Host キーワードが出現するまで、後続のすべてのキーワードに適用されます。
ローカルホストごとに異なる Secure Shell 特性を使用する場合、システム管理者は /etc/ssh/ssh_config ファイルにホストまたはその正規表現形式とともにいくつかのパラメータセットを定義します。ファイル内のエントリを、 Host キーワードでグループ化してください。Host キーワードを使用しない場合、クライアント構成ファイル内のエントリは、ユーザーが使用しているローカルホストに適用されます。
認証方式を決定するには、次のキーワードのいずれかに「yes」を設定します。
DSAAuthentication
PasswordAuthentication
RhostsAuthentication
RhostsRSAAuthentication
キーワード UseRsh は、rlogin と rsh コマンドを使用することを指定します。このキーワードは、多くの場合、Secure Shell がサポートされないときに使用します。
キーワード Protocol には、Secure Shell プロトコルのバージョン (v1 または v2) を設定します。両方のバージョンを指定する場合は、コンマで区切ります。最初のバージョンの使用に失敗した場合は、2 番目のバージョンが使用されます。
キーワード IdentityFile には、ユーザーの非公開鍵を格納する代替ファイル名を指定します。
キーワード Cipher には、v1 の暗号化アルゴリズム (blowfish または 3des) を指定します。キーワード Ciphers には、v2 の暗号化アルゴリズム (3des-cbc、blowfish-cbc、および aes128–cbc) の優先順序を指定します。ssh および scp コマンドの -c オプションは、コマンド行で暗号化アルゴリズムを指定するときに使用します。
既知のホストファイル (/etc/ssh/ssh_known_hosts および $HOME/.ssh/known_hosts) には、すべてのホストの公開鍵が含まれています。この公開鍵は、クライアントが Secure Shell を使用してホストと通信するときに使用されます。GlobalKnownHostsFile キーワードには、/etc/ssh/ssh_known_hosts の代替ファイルを指定します。UserKnownHostsFile キーワードには、$HOME/.ssh/known_hosts の代替ファイルを指定します。
StrictHostKeyChecking キーワードを指定した場合は、新しいホストを既知のホストファイルに追加するときは手動で行う必要があります。また、公開鍵が変更されたり、公開鍵が既知のホストファイルに存在しないホストは拒否されます。キーワード CheckHostIP を指定すると、DNS のスプーフィングによって鍵が変更された場合に、既知のホストファイルに指定されているホストの IP アドレスが確認されます。
LocalForward キーワードには、リモートホスト上の特定のポートに転送するローカル TCP/IP ポートを指定します。セキュリティ保護されたチャネルが使用されます。GatewayPorts キーワードを指定すると、ローカル転送されたポートにリモートホストが接続することを可能にします。
ssh コマンドでポート転送するときは、次のオプションを使用できます。
ForwardX11 キーワードを指定すると、 DISPLAY 環境変数が設定されたリモートホストに X11 接続がリダイレクトされます。XAuthLocation キーワードには、xauth プログラムの場所を指定します。
NumberOfPasswordPrompts キーワードには、パスワードを要求する回数を指定します。指定した回数が終了すると、Secure Shell が終了します。ConnectionAttempts キーワードには、接続試行回数 (1 秒間に 1 回試行) を指定します。この回数が終了すると、Secure Shell が終了します。ただし、FallBackToRsh キーワードが設定されている場合は、rsh に戻ります。
Compression キーワードを指定すると、転送データが圧縮されます。CompressionLevel キーワードには、圧縮レベル (1 - 9) を設定します。圧縮率とそれを行う時間にはトレードオフの関係があります。
User には、代替ユーザー名を指定します。Hostname には、リモートホストの代替名を指定します。ProxyCommand には、Secure Shell を起動する代替コマンド名を指定します。プロキシサーバーに接続できるコマンドはすべてここに指定できます。指定するコマンドは、標準入力から読み込んで標準出力に書き込む必要があります。
Batchmode を指定すると、パスワードプロンプトが無効になります。パスワードプロンプトは、スクリプトなどのバッチジョブに使用します。
KeepAlive を指定すると、ホストがクラッシュしたときに、ネットワークの問題が発生したことを示すメッセージが出力されます。LogLevel には、ssh メッセージの冗長レベルを設定します。