SSH Keyboard-Interactive Authentication

有些 SSH clients (例如: SecureCRT)允許使用者「儲存」密碼,這對系統安全是個大忌,一旦 client 遭受入侵,server 也會暴露在危險之中。

建議直接在伺服器端取消 SSH 的 password authentication 功能,改用 keyboard interactive 的方式認證,通常這樣的話,client 就無法儲存密碼了:

1. OpenSSH – /etc/ssh/sshd_config

PasswordAuthentication no
ChallengeResponseAuthentication yes

2. SSH2 (Tectia) – /etc/ssh2/sshd2_config

AllowedAuthentications          publickey,keyboard-interactive
AuthKbdInt.Optional             pam,password
AuthKbdInt.Required             password

修改好上述 sshd 的設定檔後,送個 HUP 給 sshd 即可(注意不要不小心把目前用的 session 也砍了,不然改錯的話只好到 console 前面去救了)

# ps ax | grep sbin/sshd | grep Ss
 9767 ?        Ss     0:00 /usr/sbin/sshd
# kill -HUP 9767

然後就可以請大家改用 keyboard-interactive authentication 了:

SSH keyboard-interactive authentication

歡迎留下您的意見