戻る

SSH

リモートアクセスの基本。初めて Debian インストールしたときは apt-get 使ったハズなのに、最近は OS のインストール時に一緒についてくる。。。まぁ、どうせ入れるんだけどナ。

とりあえず、こやつだけでシェルログインのほか、WinSCP とか使えば FTP ライクなファイル転送も出来るので必須。

サーバの設定

とりあえず、いろいろ変更するまえに例によってバックアップ。
# cd /etc/ssh
# cp sshd_config.conf sshd_configf.default
修正が終わったときは、その時の日付か何かで修正後の設定ファイルも例によってバックアップ。
# cp sshd_config sshd_config.`date +%Y%m%d`

イジるのは次の箇所くらい。パスワード認証の禁止と、ルートログインの禁止。
Port 22
#ListenAddress ::
#ListenAddress 0.0.0.0
Protocol 2,1
HostKey /etc/ssh/ssh_host_key
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key
#Privilege Separation is turned on for security
UsePrivilegeSeparation yes

PAMAuthenticationViaKbdInt no
KeyRegenerationInterval 3600
ServerKeyBits 768

SyslogFacility AUTH
LogLevel INFO

LoginGraceTime 600
PermitRootLogin no
StrictModes yes

RSAAuthentication yes
PubkeyAuthentication yes
#AuthorizedKeysFile     %h/.ssh/authorized_keys

RhostsAuthentication no
IgnoreRhosts yes
RhostsRSAAuthentication no
HostbasedAuthentication no
#IgnoreUserKnownHosts yes

PermitEmptyPasswords no

#ChallengeResponseAuthentication no

PasswordAuthentication no

#KerberosAuthentication no
#KerberosOrLocalPasswd yes
#AFSTokenPassing no
#KerberosTicketCleanup no

#KerberosTgtPassing yes

X11Forwarding no
X11DisplayOffset 10
PrintMotd no
#PrintLastLog no
KeepAlive yes
#UseLogin no

#MaxStartups 10:30:60
#Banner /etc/issue.net
#ReverseMappingCheck yes

Subsystem       sftp    /usr/lib/sftp-server
ちなみに "no" じゃなくて "No" と書くとエラーになるようで。
インストール時にSSH1を使用しないようにしてて、後から使いたくなった場合は、手動でSSH1を使えるようにする必要あり。

ホスト鍵の作成
# ssh-keygen -t rsa1 -f /etc/ssh/ssh_host_key -N ""
で、sshd_config に以下の記述を追加しておく。(上のリストは追加済み)
Protocol 2,1 --> "Protocol 2"となっている箇所を修正
HostKey /etc/ssh/ssh_host_key --> keygenで作成したRSA1鍵を指定