Я подключался к удаленному серверу через мой Mac уже около месяца. Хотя недавно я попытался подключиться с помощью ssh dylan @ MY_IP и получил это сообщение.
ssh_exchange_identification: read: Connection reset by peer
Я также получил некоторую диагностическую информацию ...
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug1: /etc/ssh_config line 53: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to {MY IP{ [MY IP] port 22.
debug1: Connection established.
debug1: identity file /Users/watson/.ssh/id_rsa type -1
debug1: identity file /Users/watson/.ssh/id_rsa-cert type -1
debug3: Incorrect RSA1 identifier
debug3: Could not load "/Users/watson/.ssh/id_dsa" as a RSA1 public key
debug1: identity file /Users/watson/.ssh/id_dsa type 2
debug1: identity file /Users/watson/.ssh/id_dsa-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.2
После некоторого исследования я попробовал следующее ...
- Перезапустил мой роутер
- Очистил мой файл "known_hosts"
- Удалил мой файл "known_hosts"
- Выпущен и обновлен мой DHCP
- Я также пытался с другого устройства (Windows), используя Putty с ошибкой
Обратите внимание, что я не внес никаких изменений в сервер, чтобы запретить это общение.
Кроме того, я не уверен, что это вызовет проблемы, но я подключился к нему по его доменному имени, а также по IP.
Кроме того, мне удалось успешно подключиться с другого IP-адреса.
Я знаю, что это большая проблема со многими ресурсами, но многие решения не сработали, и я действительно не видел ни одного типа разрешения для кого-либо.
Обновить
Я принудительно установил протокол 1. Вместо «Сброс соединения по пиру» я теперь получаю «Соединение закрыто удаленным хостом». Запуск с отладочной информацией показал:
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug1: /etc/ssh_config line 53: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to MY_IP [MY_IP] port 22.
debug1: Connection established.
debug1: identity file /Users/watson/.ssh/identity type -1
debug1: identity file /Users/watson/.ssh/identity-cert type -1
ssh_exchange_identification: Connection closed by remote host
/Users/watson/.ssh/id_dsa
? Попробуйте сделать резервную копию файла и удалить его.ssh -1 ...
Ответы:
Так я решил ошибку «ssh_exchange_identification: Соединение закрыто удаленным хостом» при подключении к SSH-серверу.
Я получил эту ошибку при попытке подключиться к машине со встроенным Linux, после распаковки пакета в root. Многие библиотечные файлы были заменены, в том числе libssl.
Пытаюсь подключиться:
Похоже, что поиск в Google только предлагал проверить hosts.deny и hosts.allow, но на моей целевой машине таких файлов не было.
После перезагрузки (согласно предложению Картика) sshd не работал. Я попытался вручную запустить sshd для цели:
Я заменил /usr/lib/libssl.a на оригинальную версию и запустил sshd, и все вернулось к норме. В моем случае проблема была вызвана неправильной версией пакета, который я первоначально распаковал в root.
источник
Я получал ту же ошибку (но с любой машины, включая проблемную машину через
ssh localhost
).Это началось, когда я перенес профиль пользователя; т.е. после копирования файлов с правами root, затем сделал такие команды, как
chown -R username /Users/username/Destop
в любом случае, совершенно не уверен, почему владелец / var / empty был изменен на имя пользователя, но
ssh
определенно должен/var/empty
принадлежать пользователю root (иначе вы получитеssh_exchange_identification: read: Connection reset by peer
):источник
/var/empty
исправила проблему для меня.Это не проблема с вашей локальной машиной, а проблема на стороне сервера. Может быть несколько факторов, вызывающих эту проблему:
В прошлом, когда у меня были эти проблемы, я делал одну из двух вещей в следующем порядке:
Чаще всего 1 решает проблему, но мне приходилось делать 2 в некоторых случаях ... Я не смог понять, почему это так, только то, что это сработало. Возможно, это как-то связано с тем, как представлен ключ, или, возможно, он каким-то образом поврежден - я не уверен. Но я точно знаю, что ошибка полностью связана с сервером, и то, как происходит рукопожатие, когда устанавливается соединение SSH.
источник
У меня был настроен SSH с Cygwin, и в моем случае именно брандмауэр Windows вызвал именно эту ошибку, поэтому убедитесь, что разрешено подключение к порту 22.
источник
Мне удалось решить эту проблему самостоятельно очень легко.
В обычной OS X вы можете решить эту проблему, просто переключив «Удаленный вход» в «Системные настройки / Общий доступ».
Однако, если это безголовый сервер (как в моем случае), вы можете использовать приложение OSX Server, чтобы перейти к (имя вашего сервера) / «Настройки» и переключить «Безопасные соединения оболочки снова и снова»
источник
Если вы используете закрытый ключ или ключ безопасности для входа на сервер, вам нужно изменить разрешение для файла ключа на 660, используя команду
sudo chmod 660 File_Name
источник
ssh
неработоспособности, неясно, как эта проблема может случайно вызвать работающую систему. (2) Этот ответ, каким бы он ни был, был бы более полезным, если бы вы определили файл, о котором вы говорите, или предоставили инструкции, позволяющие пользователю его идентифицировать. (3) Я предполагаю, что вы говорите о файле в (под) домашнем каталоге пользователя. Если это так,sudo
не должно быть необходимости.