Como usar um outro par de chaves privado / público (gerado pelo PuTTY) para o ssh?

1

Eu estava me conectando a um dos meus servidores Linux da estação de trabalho MS Windows usando o PuTTY (eu os gerava no MS Windows usando uma das ferramentas relacionadas ao PuTTY, não me lembro quais parâmetros usei ao gerar as chaves). Agora estou tentando conectar ao mesmo servidor da minha estação de trabalho Ubuntu GNU / Linux. Eu já tenho pares de chaves privadas / públicas no meu ~ / .ssh:

id_rsa
id_rsa.pub

Agora, além desses pares de chave privada / pública que eu já possuo, também quero adicionar os pares de chaves privada / pública para conectar ao meu servidor Linux. Para o PuTTY, eu tinha dois arquivos que me permitiam conectar com sucesso ao meu servidor Linux:

emrePrivate.ppk
emrePublic.pub

Eu copiei os arquivos acima para o meu diretório ~ / .ssh. Então tentei me conectar ao meu servidor usando o seguinte comando:

$ ssh -v -i /home/emre/.ssh/emrePrivate.ppk [email protected]

Mas vejo que ele tenta usar a chave pública errada. Aqui está a saída:

OpenSSH_5.3p1 Debian-3ubuntu4, OpenSSL 0.9.8k 25 Mar 2009
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug1: Connecting to yafz.org [109.74.204.147] port 22.
debug1: Connection established.
debug1: identity file /home/emre/.ssh/emrePrivate.ppk type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.1p1 Debian-6ubuntu2
debug1: match: OpenSSH_5.1p1 Debian-6ubuntu2 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.3p1 Debian-3ubuntu4
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: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Host 'yafz.org' is known and matches the RSA host key.
debug1: Found key in /home/emre/.ssh/known_hosts:3
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
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 public key: [email protected]
debug1: Authentications that can continue: publickey
debug1: Offering public key: /home/emre/.ssh/id_rsa
debug1: Authentications that can continue: publickey
debug1: Trying private key: /home/emre/.ssh/emrePrivate.ppk
debug1: PEM_read_PrivateKey failed
debug1: read PEM private key done: type <unknown>
Enter passphrase for key '/home/emre/.ssh/emrePrivate.ppk': 
debug1: PEM_read_PrivateKey failed
debug1: read PEM private key done: type <unknown>
Enter passphrase for key '/home/emre/.ssh/emrePrivate.ppk': 

E, como você pode ver, não aceita minha senha. Eu também tentei copiar emrePrivate.ppk para id_rsa e emrePublic.pub para id_rsa.pub, mas ainda não consegui conectar ao meu servidor Linux.

Estou preocupado especialmente com essas linhas:

debug1: Offering public key: [email protected]
debug1: Authentications that can continue: publickey
debug1: Offering public key: /home/emre/.ssh/id_rsa

Mas não consegui descobrir como posso corrigir isso.

Alguma idéia?

    
por Emre Sevinç 24.07.2010 / 11:09

1 resposta

5

Sua chave pública precisa estar em ~ / .ssh / authorized_keys na caixa de destino. Se você quiser mais de uma chave, basta copiá-las para a caixa de destino e anexá-las assim:

cat id_rsa.pub >> ~/.ssh/authorized_keys

Além disso, leia esta informação sobre a compactabilidade de putty e como converter chaves.

    
por 24.07.2010 / 11:24

Tags