Помилка підключення SSH: ssh_exchange_identification: read: з’єднання скидається за допомогою однорангового


25

Коли я намагався підключитися до сервера через 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 на сервері, а потім перезапустив сервер / клієнт, але проблеми не вирішені.


Ви можете дозволити ssh-з'єднання через інтерфейс брандмауера (деякі провайдери дозволяють це) або Якщо у вас є якийсь альтернативний метод для входу (напр., Digitalocean надає кнопку консолі), ви можете запустити нижче команди sudo ufw дозволити ssh sudo ufw дозволити 22
BSB

Відповіді:


26

Це може бути результатом ряду речей.

Кілька речей, які ви можете швидко спробувати, такі:

  • Перегляньте в /etc/hosts.deny будь-який запис, як-от 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
    

у файлі /etc/hosts.deny та /etc/hosts.allow, всі рядки коментуються.
Шентіл Г

1
Будь ласка, додайте sshd: ALLдо hosts.deny, щоб перевірити, чи допомагає це.
vagarwal

2

Наступний рядок налагодження повинен виглядати так:

debug1: Remote protocol version 2.0, remote software version OpenSSH_5.3p1 Debian-3ubuntu7

Ви підтвердили на StackOverflow, що ви використовуєте NATING / переадресацію портів із зовнішньої IP-адреси. Ви також перевірили, що можете перенести з локального вікна на себе. Оскільки локальний sshing працює на порт 443, то вам потрібно перевірити, чи працює карта зіставлення портів.

Спробуйте:

  1. SSH з іншого поля в тій самій підмережі
  2. Запустіть iptables -Lі переконайтеся, що порт 443 відкритий або Вхідний, а вихідний - встановлено на ACCEPT
  3. Запустіть, tcpdump -A -s 0 port 443а потім спробуйте sshing до зовнішньої IP-адреси. Ви повинні побачити, що дані надходять з адресою джерела маршрутизатора

2

FWIW, я працюю на Ubuntu 14.04 на AWS. Проблема була вирішена SSHing через їх веб-клієнт Java та запущений sudo service apache2 start. Я просто хотів, щоб мій веб-сайт був резервний, але він також фіксував доступ до SSH. Не знаю чому, але я не скаржусь.


тут же питання. мій сеанс не реагував без жодної причини, і я не зміг відновити зв'язок через шпаклівку. Використовуючи веб-клієнт зробив будь-яку магію, щоб дозволити моєму зв’язку через шпаклівку знову працювати.
AndrewK

Дякую, я не знаю як, але це дійсно допомогло. *** aws
Siarhey Uchukhlebau

1

Перевірте разрешено.hosts на сервері, до якого ви намагаєтеся підключитися, а також будь-які правила iptables, на яких він працює.


1

Питання вирішено.
Проблема полягає в балансирах навантаження, які ми маємо в нашій мережі. Випуск вирішується при перезапуску балансирів навантаження.


1

Я зіткнувся з подібною проблемою сьогодні, оскільки раптом SSH доступ до VM був відмовлений з тим же повідомленням. ssh -v (у клієнта) та sshd -d (на сервері) не дуже допомогли. Проблема в моєму випадку почалася через зміну налаштувань брандмауера / iptable, які я зробив для демонстрації використання стека LAMP.

Я використовував system-config-firewall-tui, щоб увімкнути брандмауер і вибрав лише httpd звідти, який заблокував усі інші сервіси, крім httpd.

Тож як рішення цього або додайте дозволи до sshd by

  • оновлення параметрів iptable conf АБО
  • Вибір sshd з system-config-firewall-tu АБО
  • Відключення брандмауера АБО
  • Зупиніть службу iptable (rhel6, також видаліть її з chkconfig) службу iptables зупиніть

ssh працює прекрасно зараз !!!


0

Для мене я дозволяю дозволити з'єднання sshd у файлі / etc / hosts.

vi /etc/hosts.allow
and add 

sshd: ALL

0

Як я вирішив проблему, я перейшов до хост-машини і провів кілька команд

sudo mkdir / var / run / sshd

sudo chmod 755 -R / var / run / sshd

sudo service ssh перезапуск

Після цього я підключився до машини.


-3

Перша чистка openssh- * (openssh-сервер і openssh-клієнт)

apt-get --purge remove openssh-*

видалення /home/username/.ssh каталогу

rm -rf /home/username/.ssh 

потім встановіть ваш openssh-сервер і openssh-клієнт

apt-get install openssh-server openssh-client

3
Ні, навіть близько, відповідь ОП говорить, у чому проблема. Ви відповідаєте специфічно для дистрибутивів, які використовують apt, OP використовував RHEL. Видалення та перевстановлення пакету майже ніколи не є рішенням.
user9517 підтримує GoFundMonica

Ви все це робили на локальному або віддаленому сервері?
Джонатан
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.