
У меня проблемы с SSH. Я не могу ни к чему подключиться; каждое подключение зависает на неопределенное время на SSH2_MSG_SERVICE_ACCEPT RECEIVED. У меня OSX 10.6.8.
Я думаю, что проблема в моей конфигурации SSH, но не могу понять, в чем дело. У меня есть оригинальный openssh, который был с OS X, установленный в /usr/bin/, и brewed-установка в /usr/local/bin/. Я использую homebrew-установку — возможно, здесь есть какой-то конфликт?
Есть идеи по решению или что может быть причиной? Вот мой ssh_config:
Host *
# ForwardAgent no
# ForwardX11 no
# RhostsRSAAuthentication no
# RSAAuthentication yes
# PasswordAuthentication yes
# HostbasedAuthentication no
# GSSAPIAuthentication no
# GSSAPIDelegateCredentials no
# GSSAPIKeyExchange no
# GSSAPITrustDNS no
# BatchMode no
# CheckHostIP yes
# AddressFamily any
# ConnectTimeout 0
# StrictHostKeyChecking ask
IdentityFile ~/.ssh/identity
IdentityFile ~/.ssh/id_rsa
IdentityFile ~/.ssh/id_dsa
Port 22
# Protocol 2,1
Cipher 3des
Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc
MACs hmac-md5,hmac-sha1,[email protected],hmac-ripemd160
# EscapeChar ~
# Tunnel no
# TunnelDevice any:any
# PermitLocalCommand no
# VisualHostKey no
решение1
Возможно, хост(ы), к которым вы подключаетесь (тот(ы), на котором(ых) работает сервер sshd
, а не тот(ы), с которого(ых) вы запускаете ssh
клиент), зависает, пытаясь (а затем из-за тайм-аута и сбоя) выполнить обратный DNS-поиск ssh
имени хоста вашего клиентского компьютера на основе его IP-адреса.
Одним из обходных путей является редактирование /etc/sshd_config.на sshd
сервере, а не на ssh
клиентской машинеустановить «UseDNS» на «no». (Из того, как вы изначально написали свой вопрос, можно было подумать, что вы отредактировали этот файл на своем клиенте, что не имело бы значения.)
Другим решением было бы заставить вашего интернет-провайдера (или любую другую организацию, которая отвечает за ваши публично маршрутизируемые IP-адреса) исправить свою запись обратного DNS для вашего IP-адреса на своих серверах имен DNS, которые являются авторитетными для записей обратного DNS для этого блока IP-адресов. Другими словами, «сделайте так, чтобы люди могли находить ваше имя хоста по вашему IP-адресу, и убедитесь, что найденное ими имя хоста сопоставляется с вашим IP-адресом».
решение2
Более подробная информация по этому вопросу здесь: https://github.com/Homebrew/homebrew-dupes/issues/242
Судя по всему, это проблема текущей версии Homebrew. (Я сам только что с этим столкнулся.)
решение3
Я думаю, что Homebrew's libssh2 портит бинарные файлы ssh от Apple. Попробуйте:
brew uninstall --force libssh2.