2015-03-19 4 views
0

У меня есть два экземпляра (имена узлов - namenode и datanode1) Ubuntu 14.04 LTS, работающие на вычислительном компьютере Google. Я изо всех сил пытаюсь установить доступ ssh root между ними.Ошибка аутентификации общего/закрытого ключа SSH

я обеспечиваю некоторую информацию, так что вы можете помочь мне решить эту проблему

Я сгенерировал пару ключей (NameNode, namenode.pub) на NameNode. Открытый ключ на NameNode выглядит следующим образом

[email protected]:~# cat .ssh/namenode.pub 
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCsxYETzfP3Kv9QgRZ5AnJGu6LNTuAJj67DhUzJVad1Cis7qQ7X7GSv1S+HQESiK/H1u3duVunMB+eiV1ktF/V42r5o3HCTTckiChSuu4B+wkHCqaHFYtGJZIMncPb4CvuyhzPz+Zb 
mlV7YRGqw5lO+cQLSxCQpmBkIR1iQHRbtLIRenUTI3cXnJ22OhRea63R1/d+LspJreI8lnfmVLMr3MLUfi/U2vX3kR2EaH1QAoO1+dnRzuqsZE/ehbzT/DfBifRdoRCzhXuWgNKNxc/O0V3MwflnvPaWxxDC7FNQ7//nFg4gl8j4yV8 
XFvuCyzJTQ9nS3wN+6Dms7MfDQtl4v [email protected] 

Я добавил этот открытый ключ datanode1 Уполномоченных ключей.

[email protected]:~# cat .ssh/authorized_keys 
# namenode 
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCsxYETzfP3Kv9QgRZ5AnJGu6LNTuAJj67DhUzJVad1Cis7qQ7X7GSv1S+HQESiK/H1u3duVunMB 
+eiV1ktF/V42r5o3HCTTckiChSuu4B+wkHCqaHFYtGJZIMncPb4CvuyhzPz+ZbmlV7YRGqw5lO+cQLSxCQpmBkIR1iQHRbtLIRenUTI3cXnJ22OhR 
ea63R1/d+LspJreI8lnfmVLMr3MLUfi/U2vX3kR2EaH1QAoO1+dnRzuqsZE/ehbzT/DfBifRdoRCzhXuWgNKNxc/O0V3MwflnvPaWxxDC7FNQ7//n 
Fg4gl8j4yV8XFvuCyzJTQ9nS3wN+6Dms7MfDQtl4v [email protected] 

Я addded идентичность как этот

[email protected]:~# eval `ssh-agent -s` 
Agent pid 4030 
[email protected]:~# ssh-add .ssh/namenode 
Identity added: .ssh/namenode (.ssh/namenode) 

это подробный вывод

[email protected]:~# ssh -v -i .ssh/namenode.pub [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 datanode1 [10.240.218.126] port 22. 
debug1: Connection established. 
debug1: permanently_set_uid: 0/0 
debug1: identity file .ssh/namenode.pub type 1 
debug1: identity file .ssh/namenode.pub-cert type -1 
debug1: Enabling compatibility mode for protocol 2.0 
debug1: Local version string SSH-2.0-OpenSSH_6.6.1p1 Ubuntu-2ubuntu2 
debug1: Remote protocol version 2.0, remote software version OpenSSH_6.6.1p1 Ubuntu-2ubuntu2 
debug1: match: OpenSSH_6.6.1p1 Ubuntu-2ubuntu2 pat OpenSSH_6.6.1* compat 0x04000000 
debug1: SSH2_MSG_KEXINIT sent 
debug1: SSH2_MSG_KEXINIT received 
debug1: kex: server->client aes128-ctr [email protected] none 
debug1: kex: client->server aes128-ctr [email protected] none 
debug1: sending SSH2_MSG_KEX_ECDH_INIT 
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY 
debug1: Server host key: ECDSA b8:70:6e:f6:8c:4e:8e:ed:2b:46:d6:d4:d9:4d:ec:bb 
debug1: Host 'datanode1' is known and matches the ECDSA host key. 
debug1: Found key in /root/.ssh/known_hosts:4 
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: .ssh/namenode.pub 
debug1: Authentications that can continue: publickey 
debug1: No more authentication methods to try. 
Permission denied (publickey). 

Пожалуйста, помогите мне решить эту проблему. Я борюсь с 2 днями.

+0

Каковы разрешения для файлов '~/.ssh' и' ~/.ssh/authorized_keys' на целевом сервере? – lsowen

+0

-rw ------- 1 корень root 3695 19 марта 18:53 .ssh/authorized_keys –

+0

Похоже, что пользователи, отличные от root, не могут прочитать файл. я должен изменить разрешения сэр? –

ответ

1
ssh -v -i .ssh/namenode.pub [email protected] 

Когда вы указываете ключ ssh в командной строке, это должен быть файл закрытого ключа, а не общедоступный файл. Таким образом, вы должны указать здесь .ssh/namenode, а не .ssh/namenode.pub.

Похоже, вы добавили закрытый ключ к ssh-add, но нет никаких признаков в трассировке отладки ssh, которые он передал с помощью агента ssh или предоставил закрытый ключ удаленному серверу. Возможно, вы запустили ssh в другой сеанс (окно терминала) из команды ssh-add, чтобы ssh не имел доступа к переменным среды, сообщающим, как обращаться к агенту.

И, наконец, содержимое линии namenode.pub является одной длинной строкой. Убедитесь, что вы скопировали его в удаленный файл authorized_keys в виде одной длинной строки вместо трех строк.

Смежные вопросы