Instalación en línea
Requisitos mínimos del sistema
Passwork no es exigente en cuanto a recursos del sistema, y el número de servidores necesarios depende de la cantidad de usuarios activos, el volumen de datos almacenados y los requisitos de tolerancia a fallos del sistema.
Consulte los requisitos completos del sistema.
Si el servidor tiene 2-4 GB de RAM, le recomendamos habilitar un archivo SWAP para la compilación correcta de todas las bibliotecas.
Actualización del sistema
- DEB
- RPM
sudo apt-get update
sudo yum update
Instalación de Docker
- Descargue e instale Docker versión 18.06.0 o superior. Guía oficial de instalación.
- Instale y habilite Docker Compose. Guía oficial de instalación.
Recomendamos utilizar Docker instalado no a través de Snap.
Instalación de Passwork
Para instalar Passwork, necesita obtener y ejecutar el script que instalará los componentes necesarios para el funcionamiento de los scripts.
Cree un directorio y acceda a él:
- shell
mkdir your_directory
cd your_directory
Copie el script de instalación:
- shell
wget https://repos.passwork.pro/repository/docker/passwork_compose_install.sh
Verificación de autenticidad del script de instalación
Compruebe el hash del archivo passwork_compose_install.sh para verificar su autenticidad:
- shell
echo "84a13ba01703bfc2206e07491277f29d377ecc85e116be57d93be153593cd7ff passwork_compose_install.sh" | sha256sum --check
El sistema debería mostrar el mensaje passwork_compose_install.sh: OK
Verificación de permisos de usuario y ejecución del script
Si la instalación no se realiza como root, asegúrese de que el usuario sea miembro del grupo docker.
Puede verificarlo de la siguiente manera:
- shell
id $USER | grep docker
Agregue el usuario al grupo docker de la siguiente manera:
- shell
sudo usermod -a -G docker $USER
Otorgue permisos de ejecución al script y ejecútelo:
- shell
chmod +x passwork_compose_install.sh
./passwork_compose_install.sh
El script utiliza apt o dnf, así como curl. Si su red usa un servidor proxy, necesita agregar variables de entorno:
export http_proxy=http://proxy.example.com:8080
export https_proxy=http://proxy.example.com:8080
Acciones realizadas por el script
- Verificación de Docker instalado
- Verificación de la versión de Docker (superior a 18.06.0)
- Verificación de que Docker está en ejecución
- Verificación de la membresía del usuario en el grupo docker o derechos sudo
- Verificación de que el plugin Docker Compose está instalado y habilitado
- Verificación de si el sistema pertenece a una distribución deb o rpm
- Instalación de utilidades adicionales para el correcto funcionamiento del script:
curl,unzipyjq - Solicitud de entrada del certificado de cliente de Passwork
- Verificación del cumplimiento del formato del certificado
- Validación del certificado
- Descarga y descompresión del archivo con archivos de compilación docker-compose
- Verificación del archivo de variables de entorno y adición del número de certificado
- Ejecución del script de actualización del código de Passwork
- Verificación del archivo con firma digital
- Ejecución de
docker compose up -d
Proceso de ejecución del script de instalación
El script verificará los permisos del usuario actual y las versiones de los componentes necesarios. En caso de errores, el script creará un registro en formato install_log_date.log y colocará los errores allí:

Durante la ejecución, el script solicitará una clave API del Portal de cliente:

Después de que el script finalice
El script ejecutará automáticamente docker ps. Verifique la lista de contenedores en ejecución. Si los contenedores no se iniciaron, compruebe el resultado de la instalación y el registro. Ejemplo de un resultado correcto:

Antes de configurar el servidor web con la terminación SSL habilitada, consulte las especificaciones de configuración.
Asistente de instalación
Después de compilar e iniciar los contenedores, Passwork estará disponible en el enlace https://your_servername.
De forma predeterminada, Passwork utiliza un certificado autofirmado que se genera automáticamente durante la instalación, por lo que al abrir la página por primera vez, verá un mensaje indicando que el navegador no confía en el certificado del sitio.
Selección de idioma
En el primer paso, el sistema le solicitará seleccionar el idioma de la interfaz:

Lista de verificación de configuración del servidor
La lista de verificación mostrará si todos los componentes están instalados en su servidor:

Conexión a la base de datos
Utilice la dirección predeterminada de MongoDB para la conexión:

Modo Zero Knowledge
El cifrado del lado del cliente agrega una segunda capa de protección de datos e implementa el modelo Zero Knowledge. Esto garantiza la máxima seguridad al almacenar Passwork.
El modo de cifrado del lado del cliente es fundamental; no se puede habilitar ni deshabilitar en un Passwork que ya esté en funcionamiento (esto resultará en la imposibilidad de abrir los datos).
Obtenga más información sobre cómo funciona el cifrado del lado del cliente — criptografía

Configuración de Passwork
Passwork generará una nueva clave para el cifrado del servidor. Si está conectando Passwork a una base de datos existente, especifique la clave de cifrado existente:
No introduzca una clave generada fuera de Passwork. El uso de claves generadas por herramientas de terceros puede causar errores.

Clave de licencia
Las claves de licencia se pueden descargar desde su Portal de cliente de Passwork:

Configuración del certificado SSL
Durante la instalación, Passwork genera un certificado autofirmado. Una vez completada la instalación, puede utilizar certificados SSL completos.
Uso de su propio certificado
- Para certificados emitidos por un emisor de confianza;
- Para certificados emitidos por los centros de certificación de dominio de su organización.
Renombre y coloque su certificado SSL o cadena de certificación en ./conf/ssl
- privkey.pem — clave privada
- fullchain.pem — certificado\cadena de certificación
Uso de Let's Encrypt
Puede configurar Let's Encrypt si no dispone de un centro de certificación de dominio (un certificado emitido por un centro de confianza) pero tiene un nombre DNS público para su servidor.
Edite el archivo .env, modificando y agregando los siguientes parámetros:
USE_LETSENCRYPT=true
[email protected]
DOMAIN=example.com
COMPOSE_PROFILES="local_notify,mongo,certbot"
Guarde los cambios e inicie el contenedor:
- shell
docker compose up -d certbot
Compruebe los registros del contenedor para la emisión del certificado:
- shell
docker compose logs certbot
Ejemplo del proceso de emisión del certificado:

Recree los contenedores para actualizar los datos utilizando los nuevos certificados:
- shell
docker compose up -d --force-recreate nginx certbot
Como resultado, Passwork estará disponible a través del protocolo HTTPS utilizando un certificado de Let's Encrypt.