sudo ssh pede passphrase quando não deveria

0

Eu posso ssh user@remotemachine sem senha usando um par de chaves com uma frase secreta vazia. No entanto, quando eu faço sudo -u user ssh user@remotemachine , ele continua pedindo uma frase secreta. Também sudo -u user ssh -i /home/user/.ssh/id_rsa user@remotemachine não ajuda. Por que isso?

Background: Estou executando um script python como sudo e, desse script, preciso ssh para remotemachine como usuário.

Qualquer ajuda é apreciada!

EDITAR

Em resposta ao comentário, tentei novamente com a opção -vv. Tudo parece bem, a chave é encontrada, enviada para o servidor e aceita. No entanto, então vem as seguintes linhas:

debug2: we sent a publickey packet, wait for reply
debug1: Server accepts key: pkalg ssh-rsa blen 279
debug2: input_userauth_pk_ok: fp <here was the fingerprint>
debug1: key_parse_private_pem: PEM_read_PrivateKey failed
debug1: read PEM private key done: type <unknown>
Enter passphrase for key '/home/user/.ssh/id_rsa':
    
por Konstantin 09.09.2014 / 18:47

1 resposta

0

Tudo bem, foi culpa minha. A chave foi realmente criptografada, como pude ver abrindo-a em um editor de texto. O fato de que sem sudo não me pediram uma frase-senha foi porque eu já inseri a senha no login (acho que é algum utilitário gnome que armazena em cache) e esqueci por causa do longo tempo de atividade:)

Com sudo, eu acho, não consegui acessar essa senha em cache.

Para descriptografar uma chave privada, você pode usar openssl rsa -in id_rsa -out id_rsa.decr , depois rm id_rsa , seguido por mv id_rsa.decr id_rsa .

    
por 10.09.2014 / 11:02

Tags