Ya hemos visto como agregar una llave GnuPG a una Yubikey como smartcard. Ahora veremos como configurar algunos parámetros adicionales.
Cambiar el PIN de llave y el PIN de admin
Las Yubikey 4 traen de fábrica configurados dos PIN, uno para usar la llave (123456) y otro para las operaciones de administración (12345678). Éstos deben ser cambiados para que no se pueda usar la Yubikey sin autorización.
Cambio PIN de llave
Debemos ejecutar el comando gpg2 --card-edit
para entrar al modo edición. Una vez en el modo edición, ejecutamos passwd
. Se pedirá el PIN actual para luego ingresar y confirmar el nuevo PIN.
Cambio PIN de admin
Debemos ejecutar el comando gpg2 --card-edit
. Una vez en el modo edición ejecutamos admin
y luego passwd
. Debemos elegir la opción change Admin PIN
. Se pedirá el PIN de admin actual para luego ingresar y confirmar el nuevo PIN.
URL para descargar llave pública
En el post anterior indicamos que para usar la yubikey en otros equipos necesitamos importar la llave pública. Esto se facilita si dejamos la llave en algún servidor de llaves para recuperarla por red.
-
Listamos las llaves para obtener el hash:
gpg2 --list-secret-keys sec# rsa2048 2017-11-13 [SC] FB4C1101D775522102A6F3D4BA1D54E27D357BCD uid [desconocida] Juan Pérez <jp@example.com> ssb> rsa2048 2017-11-13 [E] ssb> rsa2048 2017-11-13 [S] ssb> rsa2048 2017-11-13 [A]
-
Recuperamos los últimos 16 caracteres del hash hexadecimal, en este caso
BA1D54E27D357BCD
. Luego publicamos la llave en la web:gpg2 --keyserver pgp.key-server.io --send-key BA1D54E27D357BCD
-
Luego determinamos la url donde estará la llave:
https://pgp.key-server.io/download/0xBA1D54E27D357BCD
-
Insertamos la yubikey
-
Ejecutamos el comando
gpg2 --card-edit
, luego ejecutamosadmin
y finalmenteurl
. Colocamos la url que formamos en el punto 3. Nos solicitará el PIN de admin. -
Salimos con
quit
Ahora que la yubikey ya posee una url con la llave pública, bastará que la conectemos a otro equipo e ingresemos al modo edición gpg2 --card-edit
y luego obtengamos la llave con fetch
.
gpg/tarjeta> fetch
gpg: requesting key from 'https://pgp.key-server.io/download/0xBA1D54E27D357BCD'
gpg: clave BA1D54E27D357BCD: clave pública "Juan Pérez <[email protected]>" importada
gpg: Cantidad total procesada: 1
gpg: importadas: 1