У меня возникли проблемы с доступом по ssh к серверу, который я недавно настроил с 16.04, но только с определенного компьютера (моего ноутбука). Когда я запускаю ssh -vvv -p sshPort user@host
, я получаю такой вывод:
OpenSSH_7.2p2 Ubuntu-4, OpenSSL 1.0.2g-fips 1 Mar 2016
debug1: Reading configuration data /home/user/.ssh/config
debug1: /home/user/.ssh/config line 1: Applying options for *
debug1: /home/user/.ssh/config line 35: Applying options for host
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug2: resolving "host" port xxxx
debug2: ssh_connect_direct: needpriv 0
debug1: Connecting to host [xxx.xxx.xxx.xxx] port xxxx.
debug1: Connection established.
debug1: identity file /home/user/.ssh/id_rsa type 1
debug1: key_load_public: No such file or directory
debug1: identity file /home/user/.ssh/id_rsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/user/.ssh/id_dsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/user/.ssh/id_dsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/user/.ssh/id_ecdsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/user/.ssh/id_ecdsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/user/.ssh/id_ed25519 type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/user/.ssh/id_ed25519-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_7.2p2 Ubuntu-4
ssh_exchange_identification: Connection closed by remote host
На стороне сервера /var/log/auth.log
есть только запись:
Apr 28 18:50:49 host sshd[2618]: Did not receive identification string from yyy.yyy.yyy.yyy
Пока что я не смог понять, почему это происходит, и я открыт для предложений. Несколько вещей, которые я исключил:
Не проблемы с переадресацией портов/конфигурацией брандмауэра: Я могу войти на этот хост с удаленного VPS, поэтому доступ из WAN работает нормально. Я также могу войти по ssh с другого хоста в той же LAN.
Не проблема с fail2ban/denyhosts: Это новая установка, в которой еще не настроено программное обеспечение для автобана. /etc/hosts.deny
и /etc/hosts.allow
обе пустые. Конфигурация SSH используется по умолчанию и поставляется с 16.04.
Не SSH-агент: Я могу подключиться по SSH к другим хостам со своего ноутбука с помощью переадресации агента, а оттуда подключиться по SSH к хосту, с которым у меня возникли проблемы.
Недавно я установил kvm и bridge-utils на ноутбук. Я видел некоторые упоминания о том, что bridge-utils может быть проблемой, но я сомневаюсь в этом, так как ssh отлично работает с другими хостами.
Любая помощь будет высоко оценена!
решение1
Я решил эту проблему. Хотя я все еще не уверен в основной причине, похоже, что изменение порта, переадресованного моим маршрутизатором, решило проблему. Возможно, порт, на котором я находился, уже использовался другим правилом переадресации или был зарезервирован для использования маршрутизатором.