SSHがターミナル以外からつながらない!?
結論
OpenSSH Developerは8月30日(UTC)、OpenSSHでコミットした変更点について発表した。
発表によると、OpenSSHでは、今後のリリースではデフォルトでRSA/SHA1(ssh-rsaシグネチャ)を無効にする。RSA/SHA-256/512は引き続き利用可能となる。直近5年間のOpenSSH Serverでは、RSA/SHA1ではなくRSA/SHA-256/512が透過的に選択されている。
ただし、アップグレードができないデバイスでは、明示的にRSA/SHA1のサポートを有効化する必要がある。この場合「ssh_config」もしくは「sshd_config」に「PubkeyAcceptedAlgorithms=+ssh-rsa」と書き加える必要がある。
起きてたエラー
tail /var/log/auth.log
Jul 15 04:12:42 berta sshd[127217]: Received disconnect from 61.177.173.36 port 36486:11: [preauth]
Jul 15 04:12:42 berta sshd[127217]: Disconnected from authenticating user root 61.177.173.36 port 36486 [preauth]
Jul 15 04:13:37 berta sshd[128307]: userauth_pubkey: key type ssh-rsa not in PubkeyAcceptedAlgorithms [preauth]
Jul 15 04:13:37 berta sshd[128307]: Received disconnect from 122.209.195.218 port 62727:11: SSH2\\216\\251\\223\\256\\203\\215\\203O\\203C\\203\\223\\203G\\203\\211\\201[: \\203\\206\\201[\\203U\\201[\\224F\\217\\330\\202\\252\\216\\270\\224s\\202\\265\\202\\334\\202\\265\\202\\275. [preauth]
Jul 15 04:13:37 berta sshd[128307]: Disconnected from authenticating user ubuntu 122.209.195.218 port 62727 [preauth]
この中で注目すべきはここ!userauth_pubkey: key type ssh-rsa not in PubkeyAcceptedAlgorithms [preauth]
影響受けてたもの
- teraterm
- WinScp
- A5mk2
linux上からだけログインできてて謎でした。Windowsのターミナルからだとできた可能性
対処
sudo cp -p /etc/ssh/sshd_config /etc/ssh/sshd_config.org
sudo cp -p /etc/ssh/sshd_config /etc/ssh/sshd_config_$(date +%Y%m%d)
sudo sed -i '1s/^/PubkeyAcceptedAlgorithms=+ssh-rsa\n/' /etc/ssh/sshd_config
sudo /etc/init.d/ssh restart