Я пытаюсь установить ssh-соединение с моего ноутбука (macbookpro) на мой iphone. при попытке скопировать ключи с ноутбука на iphone получаю:

$ ssh-copy-id -i ~/.ssh/id_rsa.pub mobile@iphone.local
/usr/local/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed

/usr/local/bin/ssh-copy-id: ERROR: ssh_exchange_identification: Connection closed by remote host

При попытке ssh только с парольной аутентификацией получается в основном то же самое:

$ ssh -vvv mobile@iphone.local
OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug1: /etc/ssh_config line 102: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to iphone.local [192.168.1.53] port 22.
debug1: Connection established.
debug3: Incorrect RSA1 identifier
debug3: Could not load "/Users/Andryuwka/.ssh/id_rsa" as a RSA1 public key
debug1: identity file /Users/Andryuwka/.ssh/id_rsa type 1
debug1: identity file /Users/Andryuwka/.ssh/id_rsa-cert type -1
debug1: identity file /Users/Andryuwka/.ssh/id_dsa type -1
debug1: identity file /Users/Andryuwka/.ssh/id_dsa-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.2
ssh_exchange_identification: Connection closed by remote host

сканирование порта 22 моего iphone дает это:

$ sudo nmap -sS -sV -p 22 iphone.local
Password:

Starting Nmap 6.47 ( http://nmap.org ) at 2015-08-09 14:43 PDT
Nmap scan report for iphone.local (192.168.1.53)
Host is up (0.096s latency).
PORT   STATE SERVICE    VERSION
22/tcp open  tcpwrapped
MAC Address: D8:BB:2C:83:F8:84 (Unknown)

Service detection performed. Please report any incorrect results at http://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 0.45 seconds

"tcpwrapped" состояние порта вместо версии OpenSSH действительно странно и сбивает с толку ... Но я считаю, что это показывает, что что-то не так с конфигурацией сервера.

Ключи в порядке, потому что я могу использовать их для успешного подключения к другому хосту. Попытка сгенерировать другие ключи - не внесла никаких изменений.

iphone /etc/ssh/sshd_config:

SyslogFacility AUTHPRIV
#LogLevel INFO

PermitRootLogin yes
#PermitRootLogin without-password
#StrictModes yes
#MaxAuthTries 6
#MaxSessions 10

#RSAAuthentication yes
#PubkeyAuthentication yes

# The default is to check both .ssh/authorized_keys and .ssh/authorized_keys2
# but this is overridden so installations will only check .ssh/authorized_keys
AuthorizedKeysFile  .ssh/authorized_keys

# Kerberos options
KerberosAuthentication yes
KerberosOrLocalPasswd yes
KerberosTicketCleanup yes

# GSSAPI options
GSSAPIAuthentication yes
GSSAPICleanupCredentials yes
GSSAPIStrictAcceptorCheck yes
GSSAPIKeyExchange no

UsePrivilegeSeparation sandbox      # Default for new installations.

AcceptEnv LANG LC_*

Subsystem   sftp    /usr/libexec/sftp-server

В чем проблема? Кто-нибудь может указать мне правильное направление?

Версия OpenSSH на iphone:

$ ssh -V
OpenSSH 6.7p1, OpenSSL 0.9.8zg 11 Jun 2015

Я считаю, что я запустил процесс правильно с

# launchctl load /Library/LaunchDaemons/com.openssh.sshd.plist

Я уже пытался удалить известные_хосты и все /etc/ssh/ssh_host_ на iphone ... Кончились идеи.((

ОБНОВИТЬ

Пробовал это:

$ telnet iphone.local 22
Trying 192.168.1.53...
Connected to iphone.local.
Escape character is '^]'.
Connection closed by foreign host.

==> Нет баннера sshd.

РЕДАКТИРОВАТЬ

Я проверил, работает ли сервер на моем iphone:

ps aux | grep [s]shd

Я должен был получить такую строку:

root 749 0.0 0.0 55164 5428 ? Ss Aug09 0:00 /usr/sbin/sshd -D

но я не Похоже, это была моя проблема. Теперь мне нужно выяснить, как запустить процесс на iOS.

1 ответ1

0

Хорошо, мы идем вниз:

Ваш вывод попытки соединения ssh упоминает эту ошибку:

debug3: Incorrect RSA1 identifier
debug3: Could not load "/Users/Andryuwka/.ssh/id_rsa" as a RSA1 public key
  1. Этот файл существует?
  2. Можно ли использовать эту личность для входа на другие хосты (= не поврежден)
  3. Если вы переместите эту идентификацию и сгенерируете новую с помощью ssh-keygen, вы все еще получаете ту же ошибку?

Что касается вывода nmap:

Знаете ли вы о https://secwiki.org/w/FAQ_tcpwrapped : «В частности, это означает, что полное рукопожатие TCP было завершено, но удаленный узел закрыл соединение без получения каких-либо данных».

==> Получаете ли вы баннер SSH-сервера, когда вы:

telnet iphone.local 22

? Должно выглядеть примерно так:

# telnet localhost 22
Trying ::1...
Connected to localhost.
Escape character is '^]'.
SSH-2.0-OpenSSH_<SomeVersionNumer>

==> Можно ли подключиться с помощью SSH-клиента на iphone к SSH-серверу на iphone?

==> Если нет, можете ли вы подтвердить, что процесс работает на iphone? например:

ps aux | grep [s]shd

Вы должны получить строку, такую как:

root 749 0.0 0.0 55164 5428 ? Ss Aug09 0:00 /usr/sbin/sshd -D

Если нет, то ваша проблема: sshd не работает

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .