Когда я пытался подключиться к серверу через SSH, я получаю следующую ошибку:
[root@oneeighty ~]# ssh -vvv -p 443 root@xxx.xxx.xxx
OpenSSH_4.3p2, OpenSSL 0.9.8e-fips-rhel5 01 Jul 2008
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to xxx.xxx.xxx [IP] port 443.
debug1: Connection established.
debug1: permanently_set_uid: 0/0
debug1: identity file /root/.ssh/identity type -1
debug1: identity file /root/.ssh/id_rsa type -1
debug1: identity file /root/.ssh/id_dsa type -1
debug1: loaded 3 keys
ssh_exchange_identification: read: Connection reset by peer
Я проверил конфигурацию SSH на сервере и клиенте, и проблем нет.
Перезапустил службу SSH на сервере, а затем перезапустил сервер / клиент, но проблемы не решены.
Это может быть результатом ряда причин.
Вот несколько вещей, которые вы можете быстро попробовать:
sshd: ALL
Возможно, добавить sshd: ALL
к /etc/hosts.allow
Возможно, ключи HostKeys вашего SSHD повреждены. Они находятся в каталоге / etc / ssh /. Вы можете удалить их и перезапустить sshd, и он сгенерирует их заново. В случае, если он выдает ошибку, используйте следующие команды
$ ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
$ ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key
$ ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key
$ /etc/init.d/sshd start
Следующая строка в отладке должна выглядеть так:
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.3p1 Debian-3ubuntu7
Вы подтвердили в StackOverflow, что используете NAT / перенаправление портов с внешнего IP-адреса. Вы также подтвердили, что можете использовать ssh из локального окна на себя. Поскольку sshing локально на порт 443 работает, вам необходимо проверить, работает ли сопоставление портов.
Пытаться:
iptables -L
и убедитесь, что порт 443 открыт или для INPUT и OUTPUT установлено значение ACCEPT.tcpdump -A -s 0 port 443
а затем попробуйте подключиться к внешнему IP-адресу. Вы должны увидеть данные с исходным адресом маршрутизатора.FWIW, я использую Ubuntu 14.04 на AWS. Проблема была устранена с помощью SSHing через их веб-клиент Java и запущена sudo service apache2 start
. Я просто хотел, чтобы мой сайт был в резерве, но он также исправил доступ по SSH. Не знаю почему, но я не жалуюсь.
Проверьте allowed.hosts на сервере, к которому вы пытаетесь подключиться, а также все правила iptables, которые он выполняет.
Проблема решена.
Проблема в балансировщиках нагрузки, которые есть в нашей сети. Проблема решена после перезапуска балансировщиков нагрузки.
Сегодня я столкнулся с подобной проблемой, так как внезапно доступ ssh к виртуальной машине был запрещен с тем же сообщением. ssh -v (на клиенте) и sshd -d (на сервере) не очень помогли. Проблема в моем случае началась из-за изменения настроек брандмауэра / iptable, которые я сделал для демонстрации использования стека LAMP.
я использовал система-конфигурация-брандмауэр-туи для включения брандмауэра и выбрал только httpd оттуда, что заблокировало все другие службы, кроме httpd.
Чтобы решить эту проблему, добавьте разрешения для sshd по
ssh теперь отлично работает !!!
Для меня я разрешил sshd-соединения в файле / etc / hosts.
vi /etc/hosts.allow
and add
sshd: ALL
Я решил проблему так: я пошел на хост-машину и выполнил несколько команд
sudo mkdir / var / run / sshd
sudo chmod 755 -R / var / run / sshd
sudo service ssh перезапуск
После этого я подключился к машине.
Первая очистка openssh- * (openssh-server и openssh-client)
apt-get --purge remove openssh-*
удаление каталога /home/username/.ssh
rm -rf /home/username/.ssh
затем установите ваш openssh-server и openssh-client
apt-get install openssh-server openssh-client