ssh sem senha para usuários não root no Docker

0

Estou me deparando com um problema curioso que nunca vi antes ao configurar o SSH sem senha entre os nós do estivador para um usuário não raiz. Para definir o cenário, eis o que funcionou: Para usuário root no nó 1:

ssh-keygen -t rsa ...
ssh-copy-id node2

Agora posso ssh de node1 - > node2 sem senha.

Eu uso um usuário diferente (ou seja, marca). Realizo os mesmos passos acima, gerando as chaves & copiando para node2 e ainda obter o prompt. Liguei o diagnóstico (ssh -v node2) e obtive o seguinte:

[mark@node1 ~]$ ssh -v node2
OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug1: Connecting to node2 [172.17.0.3] port 22.
debug1: Connection established.
debug1: identity file /root/.ssh/id_rsa type -1
debug1: identity file /root/.ssh/id_rsa-cert type -1
... more stuff
debug1: Next authentication method: publickey
debug1: Trying private key: /root/.ssh/id_rsa
debug1: Next authentication method: password
...

Acho estranho, exceto em outro post aqui ( link ) um dos cartazes fez o seguinte comentário: "Lembre-se que o docker é executado com o sudo (a menos que você não use), se este for o caso, você estará usando as chaves ssh da raiz." Isso me chamou a atenção, pois suspeito que possa ser a essência do meu problema.

Como eu não pude postar uma pergunta de acompanhamento lá, pensei em reformular a questão aqui. Não consigo encontrar detalhes na documentação do Docker especificamente sobre isso, mas isso parece influenciar o comportamento do ssh sem senha para usuários não-root.

Agradeço qualquer clareza que alguém possa fornecer.

    
por Mark Secrist 18.05.2015 / 18:33

1 resposta

0

Para solucionar problemas / entender o que está acontecendo, vale a pena tentar ssh -i /home/mark/.ssh/id_rsa... (ou qualquer caminho que seja) para ver se ele ainda permite usar a chave da marca e se ela funciona ao fazer isso. E como um teste, tente renomear a chave do root para ver o que ela faz!

Além disso, (esquecendo -i) ver se há um arquivo ~ / .ssh / config se tiver algo nele. E veja se há uma linha IdentityFile ____ em / etc / ssh_config que pode estar especificando a chave do root.

    
por 21.05.2015 / 05:52