Ver a impressão digital da chave de host SSH de um servidor SFTP

Obtenha a impressão digital (fingerprint) da chave de host SSH de qualquer servidor SFTP. Veja o tipo de chave e as impressões digitais MD5 e SHA256 sem precisar de credenciais.

O que é a impressão digital de uma chave de host?

Todo servidor SSH ou SFTP tem um par de chaves de host próprio. A impressão digital é um hash curto da chave pública que permite confirmar que você está se conectando ao servidor certo, e não a um impostor.

Os clientes SSH guardam as impressões digitais das chaves de host num arquivo known_hosts. Na primeira conexão, eles pedem que você confirme a impressão digital. Nas seguintes, verificam automaticamente. Uma impressão digital que muda é um sinal de alerta: um ataque man-in-the-middle ou um servidor reinstalado.

SHA256 x MD5

As impressões digitais SHA256 (o padrão do OpenSSH moderno) são mais seguras e resistentes a colisões. Alguns clientes mais antigos ainda mostram impressões digitais MD5. As duas identificam a mesma chave.

Já conferiu a impressão digital? Um cliente SFTP que verifica as chaves de host a cada conexão faz isso por você automaticamente: o FTPie confere a identidade do servidor toda vez e avisa se a chave mudar.

Verificar uma impressão digital por conta própria

O valor de comparação deve vir do responsável pelo servidor, e não da conexão que você está tentando verificar. No próprio servidor, ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub mostra a impressão digital SHA256 da chave Ed25519 dele; as chaves RSA e ECDSA ficam ao lado, na mesma pasta.

A partir de um PC, as ferramentas OpenSSH que vêm no Windows 10 e 11 fazem o mesmo que esta página. No Prompt de Comando, ssh-keyscan sftp.example.com > keys.txt salva as chaves públicas do servidor e ssh-keygen -lf keys.txt lista as impressões digitais delas. Acrescente -E md5 para obter a forma MD5 quando a impressão digital que você recebeu tiver o formato a1:b2:c3:... em vez de SHA256:.... Uma impressão digital não pode ser convertida de uma forma para a outra: compare sempre a mesma forma.

Um servidor costuma ter várias chaves de host (Ed25519, ECDSA e RSA), e cada uma tem sua própria impressão digital. Muitas vezes uma diferença é só outro tipo de chave, então compare a impressão digital do tipo que o seu cliente realmente recebeu.

Se o servidor foi reinstalado e a nova chave é legítima, remova a entrada antiga com ssh-keygen -R sftp.example.com e aceite a nova impressão digital na próxima conexão.