Le versioni differenti di SSH dovrebbero avere VisualHostKeys diversi?

3

Sto collegando SSH a un server tramite SSH di Cygwin e SSH di Ubuntu 14.04.

  • Versione di Cygwin: OpenSSH_7.1p2, OpenSSL 1.0.2e 3 dic 2015
  • Versione di Ubuntu: OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.4, OpenSSL 1.0.1f 6 gennaio 2014

Quando mi collego a un server sulla nostra rete tramite IP, ottengo quanto segue:

On Cygwin:

Host key fingerprint is SHA256:0F6lOu97wCE/BSQZxLNzGNVsHfilI9EobN6nZEKPr+Y
+---[RSA 2048]----+
|       o+*oo.=.. |
|       .=.*oB o .|
|      . .OoB o o |
|       o=o* B =  |
|        S* B + . |
|         o= o    |
|          .+     |
|         .o .    |
|         oEo     |
+----[SHA256]-----+

Su Ubuntu:

Host key fingerprint is a8:87:04:f8:94:ab:d4:3b:39:4c:68:a9:b1:1e:c7:02
+--[ RSA 2048]----+
|                 |
| . .             |
|. +              |
| o+o   .         |
|E=oo. . S        |
|=++.oo           |
|+o Oo .          |
|. + o.           |
| .               |
+-----------------+

Le impronte digitali dei tasti host sembrano essere di formati diversi, il che va bene. Tuttavia ciò di cui sono preoccupato è che VisualHostKey è diverso. È prevedibile?

    
posta Mitch 04.02.2016 - 17:13
fonte

2 risposte

2

Il problema sta nel fatto che il randomart si basa sull'impronta digitale e non sulla chiave stessa. Ciò implica che gli hash sono diversi e quindi anche le arti ASCII. Ad esempio il mio output quando si utilizza la stessa versione client e la stessa chiave:

Host key fingerprint is SHA256:v0I6xgzhRSheT19KVcglIbLven9u/xAaVC/GlpjODpo
+---[ECDSA 256]---+
|     .. .o+=o .  |
|  . o oo..+. = o |
| . o +.o o  + * .|
|  . . o.o  + o . |
|   . o  S . + .  |
|    o  ..+ o o . |
|     + oE . o .  |
|      *.o  .o  . |
|     ..o oo+.....|
+----[SHA256]-----+
Host key fingerprint is MD5:22:0c:a2:6b:87:80:26:ee:0f:5c:62:1d:5c:e1:cd:48
+---[ECDSA 256]---+
|     E.          |
|  . + +          |
|. .o o o         |
|o..o.            |
|=+ oo . S        |
|B.+  . .         |
|.* .             |
|o o              |
| ...             |
+------[MD5]------+

La radice della modifica è che md5 è obsoleto e la nuova verison usa sha256 per impostazione predefinita. Tuttavia, puoi ancora forzare il client a utilizzare la versione md5, che dovrebbe risultare nella stessa casualart:

ssh -oFingerprintHash=md5 you_host

o con l'opzione in ssh_config :

FingerprintHash md5
    
risposta data 04.02.2016 - 18:27
fonte
0

Esaminando il codice sorgente e per quanto posso vedere, è completamente casuale.

Una nota dalla documentazione:

If you see the picture is different, the key is different.
If the picture looks the same, you still know nothing.
The algorithm used here is a worm crawling over a discrete plane, leaving a trace (augmenting the field) everywhere it goes.
Movement is taken from dgst_raw 2bit-wise. Bumping into walls makes the respective movement vector be ignored for this turn.
Graphs are not unambiguous, because circles in graphs can be walked in either direction.

Se necessario, puoi disattivare VisualHostKeys modificando il file di configurazione (in genere ~ / .ssh / config):

Host *
    VisualHostKey       yes
    
risposta data 04.02.2016 - 17:20
fonte

Leggi altre domande sui tag