Meu entendimento de uma impressão digital RSA é que ela é basicamente uma chave hash.
Meu entendimento de uma porta encaminhada é de acordo com a seguinte seção de man ssh
:
-R [bind_address:]port:host:hostport
Specifies that the given port on the remote (server) host is to
be forwarded to the given host and port on the local side. This
works by allocating a socket to listen to port on the remote
side, and whenever a connection is made to this port, the connec‐
tion is forwarded over the secure channel, and a connection is
made to host port hostport from the local machine.
Ao usar o ssh para conectar-se a uma porta encaminhada, qual é o hash da impressão digital da chave RSA? Usando chaves de autenticação RSA idênticas em várias máquinasdescreverei por que estou perguntando.
Ou, por exemplo, do que realmente são as duas impressões digitais abaixo?
- A impressão digital da chave RSA é 94:21:d2:fc:70:2d:8d:bb:71:30:0f:4d:52:49:01:43.
- A impressão digital da chave RSA é b2:5b:19:25:91:50:3c:45:73:c7:7e:4f:da:c3:f6:f3.
Obtendo a primeira impressão digital
Máquina 1
sshtunnel@pi_one:~ $ ssh -R 2222:localhost:22 [email protected]
Máquina Comum
[sshtunnel@devserver ~]$ ssh -p 2222 sshtunnel@localhost
The authenticity of host '[localhost]:2222 ([::1]:2222)' can't be established.
RSA key fingerprint is 94:21:d2:fc:70:2d:8d:bb:71:30:0f:4d:52:49:01:43.
Are you sure you want to continue connecting (yes/no)? no
Host key verification failed.
Obtendo a segunda impressão digital
Máquina 2
sshtunnel@pi_two:~ $ ssh -R 2222:localhost:22 [email protected]
Máquina Comum
[sshtunnel@devserver ~]$ ssh -p 2222 sshtunnel@localhost
The authenticity of host '[localhost]:2222 ([::1]:2222)' can't be established.
RSA key fingerprint is b2:5b:19:25:91:50:3c:45:73:c7:7e:4f:da:c3:f6:f3.
Are you sure you want to continue connecting (yes/no)? no
Host key verification failed.
[sshtunnel@devserver ~]$
Responder1
As chaves públicas do host em /etc/ssh/ssh_host_*_key.pub
:
$ ssh localhost
The authenticity of host 'localhost (::1)' can't be established.
ECDSA key fingerprint is 60:6e:7a:10:85:a4:14:f1:37:44:88:17:29:67:b1:e1.
Are you sure you want to continue connecting (yes/no)? ^C
$ ssh-keygen -l -f /etc/ssh/ssh_host_ecdsa_key
256 60:6e:7a:10:85:a4:14:f1:37:44:88:17:29:67:b1:e1 /etc/ssh/ssh_host_ecdsa_key.pub (ECDSA)
(Observe que não importa se você solicitar ssh-keygen
uma impressão digital da chave privada (sem a .pub
extensão), ela lê automaticamente a chave pública correspondente.)
No seu caso, é a chave RSA que é mencionada, portanto /etc/ssh/ssh_host_rsa_key.pub
, e com o encaminhamento de porta, é o host ssh
ao qual eventualmente se conecta.
Com versões mais recentes do ssh-keygen
, a saída padrão é o hash SHA256 codificado em base64 da chave. Adicionar a -E md5
opção fornece o hash MD5 codificado em hexadecimal (mas observe que agora há um prefixo indicando o tipo de hash):
$ ssh-keygen -l -f /etc/ssh/ssh_host_ecdsa_key.pub
256 SHA256:4+dfNAIjGq72HL9UeNEpne8J54yj/4wFpi+/4Bv7dhQ root@... (ECDSA)
$ ssh-keygen -Emd5 -l -f /etc/ssh/ssh_host_ecdsa_key.pub
256 MD5:3c:18:e7:9c:ee:e8:6a:38:7d:74:ef:2f:a5:51:ee:1a root@... (ECDSA)