Назад | Перейти на главную страницу

Проблема с SSH-соединением - разрешено из LAN, но не через WAN

Я попытался настроить свою установку Arch Linux в качестве хоста SSH, но вот что:

Я могу ssh localhost, он не может войти через открытый ключ и запрашивает имя пользователя и пароль, но все еще может войти в систему.

Когда я пытаюсь ssh my_wan_ip это дает ssh_exchange_identification: Connection closed by remote host ошибка. Я прочитал все разделы об этой ошибке, и никто мне не помог. Кстати только что подтвердил, дает ssh: connect to host my_dyndns_hostname port 22: Connection refused с другой машины (вне моей сети у нее другой IP-адрес WAN).

у меня есть sshd: ALL в "hosts.allow", ALL:ALL в "hosts.deny". Я могу подключиться к моему собственному компьютеру через ssh, ping мой собственный компьютер, но моя установка ssh кажется проблемой, это вызывает эту досадную ошибку, когда я пытаюсь ssh из wan.

/ и т.д. / SSH / ssh_config
/ и т.д. / SSH / sshd_config

И, наконец, вот результаты отладки как для sshd, так и для ssh: (я выполнил команду ssh и после этого отправил вывод для отладки sshd):

sshd отладка
ssh отладка

Я могу отредактировать свой вопрос в соответствии с вашими потребностями. Просто запросите дополнительную информацию. Кстати, у меня нет iptables. У меня есть один кабельный модем dsl, подключенный к беспроводной точке доступа asus wl-330gE, у них обоих отключен брандмауэр. Я настроил NAT, чтобы порт 22 был направлен на компьютер, у меня возникла эта проблема.

Любая помощь приветствуется, спасибо ..

Следующие строки могут ввести в заблуждение:

debug3: Incorrect RSA1 identifier
debug3: Could not load "/home/kerem/.ssh/id_dsa" as a RSA1 public key

Другой ответ предполагает:

Так может быть причина в ключах на вашей клиентской машине? Попробуйте восстановить их.

По опыту могу сказать, что эта проблема может быть вызвана конфигурацией сервера, даже если в сообщениях создается впечатление, что это проблема сугубо клиентского ключа. Конечно, вы также хотите проверить конфигурацию своего клиента. Но вы сделали это и отметили, что ничего не изменилось. Это указывает на то, что проблема не в ключах на вашем клиентском компьютере (и, следовательно, сообщение об ошибке вводит в заблуждение).

Вам следует посмотреть конфигурацию сервера.

Например, я обнаружил, что если ваш пользователь не разрешено конфигурацией ssh ​​на сервере, клиент ssh выдает точно такое же (вводящее в заблуждение) сообщение об ошибке. Если вы не разрешаете всем пользователям, проверьте это:

sudo nano /etc/sshd_config
AllowUsers yourname@*

Также проверьте denyhosts, но в моем случае проблема заключалась в AllowUsers в sshd_config, и он выдавал такое же вводящее в заблуждение сообщение об ошибке. Исправление сервера устранило проблему без необходимости исправлять какие-либо ключи на клиенте.

Я заметил эти строки в выводе отладки вашего ssh-клиента (строки 28-29):

debug3: Incorrect RSA1 identifier
debug3: Could not load "/home/kerem/.ssh/id_dsa" as a RSA1 public key

Так может быть причина в ключах на вашей клиентской машине? Попробуйте восстановить их таким образом:

ssh-keygen -t rsa
ssh-keygen -t dsa

Я бы тоже сделал резервную копию старых. На всякий случай.