Solaris のシステム管理 (セキュリティサービス)

Secure Shell を構成する

Secure Shell セッションの特性は、構成ファイルで変更できます。コマンド行のオプションを使用することで、このデフォルト設定を変更できます。

Secure Shell クライアントの構成

ほとんどの場合、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」を設定します。

キーワード UseRsh は、rlogin rsh コマンドを使用することを指定します。このキーワードは、多くの場合、Secure Shell がサポートされないときに使用します。

キーワード Protocol には、Secure Shell プロトコルのバージョン (v1 または v2) を設定します。両方のバージョンを指定する場合は、コンマで区切ります。最初のバージョンの使用に失敗した場合は、2 番目のバージョンが使用されます。

キーワード IdentityFile には、ユーザーの非公開鍵を格納する代替ファイル名を指定します。

キーワード Cipher には、v1 の暗号化アルゴリズム (blowfish または 3des) を指定します。キーワード Ciphers には、v2 の暗号化アルゴリズム (3des-cbcblowfish-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 アドレスが確認されます。

クライアント側の X11 転送とポート転送パラメータ

LocalForward キーワードには、リモートホスト上の特定のポートに転送するローカル TCP/IP ポートを指定します。セキュリティ保護されたチャネルが使用されます。GatewayPorts キーワードを指定すると、ローカル転送されたポートにリモートホストが接続することを可能にします。

ssh コマンドでポート転送するときは、次のオプションを使用できます。

ForwardX11 キーワードを指定すると、 DISPLAY 環境変数が設定されたリモートホストに X11 接続がリダイレクトされます。XAuthLocation キーワードには、xauth(1) プログラムの場所を指定します。

クライアント側の接続とその他のパラメータ

NumberOfPasswordPrompts キーワードには、パスワードを要求する回数を指定します。指定した回数が終了すると、Secure Shell が終了します。ConnectionAttempts キーワードには、接続試行回数 (1 秒間に 1 回試行) を指定します。この回数が終了すると、Secure Shell が終了します。ただし、FallBackToRsh キーワードが設定されている場合は、rsh に戻ります。

Compression キーワードを指定すると、転送データが圧縮されます。CompressionLevel キーワードには、圧縮レベル (1 - 9) を設定します。圧縮率とそれを行う時間にはトレードオフの関係があります。

User には、代替ユーザー名を指定します。Hostname には、リモートホストの代替名を指定します。ProxyCommand には、Secure Shell を起動する代替コマンド名を指定します。プロキシサーバーに接続できるコマンドはすべてここに指定できます。指定するコマンドは、標準入力から読み込んで標準出力に書き込む必要があります。

Batchmode を指定すると、パスワードプロンプトが無効になります。パスワードプロンプトは、スクリプトなどのバッチジョブに使用します。

KeepAlive を指定すると、ホストがクラッシュしたときに、ネットワークの問題が発生したことを示すメッセージが出力されます。LogLevel には、ssh メッセージの冗長レベルを設定します。

EscapeChar には、特殊文字をプレーンテキストとして表示するときに、接頭辞として使用する単一文字を定義します。

Secure Shell サーバーの構成

サーバー側の Secure Shell セッションの特性は、/etc/ssh/sshd_config ファイルによって管理されます。このファイルは、システム管理者が設定します。

サーバー側の認証パラメータ

使用できる認証方式のキーワードは、以下のとおりです。

HostKey および HostDSAKey には、デフォルトのファイル名を使用しないときに、ホスト公開鍵を格納するファイルを指定します。KeyRegenerationInterval には、サーバー鍵を再生成する頻度を指定します。

Protocol には、バージョンを指定します。Ciphers には、v2 の暗号化アルゴリズムを定義します。ServerKeyBits には、サーバーの鍵のビット数を定義します。

ポートと転送パラメータ

AllowTCPForwarding には、TCP 転送を許可するかどうかを指定します。

GatewayPorts を指定すると、クライアントに転送されたポートにリモートホストが接続されます。Port には、sshd が待機するポート番号を指定します。ListenAddress には、sshd が待機するローカルアドレスを指定します。ListenAddress を指定しない場合、 sshd はデフォルトですべてのアドレスで待機します。

X11Forwarding を指定すると、X11 転送が有効になります。X11DisplayOffset には、転送に使用できる最初の表示番号を指定します。このキーワードを指定すると、sshd が実際の X11 サーバーに干渉しなくなります。XAuthLocation には、 xauth プログラムの場所を指定します。

セッション制御パラメータ

KeepAlive を指定すると、接続が切断したときおよびホストがクラッシュしたときに、メッセージが表示されます。LogLevel には、sshd メッセージの冗長レベルを設定します。SyslogFacility には、ログに記録する sshd メッセージの機能コードを指定します。

サーバー接続とその他のパラメータ

AllowGroupsAllowUsersDenyGroups、および DenyUsers キーワードを使用して、ssh を使用できるユーザーと使用できないユーザーを制御します。

LoginGraceTimeMaxStartupsPermitRootLogin、および PermitEmptyPasswords キーワードを使用して、ログインするユーザーを制御します。StrictModes を指定すると、sshd は、ユーザーがログインする前にファイルのモードと所有権およびホームディレクトリを確認します。UseLogin には、対話型ログインセッションで login を使用するかどうかを指定します。このキーワードは有効にする必要はありません。Solaris 環境ではできるだけ使用しないでください。

Subsystem を指定すると、sftp に使用するファイル転送デーモンが構成されます。