sshd の設定(sshd_config)
作成 : 2003/03/16
sshd の設定
sshd の設定は、sshd_config に記述する。 sshd_config は、デフォルトでは /usr/local/etc ディレクトリにインストールされる。
sshd_config で設定できるキーワード(一部)
X11 転送や Kerberos 認証を設定するキーワードは省略。 (よくわからん....)
Port
sshd が Listen するポートを指定する。 デフォルト値は 22。
Port 22
Protocol
sshd がサポートするプロトコルバージョンを指定する。 デフォルト値は 2,1(バージョン 1 と 2 両方をサポート)。
Protocol 2,1
ListenAddress
sshd が Listen するローカルアドレスとポートを指定する。 ここポートを指定しない場合は、先に Port で指定しておく。 デフォルト値は 0.0.0.0(すべてのローカルアドレスとポートへの接続を Listen)。
ListenAddress 0.0.0.0
HostKey
ホストの秘密鍵ファイル。 ssh バージョン 1 の秘密鍵ファイルは ssh_host_key。 ssh バージョン 2 の RSA 鍵ファイルは ssh_host_rsa_key。 ssh バージョン 2 の DSA 鍵ファイルは ssh_host_dsa_key。 ファイルのパーミッションが、グループや他ユーザからアクセスできるようになっていると、通信は切断される。
HostKey /usr/local/etc/ssh_host_key HostKey /usr/local/etc/ssh_host_rsa_key HostKey /usr/local/etc/ssh_host_dsa_key
KeyRegenerationInterval [ssh v1]
サーバ鍵の再生成間隔。 サーバ鍵は 1 度でも使用されると、この間隔を置いて自動的に再生成される。 デフォルト値は 3600 sec = 1 hour。
KeyRegenerationInterval 3600
ServerKeyBits [ssh v1]
サーバ鍵のビット長。 最低 512 ビットで、デフォルト値は 768 ビット。
ServerKeyBits 768
SyslogFacility
sshd からのメッセージをロギングするときに使用されるファシリティコード。 使用できるファシリティは、DAEMON | USER | AUTH | LOCAL0 | LOCAL1 | LOCAL2 | LOCAL3 | LOCAL4 | LOCAL5 | LOCAL6 | LOCAL7。 デフォルト値は AUTH。
SyslogFacility AUTH
LogLevel
sshd からのメッセージをロギングするときに使用されるレベル。 使用できるレベルは、QUIET | FATAL | ERROR | INFO | VERBOSE | DEBUG | DEBUG1 | DEBUG2 | DEBUG3。 デフォルト値は INFO。
LogLevel INFO
LoginGraceTime
ユーザがログインに成功するまでの制限時間。 この時間内にログイン成功しないと、サーバは接続を切る。 0 を指定すると、無制限。 デフォルト値は 120 秒。
LoginGraceTime 120
PermitRootLogin
ssh を使用したroot のログイン許可するか設定する。 yes | without-password | forced-commands-only | no のいずれかを指定する。 デフォルト値は yes。
without-password を指定すると、パスワード認証以外でのログインを許可する。 forced-commands-only を指定すると、コマンドオプションが指定されたときのみ、公開鍵認証によるログインを許可する。
PermitRootLogin yes
StrictModes
ログインさせる前に、ユーザホームディレクトリのオーナシップとパーミッションをチェックするか設定する。 デフォルト値は yes。
StrictModes yes
RSAAuthentication [ssh v1]
RSA 認証を許可するか設定する。 デフォルト値は yes。
RSAAuthentication yes
PubkeyAuthentication [ssh v2]
公開鍵認証を許可するか設定する。 デフォルト値は yes。
PubkeyAuthentication yes
AuthorizedKeysFile
ユーザ認証に使用する公開鍵ファイルを指定する。 デフォルト値は .ssh/authorized_keys。
AuthorizedKeysFile .ssh/authorized_keys
RhostsAuthentication [ssh v1]
~/.rhosts ファイルまたは ~/.shosts ファイル(IgnoreRhostsがnoのとき)や /etc/hosts.equiv ファイルまたは /etc/shosts.equiv による認証を許可する。 この認証方法はセキュアでないので、許可しないほうがよい。 特に .rhosts ファイルによる認証は、使用してはいけない。 デフォルト値は no。
RhostsAuthentication no
IgnoreRhosts
RhostsAuthentication、RhostsRSAAuthentication、HostbasedAuthentication において、~/.rhosts ファイルと ~/.shosts ファイルを使用しない。 IgnoreRhosts を yes にしても /etc/hosts.equiv ファイルまたは /etc/shosts.equiv ファイルは使用される。 デフォルト値は yes。
IgnoreRhosts yes
RhostsRSAAuthentication [ssh v1]
/etc/ssh_known_hostsファイルまたは~/.ssh/known_hostsファイル(IgnoreUserKnownHostsがnoのとき)によるRSA 認証が成功しているとき、~/.rhosts ファイルまたは ~/.shosts ファイル(IgnoreRhostsがnoのとき)や /etc/hosts.equiv ファイルまたは /etc/shosts.equiv ファイルによる認証を許可するか。 デフォルト値は no。
RhostsRSAAuthentication no
HostbasedAuthentication [ssh v2]
/etc/ssh_known_hostsファイルまたは~/.ssh/known_hostsファイル(IgnoreUserKnownHostsがnoのとき)による公開鍵認証が成功しているとき、~/.rhosts ファイルまたは ~/.shosts ファイル(IgnoreRhostsがnoのとき)や /etc/hosts.equiv ファイルまたは /etc/shosts.equiv ファイルによる認証を許可するか。 デフォルト値は no。
HostbasedAuthentication no
IgnoreUserKnownHosts
sshd がユーザの ~/.ssh/known_hosts ファイル(ユーザごとのホスト鍵リスト)を無視するか。 デフォルト値は no。
IgnoreUserKnownHosts no
PasswordAuthentication
パスワード認証を許可するか設定する。 デフォルト値は yes。
PasswordAuthentication yes
PermitEmptyPasswords
空のパスワードを許可するか設定する。 デフォルト値は no。
PermitEmptyPasswords no
ChallengeResponseAuthentication
チャレンジレスポンス認証を許可するか設定する。 デフォルト値は yes。
ChallengeResponseAuthentication yes
UsePrivilegeSeparation
特権分離を使用するか設定する。 特権分離を使用すると、子プロセスは非 root ユーザ(デフォルトは sshd ユーザ)権限で動作する。 デフォルト値は yes。
UsePrivilegeSeparation yes