После обновления сервера Ubuntu с выпуска 13.04 до 13.10 (do-release-upgrade
) я больше не могу подключиться к серверу, SSH немедленно закрывает соединения (после отправки SSH2_MSG_KEXINIT). Он хорошо работал до обновления и перезапуска сервера.
~$ ssh -v superuser@MYHOST
OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
[...]
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.2
debug1: Remote protocol version 2.0, remote software version OpenSSH_6.2p2 Ubuntu-6ubuntu0.1
debug1: match: OpenSSH_6.2p2 Ubuntu-6ubuntu0.1 pat OpenSSH*
debug1: SSH2_MSG_KEXINIT sent
Connection closed by 123.123.123.123
Поскольку я установил версии файлов конфигурации системы, я вижу, что /etc/hosts.allow
, /etc/hosts.deny
не изменились, как и /etc/ssh/sshd_config
.
Я проверил некоторые похожие вопросы по AskUbuntu, StackExchange и SuperUser, но ни один из них не решает этот случай, поэтому я отправляю его снова.
Я проверил несколько проблем:
Исследование файла журнала /var/log/auth.log
на сервере, с которым я соединился через консоль KVM по IP, я узнал, что демон SSH игнорировал файлы секретных ключей сервера ssh_host_rsa_key
, ssh_host_dsa_key
, ssh_host_ecdsa_key
, при жалобе на их полномочия:
# tail -f /var/log/auth.log
[…]
Feb 21 13:49:18 MYHOST sshd[14646]: error: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Feb 21 13:49:18 MYHOST sshd[14646]: error: @ WARNING: UNPROTECTED PRIVATE KEY FILE! @
Feb 21 13:49:18 MYHOST sshd[14646]: error: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Feb 21 13:49:18 MYHOST sshd[14646]: error: Permissions 0644 for '/etc/ssh/ssh_host_rsa_key' are too open.
Feb 21 13:49:18 MYHOST sshd[14646]: error: It is required that your private key files are NOT accessible by others.
Feb 21 13:49:18 MYHOST sshd[14646]: error: This private key will be ignored.
Feb 21 13:49:18 MYHOST sshd[14646]: error: bad permissions: ignore key: /etc/ssh/ssh_host_rsa_key
Feb 21 13:49:18 MYHOST sshd[14646]: error: Could not load host key: /etc/ssh/ssh_host_rsa_key
[…]
Я ограничил полномочия и перезапустил демона SSH, который решил мою проблему:
# cd /etc/ssh
# chmod go-r *
# initctl restart ssh
Для меня это происходило из-за неправильных настроек MTU при использовании PPTP vpn. Это решило проблему для меня:
sudo ip link set ppp0 mtu 1400