Toda vez que faço login em um servidor remoto com SSH, o chaveiro do OS X solicita que eu lembre da senha do SSH. Digito a senha e marque a caixa para lembrá-la. Em seguida, conecto-me ok ao servidor, mas na próxima vez em que for solicitado novamente e assim por diante ...
Eu tenho uma chave privada para ssh no meu servidor e a conexão funciona. No meu arquivo hosts, tenho:
Host myhost
HostName xxx.xxx.xxx.xx
GlobalKnownHostsFile ~/.ssh/known_hosts
port 22
User myuser
IdentityFile ~/.ssh/mykey_dsa
IdentitiesOnly yes
.. e então eu digito ssh myhost
Este é apenas um problema recente, por isso desconfio e tenho problemas com o Keychain? Para ser claro, eu posso "adicionar novamente" às chaves sempre e conectar, mas isso prejudica o objetivo. As permissões na minha chave dsa estão definidas em 600 ou-rw-------@
Tentei reparar as permissões do disco, mas isso não adiantou. Meu Google-foo também está falhando comigo, nada de útil surgiu. Portanto, não tenho certeza se isso é um problema do OS X / keychain ou um SSH.
update: Quando tento ssh -vvv myhost, acho que revela o problema:
debug1: Trying private key: /Users/danny/.ssh/mykey_dsa
debug1: PEM_read_PrivateKey failed
debug1: read PEM private key done: type <unknown>
debug3: Not a RSA1 key file /Users/danny/.ssh/mykey_dsa.
debug1: read PEM private key done: type DSA
Identity added: /Users/danny/.ssh/mykey_dsa (/Users/danny/.ssh/mykey_dsa)
debug1: read PEM private key done: type DSA
debug3: sign_and_send_pubkey
debug2: we sent a publickey packet, wait for reply
debug1: Authentication succeeded (publickey).
... e depois disso eu me conecto. Eu acho que esse ponto crucial da questão é:
PEM_read_PrivateKey failed
Atualização 2: Depois de tentar a mesma chave e configurações em outro Mac com 10.6.8, tudo funcionou bem, então eu acho que essa é uma pergunta específica do Mac, possivelmente um problema de chave de permissão.
Atualização 3 Também tentei uma instalação limpa do Mountain Lion (10.8.1) e, infelizmente, o mesmo problema que não entendo totalmente.
Possivelmente relacionado: https://discussions.apple.com/thread/3518441?start=0&tstart=0
Atualização 4 Esta é a resposta
fonte
ssh -v[v] myserver
obter informações detalhadas sobre o erro.PEM_read_PrivateKey failed
mas não sei por que, gerei essa chave como todas as outras que são adicionadas ao chaveiro e ficam lá.ssh-add -K
Respostas:
Resposta copiada de /apple//a/26252/17690
Verifique se você possui um correspondente
id_rsa.pub
ouid_dsa.pub
em seu~/.ssh
diretório.Quando eu tinha um,
id_rsa
mas não um correspondenteid_rsa.pub
, o Mac OS X continuava aparecendo na caixa de diálogo e lembre-se de que a senha no meu chaveiro não fazia nada.gerou o arquivo de chave pública apropriado para mim.
Se você já possui seu arquivo público (renomeie para outro nome) e gere a chave pública novamente usando o comando acima, você perceberá que o gerado e o antigo não são iguais. De alguma forma, as versões mais antigas do Mac OS X geravam uma chave pública da qual o Lion não gosta mais, e a geração novamente corrige isso.
Para os curiosos, a chave é exatamente a mesma, a parte que muda é que não há mais seção de "comentários" após a chave no arquivo.
fonte