Назад | Перейти на главную страницу

Вход с открытым / закрытым ключом SSH

Я пытаюсь заставить ssh работать с ключами pp. Однако после того, как я выполнил несколько инструкций, у меня все еще есть проблемы с входом в систему. Сервер - opensuse 12.1, клиент - Mac. Это подробный вывод:

 debug1: Reading configuration data /etc/ssh_config
 debug1: Applying options for *
 debug1: Connecting to 192.168.1.139 [192.168.1.139] port 22.
 debug1: Connection established.
 debug1: identity file /Users/me/.ssh/id_rsa type 1
 debug1: identity file /Users/me/.ssh/id_rsa-cert type -1
 debug1: Remote protocol version 2.0, remote software version OpenSSH_5.8
 debug1: match: OpenSSH_5.8 pat OpenSSH*
 debug1: Enabling compatibility mode for protocol 2.0
 debug1: Local version string SSH-2.0-OpenSSH_5.6
 debug1: SSH2_MSG_KEXINIT sent
 debug1: SSH2_MSG_KEXINIT received
 debug1: kex: server->client aes128-ctr hmac-md5 none
 debug1: kex: client->server aes128-ctr hmac-md5 none
 debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
 debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
 debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
 debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
 debug1: Host '192.168.1.139' is known and matches the RSA host key.
 debug1: Found key in /Users/me/.ssh/known_hosts:7
 debug1: ssh_rsa_verify: signature correct
 debug1: SSH2_MSG_NEWKEYS sent
 debug1: expecting SSH2_MSG_NEWKEYS
 debug1: SSH2_MSG_NEWKEYS received
 debug1: Roaming not allowed by server
 debug1: SSH2_MSG_SERVICE_REQUEST sent
 debug1: SSH2_MSG_SERVICE_ACCEPT received
 debug1: Authentications that can continue: publickey,keyboard-interactive
 debug1: Next authentication method: publickey
 debug1: Offering RSA public key: /Users/me/.ssh/id_rsa
 debug1: Authentications that can continue: publickey,keyboard-interactive
 debug1: Next authentication method: keyboard-interactive
 Password: 

Есть идеи, где искать? Спасибо

Дальнейшую отладку со стороны клиента невозможно. Клиент предлагает ключ, но он не принимается, это, должно быть, проблема на стороне сервера. Самый быстрый способ выяснить причину, если это возможно, - запустить еще один sshd в режиме отладки, который точно скажет вам, почему ключ отклонен. На стороне сервера:

/usr/sbin/sshd -d -p 2222

который запустит sshd в режиме отладки на порту 2222 (другой порт, чтобы мы не мешали серверу, работающему на порту 22).

Затем на стороне клиента:

ssh -p 2222 user@remotehost

Вы должны увидеть причину отказа в вводе ключа в терминале, в котором вы запускаете sshd.

Часто проблема заключается в слишком слабых разрешениях. Файл authorized_keys и вся родословная каталога не должны быть доступны для записи никому, кроме пользователя. Поэтому, если файл authorized_keys находится в /home/username/.ssh/authorized_keys, то, например, /, / home, / home / username все НЕ должны быть доступны для записи для группы.

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

Вы сначала подключаетесь к VPN-туннелю, а затем к серверу? Если это так, то вы также получите ту же ошибку, потому что вы больше не подключаетесь с вашего компьютера к защищенным ресурсам.