Подтвердить что ты не робот

Ssh_exchange_identification: соединение, закрытое удаленным хостом в Git bash

Я работаю в win7 и настраиваю git сервер с sshd. I git --bare init myapp.git и клон ssh://[email protected]/home/git/myapp.git в Cywgin. Но мне нужно config git из Cygwin, я хочу git клонировать в Git Bash. Я запустил git clone ssh://[email protected]/home/git/myapp.git и получил следующее сообщение

ssh_exchange_identification: Connection closed by remote host

тогда я запускаю ssh -vvv [email protected] в Git Bash и получаю сообщение

debug2: ssh_connect: needpriv 0
debug1: Connecting to localhost [127.0.0.1] port 22.
debug1: Connection established.
debug1: identity file /c/Users/MoreFreeze/.ssh/identity type -1
debug3: Not a RSA1 key file /c/Users/MoreFreeze/.ssh/id_rsa.
debug2: key_type_from_name: unknown key type '-----BEGIN'
debug3: key_read: missing keytype
debug3: key_read: missing whitespace 
// above it repeats 24 times
debug2: key_type_from_name: unknown key type '-----END'
debug3: key_read: missing keytype
debug1: identity file /c/Users/MoreFreeze/.ssh/id_rsa type 1
debug1: identity file /c/Users/MoreFreeze/.ssh/id_dsa type -1
ssh_exchange_identification: Connection closed by remote host

Кажется, у моих личных ключей неправильный формат? И я обнаружил, что есть только 25 строк в закрытых ключах без BEGIN и END. Я смущен, почему он сказал НЕ ключ RSA1, я полностью гарантирую, что это ключ RSA 2.

Любые советы приветствуются. Кстати, я прочитал первые 3 страницы в google об этой проблеме.

4b9b3361

Ответ 1

У меня была эта проблема сегодня, и я понимаю, что я подключен к двум различным сетям (LAN и WLAN), я решил, что просто отсоединяю кабель от моего Ethernet-адаптера. Я полагаю, что проблема вызвана тем, что ключ ssh привязан к MAC-адресу моего беспроводного адаптера. Надеюсь, это поможет вам.

Ответ 2

Я просто столкнулся с этим сегодня, и это произошло потому, что сервер, к которому я пытался подключиться, был перегружен обработкой. Таким образом, возможно, что на сервере мало памяти или процессор голоден.

Ответ 3

Просто введите на стороне сервера:

echo 'SSHD: ALL' >> /etc/hosts.allow

Это разобрано для меня.

Ответ 4

Нажмите следующую команду ssh restart в Linux

[email protected]:~/backup/NoisyNeighbour$ service ssh restart 
stop: Rejected send message, 1 matched rules; type="method_call", sender=":1.75" (uid=1417676764 pid=5933 comm="stop ssh ") interface="com.ubuntu.Upstart0_6.Job" member="Stop" error name="(unset)" requested_reply="0" destination="com.ubuntu.Upstart" (uid=0 pid=1 comm="/sbin/init")
start: Rejected send message, 1 matched rules; type="method_call", sender=":1.76" (uid=1417676764 pid=5930 comm="start ssh ") interface="com.ubuntu.Upstart0_6.Job" member="Start" error name="(unset)" requested_reply="0" destination="com.ubuntu.Upstart" (uid=0 pid=1 comm="/sbin/init")

Ответ 5

Убедитесь, что вы не подключаетесь к каким-либо VPN.

Ответ 6

Получено то же сообщение об ошибке. Отключение Wi-Fi и включение его снова работало для меня.

Ответ 7

Если имя хоста не работает, попробуйте IP-адрес.

Это происходит прямо сейчас, поэтому я должен сказать. Я пытаюсь ssh с моим именем хоста, и он не работает.

ssh [email protected]

это дает ошибку "ssh_exchange_identification: соединение закрыто удаленным хостом"

ИСПОЛЬЗУЕМЫЙ, чтобы работать на один час назад.

НО, и вот интересная часть, IP-адрес работает!

ssh [email protected]

(конечно, фактический IP-адрес отличается)

Перейдите по фигуре!

Ответ 8

После удаления/удаления rm ~/.ssh/known_hosts моя проблема была исправлена

Ответ 9

Привет, я исправляю это на одном vps-сервисе, перезагружая его, иначе вы имеете консоль от вашей службы o любой другой способ запускать команду на удаленном компьютере, единственной командой, которую вы должны запустить, является перезапуск ssh-демона и наслаждаться!!: P

/etc/init.d/ssh restart

Ответ 10

Я решил это после изменения порта ssh и переменной MaxStartups в файле /etc/ssh/sshd _config, чтобы

port 2244
MaxStartups 100

Затем перезапустите службу

service sshd restart

Если все еще не работает, перезагрузите систему.

Ответ 11

Мы перенесли наш экземпляр/сервер хоста git сегодня утром в новый центр обработки данных и при подключении к ним: VPN (из удаленного/домашнего) или в офисную сеть, я получил ту же ошибку и не смог подключиться для клонирования любых git репо.

Cloning into 'some_repo_in_git_dev'...
ssh_exchange_identification: Connection closed by remote host
fatal: Could not read from remote repository.

Это поможет, если вы подключаетесь к некоторым или всем серверам с помощью хост-сервера перехода.

Ранее в моем файле ~/.ssh/config моя настройка для подключения:

Host * !ssh.somejumphost.my.company.com
     ProxyCommand ssh -q -W %h:%p ssh.somejumphost.my.company.com

Это означает, что для любого соединения на основе SSH он будет подключаться к любому серверу * через указанный сервер хоста перехода кроме/игнорируя "ssh.somejumphost. my.company.com" (так как мы не хотим подключаться к хосту перехода с помощью хост-сервера перехода.

Чтобы исправить проблему, все, что я сделал, изменил конфигурацию, чтобы игнорировать сервер git:

Host * !ssh.somejumphost.my.company.com !mycompany-git.server.com !OrMyCompany-some-other-git-instance.server.com
     ProxyCommand ssh -q -W %h:%p ssh.somejumphost.my.company.com

Итак, теперь для подключения к mycompany- git.server.com при выполнении git clone (git SSH url), я говорю SSH не использовать хост-переход для этих двух дополнительных git экземпляры/сервера.

Ответ 12

Подобно Аруну Сангалю, проблема заключалась в записи в .ssh/config.

Host my.sshhost.com
  ProxyCommand ssh -q -W %h:%p myremotemachine.my.company.com

Удаленная машина была добавлена, чтобы избежать использования ssh для VPN-подключений, и работала хорошо. Но на время отпуска я выключил myremotemachine и столкнулся с описанной проблемой.

Ответ 13

Получается та же ошибка при подключении к GitHub с ssh при переходе с одного рабочего места на другое. согласно моей ситуации, кажется, что dns-серверы разных сетей могут получать различные IP-адреса github, а файл known_hosts не идентифицирует его, когда происходят изменения. Так что смените dns или отключите исходную сеть.

Ответ 14

Вы можете получить "ssh_exchange_identification: соединение, закрытое удаленным хостом", если ваша служба sshd не работает!

Если у вас есть доступ к серверу, у вас есть служба sshd, работающая с:

  ps aux | grep ssh

и проверьте, что он прослушивает порт 22:

 netstat -plant | grep :22

подробнее здесь

Ответ 15

Для меня это было вызвано ограничением количества одновременных сессий ssh. Я добавил два параметра ниже в /etc/ssh/sshd_config, и тогда все заработало.

echo 'MaxSessions 2000' >> /etc/ssh/sshd_config
echo 'MaxStartups 2000' >> /etc/ssh/sshd_config
service ssh restart

Ответ 16

Простая перезагрузка сервера решила проблему для меня. Попробуйте полную перезагрузку, если после мягкой перезагрузки не работает.

Ответ 17

Пожалуйста, используйте порт 7999 и попробуйте. это будет работать

Ответ 18

Я решил это таким образом.

ssh -vvv <username>@github.com, чтобы увидеть IP GitHub.

Затем открыл браузер и открыл github через IP, чтобы обнаружить, что это проблема с брандмауэром.

Ответ 19

Я испытал это сегодня, и я просто делаю:

[email protected] MINGW64 ~/development/workspace/test (develop)
$ git status
Refresh index: 100% (1204/1204), done.
On branch develop
Your branch is up to date with 'origin/develop'.

nothing to commit, working tree clean

[email protected] MINGW64 ~/development/workspace/test (develop)
$ git fetch

Затем все снова заработало.

Ответ 20

Для меня проблема заключалась в том, что в /etc/ssh/ssh_config был установлен прокси-сервер, и он был недоступен, решил проблему путем внесения в белый список удаленного IP-адреса git и удаления строки прокси.

Надеюсь, это кому-нибудь поможет.