Cómo instalar el gestor de contraseñas Bitwarden en Ubuntu 22.04
Bitwarden es un gestor de contraseñas gratuito y de código abierto que te permite almacenar todos tus inicios de sesión y contraseñas y sincronizarlos entre todos tus dispositivos. Es multiplataforma y está disponible para Linux y los principales sistemas operativos, como Windows y macOS. Tiene un montón de características útiles, incluyendo un fuerte cifrado, autenticación de dos factores (2FA), auditoría de seguridad de las contraseñas, supervisión de la violación de las contraseñas, y opciones de alojamiento en la nube o local.
En este post, te mostraremos cómo instalar el software Bitwarden Password Manager en Ubuntu 22.04.
Requisitos previos
- Un servidor con Ubuntu 22.04.
- Una contraseña de root configurada en el servidor.
Cómo empezar
En primer lugar, se recomienda actualizar y poner al día todos los paquetes del sistema a la última versión. Puedes actualizarlos ejecutando el siguiente comando:
apt update -y apt upgrade -y
Una vez actualizados todos los paquetes, ejecuta el siguiente comando para instalar las dependencias adicionales necesarias:
apt install apt-transport-https ca-certificates curl software-properties-common -y
Una vez instaladas todas las dependencias, puedes pasar al siguiente paso.
Instalar el repositorio Docker CE
A continuación, tendrás que añadir el repositorio oficial de Docker CE a APT. Primero, añade la clave GPG de Docker con el siguiente comando:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add -
A continuación, añade el repositorio de Docker CE con el siguiente comando:
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu jammy stable"
Una vez añadido el repositorio de Docker a APT, puedes pasar al siguiente paso.
Instalar Docker CE
Ahora, puedes instalar la última versión de Docker CE utilizando el siguiente comando:
apt install docker-ce -y
Una vez instalado Docker, verifica el estado del servicio Docker con el siguiente comando:
systemctl status docker
Obtendrás el estado de Docker en la siguiente salida:
? docker.service - Docker Application Container Engine Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled) Active: active (running) since Sun 2022-08-28 05:52:18 UTC; 47s ago TriggeredBy: ? docker.socket Docs: https://docs.docker.com Main PID: 2719 (dockerd) Tasks: 7 Memory: 30.3M CPU: 312ms CGroup: /system.slice/docker.service ??2719 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock Aug 28 05:52:18 ubuntu2204 dockerd[2719]: time="2022-08-28T05:52:18.379341986Z" level=info msg="scheme \"unix\" not registered, fallback to d> Aug 28 05:52:18 ubuntu2204 dockerd[2719]: time="2022-08-28T05:52:18.379467088Z" level=info msg="ccResolverWrapper: sending update to cc: {[{u> Aug 28 05:52:18 ubuntu2204 dockerd[2719]: time="2022-08-28T05:52:18.379593467Z" level=info msg="ClientConn switching balancer to \"pick_first> Aug 28 05:52:18 ubuntu2204 dockerd[2719]: time="2022-08-28T05:52:18.427861369Z" level=info msg="Loading containers: start." Aug 28 05:52:18 ubuntu2204 dockerd[2719]: time="2022-08-28T05:52:18.620267088Z" level=info msg="Default bridge (docker0) is assigned with an > Aug 28 05:52:18 ubuntu2204 dockerd[2719]: time="2022-08-28T05:52:18.713742709Z" level=info msg="Loading containers: done." Aug 28 05:52:18 ubuntu2204 dockerd[2719]: time="2022-08-28T05:52:18.744925054Z" level=info msg="Docker daemon" commit=a89b842 graphdriver(s)=> Aug 28 05:52:18 ubuntu2204 dockerd[2719]: time="2022-08-28T05:52:18.745338168Z" level=info msg="Daemon has completed initialization" Aug 28 05:52:18 ubuntu2204 systemd[1]: Started Docker Application Container Engine. Aug 28 05:52:18 ubuntu2204 dockerd[2719]: time="2022-08-28T05:52:18.805663866Z" level=info msg="API listen on /run/docker.sock"
Instalar Docker Compose
También tendrás que instalar Docker Compose en tu sistema. Puedes descargarlo e instalarlo con el siguiente comando:
curl -sL "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
A continuación, establece el permiso de ejecución del binario descargado con el siguiente comando:
chmod +x /usr/local/bin/docker-compose
A continuación, verifica la versión de Docker Compose con el siguiente comando:
docker-compose --version
Obtendrás la siguiente salida:
docker-compose version 1.29.2, build 5becea4c
Crea un usuario para Bitwarden
Es una buena idea ejecutar Bitwarden como un usuario dedicado. Puedes crear un nuevo usuario y añadirlo al grupo sudo y docker con el siguiente comando:
useradd -G docker,sudo -s /bin/bash -m -d /opt/bitwarden bitwarden
A continuación, establece una contraseña para el usuario con el siguiente comando:
passwd bitwarden
Deberías ver la siguiente salida:
New password: Retype new password: passwd: password updated successfully
A continuación, cambia la propiedad al directorio bitwarden:
chown -R bitwarden: /opt/bitwarden
Instalar el gestor de contraseñas Bitwarden en Ubuntu 22.04
En primer lugar, visita la página de alojamiento de Bitwarden y obtén la clave y el identificador de instalación de Bitwarden como se muestra a continuación:
A continuación, cambia el usuario a Bitwarden y descarga el script de instalación de Bitwarden utilizando el siguiente comando:
su - bitwarden curl -Lso bitwarden.sh https://go.btwrdn.co/bw-sh
A continuación, establece el permiso de ejecución para el script descargado:
chmod +x bitwarden.sh
A continuación, instala el gestor de contraseñas de Bitwarden con el siguiente comando:
sudo ./bitwarden.sh install
Se te pedirá que proporciones tu dominio o IP, la información SSL y el nombre de la base de datos, como se muestra a continuación:
_ _ _ _ | |__ (_) |___ ____ _ _ __ __| | ___ _ __ | '_ \| | __\ \ /\ / / _` | '__/ _` |/ _ \ '_ \ | |_) | | |_ \ V V / (_| | | | (_| | __/ | | | |_.__/|_|\__| \_/\_/ \__,_|_| \__,_|\___|_| |_| Open source password management solutions Copyright 2015-2022, 8bit Solutions LLC https://bitwarden.com, https://github.com/bitwarden =================================================== bitwarden.sh version 2022.8.4 Docker version 20.10.17, build 100c701 docker-compose version 1.29.2, build 5becea4c (!) Enter the domain name for your Bitwarden instance (ex. bitwarden.example.com): 208.117.81.243 (!) Do you want to use Let's Encrypt to generate a free SSL certificate? (y/n): n (!) Enter the database name for your Bitwarden instance (ex. vault): bitwarden
Proporciona toda la información necesaria y pulsa la tecla Intro. Se te pedirá que proporciones la clave de instalación de Bitwarden, el identificador y la información SSL:
2022.8.4: Pulling from bitwarden/setup 1efc276f4ff9: Pull complete e5aeae5c9ad4: Pull complete 9d8b4edc672a: Pull complete 67bb3a123350: Pull complete 4b31f33ff8ee: Pull complete 8302c6d93c2f: Pull complete 64c1ff0e03a3: Pull complete 289e8b648bb1: Pull complete c706fe453135: Pull complete 6b18bfe90415: Pull complete Digest: sha256:257317606bad7b6c06755c81e4f61099b4af8b89829d7a9a2688545b92daa45f Status: Downloaded newer image for bitwarden/setup:2022.8.4 docker.io/bitwarden/setup:2022.8.4 (!) Enter your installation id (get at https://bitwarden.com/host): c1908405-5beb-497f-9f09-aefe00f87c3f (!) Enter your installation key: yQVH9PTcUIPftio0ZM8L (!) Do you have a SSL certificate to use? (y/n): n (!) Do you want to generate a self-signed SSL certificate? (y/n): y
Proporciona toda la información necesaria y pulsa la tecla Intro. Una vez instalado el Bitwarden, deberías ver el siguiente resultado:
Generating key for IdentityServer. Generating a RSA private key .........................++++ .++++ writing new private key to 'identity.key' ----- !!!!!!!!!! WARNING !!!!!!!!!! You are not using a SSL certificate. Bitwarden requires HTTPS to operate. You must front your installation with a HTTPS proxy or the web vault (and other Bitwarden apps) will not work properly. Building nginx config. Building docker environment files. Building docker environment override files. Building FIDO U2F app id. Building docker-compose.yml. Installation complete If you need to make additional configuration changes, you can modify the settings in `./bwdata/config.yml` and then run: `./bitwarden.sh rebuild` or `./bitwarden.sh update` Next steps, run: `./bitwarden.sh start`
Ahora, inicia el servicio de Bitwarden con el siguiente comando:
sudo ./bitwarden.sh start
Deberías obtener la siguiente salida:
bitwarden.sh version 2022.8.4 Docker version 20.10.17, build 100c701 docker-compose version 1.29.2, build 5becea4c Pulling mssql ... done Pulling web ... done Pulling attachments ... done Pulling api ... done Pulling identity ... done Pulling sso ... done Pulling admin ... done Pulling icons ... done Pulling notifications ... done Pulling events ... done Pulling nginx ... done Creating directory /opt/bitwarden/bwdata/core Creating directory /opt/bitwarden/bwdata/core/attachments Creating directory /opt/bitwarden/bwdata/logs Creating directory /opt/bitwarden/bwdata/logs/admin Creating directory /opt/bitwarden/bwdata/logs/api Creating directory /opt/bitwarden/bwdata/logs/events Creating directory /opt/bitwarden/bwdata/logs/icons Creating directory /opt/bitwarden/bwdata/logs/identity Creating directory /opt/bitwarden/bwdata/logs/mssql Creating directory /opt/bitwarden/bwdata/logs/nginx Creating directory /opt/bitwarden/bwdata/logs/notifications Creating directory /opt/bitwarden/bwdata/logs/sso Creating directory /opt/bitwarden/bwdata/logs/portal Creating directory /opt/bitwarden/bwdata/mssql/backups Creating directory /opt/bitwarden/bwdata/mssql/data Creating network "docker_default" with the default driver Creating network "docker_public" with the default driver Creating bitwarden-notifications ... done Creating bitwarden-events ... done Creating bitwarden-icons ... done Creating bitwarden-mssql ... done Creating bitwarden-attachments ... done Creating bitwarden-web ... done Creating bitwarden-sso ... done Creating bitwarden-identity ... done Creating bitwarden-api ... done Creating bitwarden-admin ... done Creating bitwarden-nginx ... done 2022.8.4: Pulling from bitwarden/setup Digest: sha256:257317606bad7b6c06755c81e4f61099b4af8b89829d7a9a2688545b92daa45f Status: Image is up to date for bitwarden/setup:2022.8.4 docker.io/bitwarden/setup:2022.8.4 Bitwarden is up and running! =================================================== visit http://bitwarden.example.com to update, run `./bitwarden.sh updateself` and then `./bitwarden.sh update`
Puedes verificar todas las imágenes docker descargadas utilizando el siguiente comando:
sudo docker images
Obtendrás la siguiente salida:
REPOSITORY TAG IMAGE ID CREATED SIZE bitwarden/mssql 2022.8.4 0fde97fd6c2b 11 days ago 1.4GB bitwarden/setup 2022.8.4 c3f86466c311 11 days ago 271MB bitwarden/notifications 2022.8.4 ad800e29d1bf 11 days ago 286MB bitwarden/identity 2022.8.4 39342ec67118 11 days ago 284MB bitwarden/nginx 2022.8.4 a9e4cdb98e3d 11 days ago 144MB bitwarden/icons 2022.8.4 e52e97fcc4c1 11 days ago 285MB bitwarden/admin 2022.8.4 25fe354a8fa2 11 days ago 346MB bitwarden/sso 2022.8.4 345ee4d3d544 11 days ago 289MB bitwarden/events 2022.8.4 012f3c8dc079 11 days ago 284MB bitwarden/api 2022.8.4 f780a0e0bfbf 11 days ago 289MB bitwarden/attachments 2022.8.4 8b08874c96fc 11 days ago 214MB bitwarden/web 2022.8.1 1ac4e585d2dd 2 weeks ago 247MB
Para comprobar todos los contenedores en ejecución, ejecuta el siguiente comando:
sudo docker ps
Deberías ver la siguiente salida:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 9af240bb8845 bitwarden/nginx:2022.8.4 "/entrypoint.sh" 33 seconds ago Up 28 seconds (health: starting) 80/tcp, 0.0.0.0:80->8080/tcp, :::80->8080/tcp, 0.0.0.0:443->8443/tcp, :::443->8443/tcp bitwarden-nginx 4758bb5d8c6c bitwarden/admin:2022.8.4 "/entrypoint.sh" 39 seconds ago Up 33 seconds (health: starting) 5000/tcp bitwarden-admin 2814dd1eddd2 bitwarden/identity:2022.8.4 "/entrypoint.sh" 45 seconds ago Up 35 seconds (healthy) 5000/tcp bitwarden-identity 22fa6c748d4f bitwarden/sso:2022.8.4 "/entrypoint.sh" 45 seconds ago Up 34 seconds (health: starting) 5000/tcp bitwarden-sso 9906ace7ea69 bitwarden/api:2022.8.4 "/entrypoint.sh" 45 seconds ago Up 34 seconds (healthy) 5000/tcp bitwarden-api 1d1f10c10667 bitwarden/mssql:2022.8.4 "/entrypoint.sh" 45 seconds ago Up 39 seconds (health: starting) bitwarden-mssql f7ab34d501cc bitwarden/attachments:2022.8.4 "/entrypoint.sh" 45 seconds ago Up 37 seconds (healthy) bitwarden-attachments 6646bf077ba8 bitwarden/web:2022.8.1 "/entrypoint.sh" 45 seconds ago Up 39 seconds (healthy) bitwarden-web e73076475cc7 bitwarden/icons:2022.8.4 "/entrypoint.sh" 45 seconds ago Up 35 seconds (health: starting) 5000/tcp bitwarden-icons 535f2f7599c1 bitwarden/events:2022.8.4 "/entrypoint.sh" 45 seconds ago Up 35 seconds (healthy) 5000/tcp bitwarden-events 7a489f258459 bitwarden/notifications:2022.8.4 "/entrypoint.sh" 45 seconds ago Up 34 seconds (healthy) 5000/tcp bitwarden-notifications
Accede a la interfaz web de Bitwarden
En este punto, el gestor de contraseñas Bitwarden está instalado y configurado. Ahora puedes acceder a su interfaz web utilizando la URL https://your-server-ip. Deberías ver la página de inicio de sesión de Bitwarden:
Haz clic en el botón Crear cuenta. Deberías ver la siguiente página:
Proporciona tu dirección de correo electrónico, tu contraseña maestra y haz clic en el botón Crear cuenta. Una vez creada la cuenta, serás redirigido a la página de inicio de sesión de Bitwarden:
Proporciona tu dirección de correo electrónico, tu contraseña y haz clic en el botón Iniciar sesión. Deberías ver el panel de control de Bitwarden en la siguiente página:
Enhorabuena! has instalado con éxito el Gestor de Contraseñas Bitwarden con Docker en Ubuntu 22.04.