Por que minha chave RSA parece diferente no meu servidor do que quando tento conectar?

0

Estou tentando conectar ao meu servidor Linux usando PuTTY (e SCP especificamente) do Windows. Quando tentei me conectar pela primeira vez, como quando tento me conectar de qualquer máquina nova, recebo um aviso sobre a conexão a um “servidor desconhecido” e adiciono sua chave ao meu cache.

No Windows, diz "A impressão digital da chave rsa2 do servidor é:" e depois fornece algo parecido com isto:

0a:34:a3:43:af (etc)

Para verificar, eu ssh no meu servidor mudou para /etc/ssh/ e executei:

for file in *sa_key.pub; do ssh-keygen -lf $file; done

Para imprimir todas as impressões digitais dos meus arquivos.

A saída parecia bem diferente, mais assim:

2048 SHA256:ZAGZABCSD4+abcfe5ffff344444fff32323 ssh_host_rsa_key.pub

Em outras palavras, não é uma lista de números separados por dois pontos. Alguém poderia me dizer a diferença e como eu poderia encontrar a lista correta de valores separados por dois pontos para a impressão digital?

    
por Startec 26.10.2015 / 00:37

1 resposta

2

Algumas partes do openssh estão usando hashes MD5, e algumas estão usando hashes SHA256. No seu caso, parece que seu cliente está fornecendo um hash md5, enquanto seu servidor ssh-keygen nos usando SHA256.

Você pode calcular o hash sozinho. Se você obtiver a chave do host do arquivo .pub, será assim, reticências para substituir muitos caracteres:

   AAAAB3[...]==

Então você mesmo pode fazer os hashes:

md5:

echo "AAAAB3[...]==" | base64 -d | md5sum
679e19234b295ee432a3920c30fda6ac

sha:

echo "AAAAB3[...]==" | base64 -d | sha1sum
41a53770303a0776a1378239e2ee0fd825705c74
    
por 26.10.2015 / 01:31