Я пытаюсь SSH в Debian из Ubuntu. У меня уже есть ключ RSA; это тот самый ключ, который я использую, получил мой Git.SSH Разрешение отклонено (publickey)
Я скопировал ключ из Ubuntu в Debian с помощью:
ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]
Тогда я изменил sshd_config
на Debian включать в себя следующее:
RSAAuthentication да
PubkeyAuthentication да
PasswordAuthentication no
И я перезапустил службу SSH. Теперь я пытаюсь SSH в Ubuntu с помощью
ssh -v [email protected]
, но я получаю следующее:
OpenSSH_6.6.1, OpenSSL 1.0.1f 6 Jan 2014
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to 10.0.1.64 [10.0.1.64] port 22.
debug1: Connection established.
debug1: identity file /home/koushatalebian/.ssh/id_rsa.pub type 1
debug1: identity file /home/koushatalebian/.ssh/id_rsa.pub-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.6.1p1 Ubuntu-8
debug1: Remote protocol version 2.0, remote software version OpenSSH_6.0p1 Debian-4+deb7u2
debug1: match: OpenSSH_6.0p1 Debian-4+deb7u2 pat OpenSSH* compat 0x04000000
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: sending SSH2_MSG_KEX_ECDH_INIT
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug1: Server host key: ECDSA e2:af:83:f8:df:e2:15:db:77:30:e1:6b:e7:dc:77:99
debug1: Host '10.0.1.64' is known and matches the ECDSA host key.
debug1: Found key in /home/koushatalebian/.ssh/known_hosts:10
debug1: ssh_ecdsa_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
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /home/koushatalebian/.ssh/id_rsa.pub
debug1: Authentications that can continue: publickey
debug1: No more authentication methods to try.
Permission denied (publickey).
Я в основном хотят, чтобы заставить SSH происходить только посредством аутентификации ОткрытыйКлюч.
Я прочитал все другие сообщения, связанные с этой темой, и никто из них не работал для меня. Вот почему я создал это как отдельный пост.
EDIT
Изменение StrictModes
от yes
к no
в sshd_config
исправили проблему. Это безопасно?
EDIT 2 Это журнал для SSH на сервере:
May 5 18:23:55 lemaker sshd[2591]: Connection from 10.0.1.37 port 42748
May 5 18:23:55 lemaker sshd[2591]: debug1: PAM: setting PAM_RHOST to "10.0.1.37"
May 5 18:23:55 lemaker sshd[2591]: Failed publickey for root from 10.0.1.37 port 42748 ssh2
May 5 18:23:55 lemaker sshd[2591]: Connection closed by 10.0.1.37 [preauth]
Вы пытаетесь пройти аутентификацию с помощью ** открытого ключа **. Вы должны использовать свой ** закрытый ключ ** - обычно тот, у которого нет расширения. –
Что это за настройка? «PermitRootLogin yes» – Hankster
Отключение «StrictModes» - это, вероятно, плохая идея, так как это означает, что у вас есть ключевой файл, который, по мнению ssh, недостаточно защищен разрешениями, которым нужно доверять. В любом случае вы можете доверять ему, но вы делаете это на свой страх и риск.Вероятно, лучше найти файлы, которые ему не нравятся, и установить права на них. –