- ENTRADA 005 -
2FA por consola con PASS
La segunda vez es más fácil.
Lo se, Mata-Hari
Hace unas entradas expliqué el funcionamiento de pass:
Gestión de contraseñas por consola. Pass
Si ya has leído mi anterior entrada sobre 2FA, decirte que mediante la extensión pass-otp puedes gestionar tus claves OTP desde un simple terminal. Si no, te invito a que lo hagas:
2FA: Autenticación en dos factores
Recomendaciones
Cuando se activa el 2fa, en muchos servicios ofrecen unas claves de recuperación que hay que copiar y guardar en sitio seguro por si pierdes el movil o se te formatea el sistema en tu Pc.
Además es MUY recomendable anotar la dirección URI (o capturar pantalla con el QR) para poder configurar bien pass-otp como te explico ahora.
Hay dos maneras de configurar un OTP, mediante código QR o tecleando la dirección URI
Leyendo código QR
Mediante zbar es fácil, solo necesitas descargar el código QR o hacer una captura de pantalla. Eso ofrece una dirección URI que hay que guardar porque será necesaria en breve:
zbarimg -q captura.png
Ahora se genera una entrada en pass usando OTP. En mi caso he creado una rama llamada 2fa y un ejemplo de la cuenta de correo disroot (modificado, claro, no voy a poner mis datos reales):
pass otp insert 2fa/disroot Enter otpauth:// URI for 2fa/disroot: Retype otpauth:// URI for 2fa/disroot:
Ahí es donde tenemos que poner 2 veces la dirección que conseguimos del QR, que tiene esta forma:
otpauth://totp/disroot.org:cuenta0%40disroot.org?secret=AT2YBIN4WSAOX72KMA9TBSWDDMFBLTGGP&issuer=disroot.org
Si estás siguiendo este manual, verás que escribes pero no se ve lo que escribes. Los carácteres son invisibles por seguridad, así que lo mejor es copiar/pegar si tu consola lo soporta, porque teclear toda esa linea sin equivocarte puede ser complicado. Si lo tienes difícil, hay un truco: deja esa dirección en un archivo de texto y pásaselo a pass-otp:
pass otp insert 2fa/disroot < totp-secret.txt
Generando un OTP
Para generar un código de un solo uso (OTP), llamas a pass con otp y le das la entrada que hiciste:
pass otp 2fa/disroot 583429
Fácil y rapidísimo.
Para más privacidad, si no quieres que salga por pantalla, lo copias al clipboard durante 45 segundos con la opción -c o --clip. Para ello debes tener instalado xclip.
pass otp -c 2fa/autistici379253
NOTA: Si haces cambio de nombre de usuario o contraseña en la configuración del servicio, deberás actualizar la entrada en pass (pass edit entrada), ya que no la actualiza automáticamente como sí que hace Aegis en el smartphone.
NOTA2: pass-otp genera los códigos mediante oathtool. Así, podríamos generar un código mediante el comando: oathtool --totp --base32 AT2YBIN4WSAOX72KMA9TBSWDDMFBLTGGP
Tags: #2fa
/blog/