[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [linux_var] Il progetto monkeysphere



Ok, adesso che sono sveglia...

Da quasi un anno uso una smartcard OpenPGP con le tre sottochiavi della
mia chiave GPG per firma, crittografia e autenticazione (quindi appunto
ssh).

On 2016-09-14 at 20:50:26 +0000, Lorenzo Lobba wrote:
> Voi tutti conoscete gpg e ssh. [...]
> Ma le chiavi generate da ssh e quelle da gpg non sono compatibili.
> [...]
> Sarebbe bello che gpg generasse una chiave pubblica compatibile con ssh e
> anche gpg permette di autenticare le sessioni.
> In questo modo la chiave pubblica compatibile con ssh non sarebbe altro che
> una sotto chiave (sub key) legata alla propria chiave privata gpg.

In realtà questo è possibile: gpg può generare una sottochiave con
capacità di autenticazione, basta selezionare la modalità expert; 
a quel punto gpg-agent può essere configurato per fornire supporto ssh,
lo si può tenere attivo al posto di ssh-agent e fa lui il lavoro di
entrambi.

Le istruzioni per farlo con gnupg 2.1 sono su:

https://incenp.org/notes/2015/gnupg-for-ssh-authentication.html

(unica differenza: noto che la mia chiave non è in sshcontrol, ma
funziona comunque; non so se il fatto che sia salvata su smartcard
influenzi la cosa)

Mi manca ancora un passaggio che è: una persona che scarichi la mia
chiave pubblica GPG ha tutti i dati per potermi dare accesso a server
(o altri servizi identificati con chiave ssh), ma non ho ancora trovato
in che modo estrarli nel formato richiesto dentro a .ssh/authorized_keys

Ovviamente è sempre possibile fare "come facevano gli antichi", usare
ssh-add -L sul mio computer, ottenere quella stringa ed inviarla al
destinatario in una mail firmata.

> Ho trovato monkeysphere che permette di fare quanto spiagato sopra.
> 
> monkeysphere permette di convertire una sotto chiave gpg in una chiave
> pubblica ssh.
> L'ho provato e funziona.

Ho guardato monkeysphere tempo fa, ma non l'ho mai usato effettivamente:
mi sembra però che il loro obiettivo primario non siano le chiavi degli
utenti ma quelle dei server: ovvero usare la Web of Trust di GPG come
strumento per la validazione delle chiavi sia TLS/SSL che SSH (in questo
caso, per evitare di dover controllare i fingerprint tramite altro
canale).

In teoria è una cosa interessante e non c'è niente di tecnico che lo
impedisca, ma non mi risulta che sia particolarmente usato, il che lo
rende molto meno utile, anche se soprattutto dal lato ssl.

Dal lato ssh di solito il problema è meno pressante, perché di solito un
canale per distribuire i fingerprint dei server c'è (una pagina sotto
https o una mail firmata, a seconda dei casi) e la verifica è una
scocciatura che però va fatta una volta soltanto.

Dei loro progetti trovo interessante monkeysign, che usa dei QR-code per
trasferire il fingerprint della chiave gpg, da usare in occasione dei
signing parties (però anche questo ha dei problemi: il foglietto con
fingerprint leggibile da umani è scomodo da confrontare, ma lo si può
sempre fare, sostituire dei foglietti con un qr-code ha più probabilità
di passare inosservato).

-- 
Elena ``of Valhalla''

Attachment: signature.asc
Description: PGP signature

_______________________________________________
Talking mailing list
Talking@ml.linuxvar.it
http://ml.linuxvar.it/cgi-bin/mailman/listinfo/talking