Self-hostingInstalar & Desplegar Guías

Despliegue Manual de Linux

Este artículo le guiará a través del procedimiento para instalar y desplegar manualmente Bitwarden en su propio servidor. Por favor revise la documentación de soporte para la liberación de software de Bitwarden.

advertencia

Las instalaciones manuales solo deben ser realizadas por usuarios avanzados. Solo proceda si está muy familiarizado con las tecnologías de Docker y desea tener más control sobre su instalación de Bitwarden.

Las instalaciones manuales carecen de la capacidad de actualizar automáticamente ciertas dependencias de la instalación de Bitwarden. A medida que mejora de una versión de Bitwarden a la siguiente, será responsable de los cambios en las variables de entorno requeridas, los cambios en nginx default.conf, los cambios en docker-compose.yml, y así sucesivamente.

Intentaremos resaltar estos en las notas de la versión en GitHub. También puedes monitorear los cambios en las plantillas de dependencia utilizadas por el script de instalación de Bitwarden en GitHub.

Requisitos

Antes de proceder con la instalación, asegúrese de que Docker Engine y Docker Compose estén instalados y listos para usar en su servidor y que su máquina cumpla con las especificaciones de sistema requeridas.

Si está construyendo sus propias imágenes de Bitwarden, se requieren imágenes oficiales de .NET Core Runtime (descargar desde DockerHub) de la misma versión de lanzamiento principal que las imágenes de Bitwarden.

Especificaciones del sistema

Mínimo

Recomendado

Procesador

x64, 1.4GHz

x64, 2GHz de doble núcleo

Memoria

2GB de RAM

4GB RAM

Almacenamiento

12GB

25GB

Versión de Docker

Motor 19+ y Componer 1.24+

Motor 19+ y Componer 1.24+

Procedimiento de instalación

Crear usuario local y directorio de Bitwarden

Recomendamos configurar su servidor con una cuenta de servicio dedicada de Bitwarden desde la cual instalar y ejecutar Bitwarden. Hacerlo aislará tu instancia de Bitwarden de otras aplicaciones que se ejecutan en tu servidor.

Estos pasos son las mejores prácticas recomendadas por Bitwarden, pero no son obligatorios. Para obtener más información, consulte la documentación de Docker sobre los pasos posteriores a la instalación para Linux.

  1. Crea un usuario de Bitwarden:

    Bash
    sudo adduser bitwarden
  2. Establece una contraseña para el usuario de Bitwarden:

    Bash
    sudo passwd bitwarden
  3. Crea un grupo de docker (si no existe ya):

    Bash
    sudo groupadd docker
  4. Agrega el usuario de Bitwarden al grupo docker:

    Bash
    sudo usermod -aG docker bitwarden
  5. Crea un directorio de Bitwarden:

    Bash
    sudo mkdir /opt/bitwarden
  6. Establezca permisos para el directorio /opt/Bitwarden:

    Bash
    sudo chmod -R 700 /opt/bitwarden
  7. Establezca la propiedad del usuario de Bitwarden del directorio /opt/bitwarden:

    Bash
    sudo chown -R bitwarden:bitwarden /opt/bitwarden

Descargar y configurar

advertencia

Si has creado un usuario y directorio de Bitwarden, completa lo siguiente como el usuario bitwarden desde el directorio /opt/bitwarden. No instale Bitwarden como root , ya que encontrará problemas durante la instalación.

Para descargar Bitwarden y configurar los activos del servidor Bitwarden:

  1. Descarga una versión simulada de las dependencias de Bitwarden (docker-stub.zip) desde las páginas de lanzamientos en GitHub. Por ejemplo:

    Bash
    curl -L https://github.com/bitwarden/server/releases/download/v<version_number>/docker-stub-US.zip \ -o docker-stub-US.zip
  2. Crea un nuevo directorio llamado bwdata y extrae docker-stub.zip en él, por ejemplo:

    Bash
    unzip docker-stub-US.zip -d bwdata

    Una vez descomprimido, el directorio bwdata coincidirá con lo que el archivo docker-compose.yml espera en su mapeo de volumen. Puede, si lo desea, cambiar la ubicación de estas asignaciones en la máquina anfitriona.

  3. En ./bwdata/env/global.override.env, editar las siguientes variables de entorno:

    • globalSettings__baseServiceUri__vault=: Ingresa el dominio de tu instancia de Bitwarden.

    • globalSettings__sqlServer__ConnectionString=: Reemplace la CONTRASEÑA_ALEATORIA_DE_BASE_DE_DATOS con una contraseña segura para usar en un paso posterior.

    • globalSettings__identityServer__certificatePassword: Establezca una contraseña de certificado segura para usar en un paso posterior.

    • globalSettings__internalIdentityKey=: Reemplace RANDOM_IDENTITY_KEY con una cadena de clave aleatoria.

    • globalSettings__oidcIdentityClientKey=: Reemplace RANDOM_IDENTITY_KEY con una cadena de clave aleatoria.

    • globalSettings__duo__aKey=: Reemplace RANDOM_DUO_AKEY con una cadena de clave aleatoria.

    • globalSettings__installation__id=: Ingresa un id de instalación obtenido de https://bitwarden.com/host.

    • globalSettings__installation__key=: Ingresa una clave de instalación obtenida de https://bitwarden.com/host.

      consejo

      En este momento, considere también establecer valores para todas las variables globalSettings__mail__smtp__ y para adminSettings__admins. Hacerlo configurará el servidor de correo SMTP utilizado para enviar invitaciones a nuevos miembros de la organización y proporcionar acceso al Portal del Administrador del Sistema.

      Obtenga más información sobre las variables de entorno .

  4. Desde ./bwdata, genera un archivo de certificado .pfx para el contenedor de identidad y muévelo al directorio de volumen mapeado (por defecto, ./bwdata/identity/). Por ejemplo, ejecuta los siguientes comandos:

    Bash
    openssl req -x509 -newkey rsa:4096 -sha256 -nodes -keyout identity.key -out identity.crt -subj "/CN=Bitwarden IdentityServer" -days 10950

    y

    Bash
    openssl pkcs12 -export -out ./identity/identity.pfx -inkey identity.key -in identity.crt -passout pass:IDENTITY_CERT_PASSWORD

    En el comando anterior, reemplace IDENTITY_CERT_PASSWORD con la contraseña del certificado creada y utilizada en Paso 3.

  5. Copia identity.pfx al directorio ./bwdata/ssl.

  6. Crea un subdirectorio en ./bwdata/ssl con el nombre de tu dominio, por ejemplo:

    Bash
    mkdir ./ssl/bitwarden.example.com

  7. Proporcione un certificado SSL confiable y una clave privada en el subdirectorio recién creado ./bwdata/ssl/bitwarden.example.com.

    nota

    Este directorio está mapeado al contenedor NGINX en /etc/ssl. Si no puedes proporcionar un certificado SSL de confianza, adelanta la instalación con un proxy que proporciona un punto final HTTPS a las aplicaciones cliente de Bitwarden.

  8. En ./bwdata/nginx/default.conf:

    1. Reemplace todas las instancias de bitwarden.example.com con su dominio, incluyendo en el encabezado de la Política-de-Seguridad-de-Contenido.

    2. Establezca las variables ssl_certificate y ssl_certificate_key a las rutas del certificado y la clave privada proporcionadas en el Paso 7.

    3. Realice una de las siguientes acciones, dependiendo de la configuración de su certificado:

      • Si utiliza un certificado SSL de confianza, establezca la variable ssl_trusted_certificate en la ruta a su certificado.

      • Si utiliza un certificado autofirmado, comente la variable ssl_trusted_certificate.

  9. En ./bwdata/env/mssql.override.env, reemplace RANDOM_DATABASE_PASSWORD con la contraseña creada en Paso 3.

  10. En ./bwdata/web/app-id.json, reemplace bitwarden.example.com con su dominio.

  11. En ./bwdata/env/uid.env, establece el UID y GID de los usuarios de Bitwarden y el grupo que creaste anteriormente para que los contenedores se ejecuten bajo ellos, por ejemplo:

    Bash
    LOCAL_UID=1001 LOCAL_GID=1001

Inicia tu servidor

Inicie su servidor Bitwarden con el siguiente comando:

Bash
docker compose -f ./docker/docker-compose.yml up -d

Verifique que todos los contenedores estén funcionando correctamente.

Bash
docker ps
docker-saludable.png
docker-saludable.png

¡Felicidades! Bitwarden ahora está en funcionamiento en https://your.domain.com. Visita la caja fuerte web en tu navegador para confirmar que está funcionando.

Ahora puedes registrar una nueva cuenta e iniciar sesión. Necesitará tener configuradas las variables de entorno SMPT (ver Variables de Entorno) para verificar el correo electrónico de su nueva cuenta.

Próximos Pasos:

Actualiza tu servidor

Actualizar un servidor autoalojado que ha sido instalado y desplegado manualmente es diferente del procedimiento de actualización estándar. Para actualizar tu servidor instalado manualmente:

  1. Descarga el último archivo docker-stub.zip de la página de lanzamientos en GitHub.

  2. Descomprime el nuevo archivo docker-stub.zip y compara su contenido con lo que actualmente está en tu directorio bwdata, copiando cualquier cosa nueva a los archivos preexistentes en bwdata.
    No sobrescriba su directorio bwdata preexistente con el contenido del archivo más reciente docker-stub.zip, ya que esto sobrescribiría cualquier trabajo de configuración personalizado que haya realizado.

  3. Ejecuta el siguiente comando para reiniciar tu servidor con tu configuración actualizada y los contenedores más recientes:

    Bash
    docker compose -f ./docker/docker-compose.yml down && docker compose -f ./docker/docker-compose.yml up -d

Sugerir cambios en esta página

¿Cómo podemos mejorar esta página para usted?
Si tiene preguntas técnicas, sobre facturación o sobre el producto, póngase en contacto con el servicio de asistencia.

Estado de la nube

Comprobar estado

Mejora tus conocimientos de ciberseguridad.

Suscríbete al boletín informativo.


© 2024 Bitwarden, Inc. Términos Privacidad Ajustes de Cookies Mapa del sitio

Go to EnglishStay Here