Quanto è vecchia la vostra chiave ssh?
Rigenerare le chiavi ssh usate per collegarsi ai server è una rottura di scatole, ma potrebbe essere una rottura di molte unità di grandezza inferiore rispetto allo scoprire che una chiave ssh viene usata da mesi a nostra insaputa.
Quanto sono cortelunghe le chiavi ssh registrate nei file authorized-keys
dei vostri server?
Per fortuna a questa ultima domanda c’è una risposta veloce sotto forma di un pratico script shell.
#!/bin/sh set -ue tmp="$(mktemp -t fingerprint-authkeys.XXXXXXXX)" trap 'rm -f "$tmp"' 0 while read opts key; do case "$opts" in [0-9]*|ssh-dss|ssh-rsa) # not options, first "word" is part of key key="$opts $key" ;; esac echo "$key" >$tmp set -- $(ssh-keygen -lf "$tmp") bits="$1" fingerprint="$2" set -- $key # Note: will mangle whitespace in the comment case "$1" in [0-9]*) # SSH v1 key type=rsa1 shift 3 ;; ssh-rsa|ssh-dss) # SSH v2 key type="$1" shift 2 ;; *) type=unknown set -- ;; esac printf '%-14s %-9s %s %s\n' "$type" "$bits" "$fingerprint" "$*" done <$1
Una volta salvato e reso eseguibile, si può lanciare lo script passando come unico parametro obbligatorio il percorso di un file authorized-keys
.
L’output del file sarà qualcosa di simile a questo:
ssh-rsa 2048 ba:dd:ec:af:f3:48:c2:9b:64:7d:e7:21:10:fb:28:00 pippo ssh-rsa 4096 de:ad:be:ef:51:32:a2:f1:9d:ef:35:6c:95:58:ad:00 pluto ssh-rsa 4096 b1:9b:b0:0b:50:8a:dd:e4:ef:f8:d7:b4:0f:ec:a9:00 paperone ssh-rsa 4096 f0:0d:be:fe:b6:48:97:ba:ac:90:0d:c2:60:bf:5e:00 paperino
Qui vediamo che la chiave di pippo è l’unica a 2048 bit, mentre le altre sono già a 4096.
Le chiavi a 1024 sono state violate nel 2010, quindi sotto i 2048 bit siete protetti giusto dai ladri di polli; le linee guida attuali (Debian, per citarne una) consigliano l’uso di chiavi a 4096 bit.
Bisogna sottolineare che è vero che 4096 è il doppio di 2048, ma la complessità della chiave è esponenziale, quindi se si ipotizza che una chiave a 2048 potrebbe essere attaccata con successo in qualche centinaio di giorni, con la stessa potenza di calcolo potrebbero essere necessari anni per violare una chiave a 4096 bit.
Come obblighiamo gli utenti a cambiare password periodicamente, così dobbiamo anche noi cambiare periodicamente le chiavi e utilizzare possibilmente quelle a 4096 bit.
Lascia un commento