Autonomía digital y tecnológica

Código e ideas para una internet distribuida

pass, el gestor de contraseñas de línea de comandos

Imago voragine.net

pass es un gestor de contraseñas de línea de comandos. Sigue la filosofía UNIX, toda una cultura y unos valores surgidos alrededor del desarrollo del sistema operativo UNIX: minimalismo, modularidad, facilidad de reutilización del código. En la práctica este tipo de desarrollo produce programas que hacen una sola cosa muy bien, programas que se pueden combinar de la misma manera que se usan las bibliotecas en diferentes entornos de programación, programas que utilizan archivos de texto para guardar la información y configuración. Son valores que Linux ha heredado.

El funcionamiento de pass es simple: guarda cada contraseña en un archivo de texto encriptado bajo una clave GPG. La base de datos de contraseñas es a su vez un repositorio git en el que cada nueva contraseña o modificación de una existente se añade mediante un commit que realiza automáticamente pass.

La estructura de archivos de texto hace que interactuar con pass sea muy sencillo, así que hay multitud de clientes que permiten acceder a la base de datos de contraseñas desde navegadores, editores, entornos de programación…

A continuación explico brevemente cómo instalar y configurar pass en Linux Debian, y cómo instalar la extensión passff para acceder a la base de datos de contraseñas desde Firefox.

Instalación y configuración de pass en Debian

Para instalar pass en Linux Debian podemos recurrir a cualquier instalador de paquetes, por ejemplo apt. pass está en los repositorios de casi todas las distribuciones:

sudo apt-get install pass

Una vez instalado, hace falta hacer una mínima configuración antes de empezar a usar pass. Para usar pass hay que tener una clave GPG. Primero se crea la base de datos de contraseñas:

pass init "ID clave GPG"

A continuación se configura la base de datos como un repositorio de git:

pass git init

Las órdenes básicas para usar pass son pocas. El sitio web de pass contiene un resumen muy útil para comenzar, además del manual completo.

Integración de pass en Firefox

Para disponer de la base de datos de contraseñas en Firefox hay que completar dos pasos:

Instalar la extensión passff

Para instalar passff se puede visitar la página de la extensión en el sitio web de Mozilla.

Instalar el conector passff-host

En el repositorio de passff-host en github hay documentación para instalarlo en diferentes sistemas operativos y distribuciones. En Debian se puede instalar con la siguiente orden:

curl -sSL https://github.com/passff/passff-host/releases/download/1.0.1/install_host_app.sh | bash -s -- firefox

5 comentarios

    • Por Jorge

    ¿Cómo solucionarías la necesidad de tener las claves accesibles desde diferentes dispositivos? ¿Sincronizando los archivos donde se almacenan? ¿Llevándolos en una llave USB?

    Si el dispositivo al que tienes acceso en un momento dado no es tuyo, ¿habría alguna forma sencilla de acceder a una clave?

    1. pass permite usar la base de datos desde distintas ubicaciones y dispositivos. Por ejemplo, hay disponibles varios clientes para Android, como < href="https://github.com/zeapo/Android-Password-Store">Android Password Store o pass-android.

      La idea para disponer de la base de datos de contraseñas en cualquier dispositivo es sencilla, siguiendo la filosofía UNIX ;) Como la base de datos es un repositorio git, se puede clonar en cualquier dispositivo y acceder a él usando nuestra clave GPG. La sincronización se hace usando git también (git pull). Supongo que habrá clientes que lo hagan automáticamente si se les da el servidor git del que hacer pull.

      No lo he probado más que desde Firefox, sin embargo, así que no te puedo decir exactamente cómo hacerlo.

        • Por Jorge

        Tiene lógica que se sincronice usando git…

        Te preguntaba porque últimamente le he estado dando vueltas a eso de las contraseñas, y sigo sin tener claro qué opción es más segura y libre/autónoma sin dejar de ser cómoda. De momento estoy usando Bitwarden, que es software libre y funciona de maravilla, pero sigue siendo SaaS porque no me atrevo a usar una instancia propia para algo tan delicado.

Dejar un comentario

*
*

 

2 trackbacks