Cómo instalar Pydio Cells en un servidor Ubuntu 24.04
Pydio Cells es una plataforma de colaboración y compartición de documentos autoalojada. También te da el control total de tu entorno de intercambio de documentos. Las Pydio Cells tienen un rendimiento rápido, manejan enormes tamaños de transferencia de archivos y proporcionan una automatización avanzada del flujo de trabajo.
En esta guía, te guiaremos a través de la instalación de las Células Pydio en el servidor Ubuntu 24.04 con la base de datos MariaDB y Apache como proxy inverso.
Requisitos previos
Antes de empezar, asegúrate de que tienes lo siguiente:
- Un servidor Ubuntu 24.04.
- Un usuario no root con privilegios de administrador.
- Un nombre de dominio apuntando a una dirección IP del servidor.
Instalación de dependencias
Antes de instalar Pydio Cells, debes instalar las dependencias en tu sistema Ubuntu. Esto incluye el servidor de base de datos MariaDB y el servidor web Apache.
En primer lugar, ejecuta el siguiente comando apt
para actualizar el índice de paquetes de Ubuntu e instalar las dependencias para Pydio Cells. Con este comando, instalarás el servidor web Apache, el servidor de bases de datos MariaDB y Certbot para generar certificados SSL/TLS.
sudo apt update sudo apt install apache2 mariadb-server certbot python3-certbot-apache wget
Introduce Y
para confirmar la instalación.
Una vez finalizada la instalación, comprueba el estado del servicio Apache con lo siguiente:
sudo systemctl is-enabled apache2 sudo
systemctl status apache2
A continuación puedes ver que el servidor web Apache está habilitado y funcionando.
Ahora comprueba el estado del servidor MariaDB con el siguiente comando.
sudo systemctl is-enabled mariadb
sudo systemctl status mariadb
A continuación el servidor MariaDB está funcionando y habilitado.
Configurar el servidor MariaDB
Tras instalar el servidor MariaDB, asegurarás MariaDB con la utilidad mariadb-secure-installation
. A continuación, crearás una nueva base de datos y un nuevo usuario para Pydio Cells.
Para asegurar la instalación del servidor MariaDB, ejecuta el siguiente comando mariadb-secure-installation
.
sudo mariadb-instalación-segura
A continuación se te preguntará por la configuración del servidor MariaDB:
- ¿Cambiar la autenticación local a unix_socket? Introduce n.
- Configura la nueva contraseña de root de MariaDB. Introduce y para confirmar y, a continuación, escribe la nueva contraseña para la instalación de tu servidor MariaDB.
- ¿Eliminar el usuario anónimo? Introduce y para confirmar.
- ¿Eliminar la prueba de base de datos por defecto del despliegue?. Introduce y para confirmar.
- ¿Deshabilitar el inicio de sesión root de MariaDB desde conexiones remotas? Introduce y para confirmar.
- ¿Recargar los privilegios de tabla y aplicar los cambios? Introduce y y pulsa ENTER.
Ahora ejecuta el siguiente comando de cliente mariadb
para iniciar sesión en el servidor MariaDB. Introduce tu contraseña de root cuando se te solicite.
sudo mariadb -u root -p
A continuación, ejecuta las siguientes consultas para crear una nueva base de datos cellsdb
, un usuario cells
, y la contraseña p4ssword
. Asegúrate de cambiar los datos siguientes con tu información.
CREATE DATABASE cellsdb;
CREATE USER cells@localhost IDENTIFIED BY ‘cellsp4ssword’;
GRANT ALL PRIVILEGES ON cellsdb.* TO cells@localhost;
FLUSH PRIVILEGES;
Ahora ejecuta la siguiente consulta para asegurarte de que el usuario cells@localhost
puede acceder a la base de datos cellsdb
.
SHOW GRANTS PARA cells@localhost;
Deberías ver una salida similar a la siguiente:
Escribe quit
para salir del servidor MariaDB.
Instalación de Pydio Cells
En esta sección, crearás un nuevo usuario pydio
, configurarás las variables de entorno y, a continuación, descargarás e instalarás Pydio Cells.
Añade un nuevo usuario pydio
con el siguiente comando:
sudo useradd -m -s /bin/bash pydio
A continuación, ejecuta el siguiente comando para crear un nuevo directorio /opt/pydio/bin
y /var/cells
, y cambia la propiedad al usuario pydio
.
sudo mkdir -p /opt/pydio/bin /var/cells
sudo chown -R pydio: /opt/pydio/bin /var/cells
Ahora ejecuta el siguiente comando para crear el archivo env /etc/profile.d/cells-env.sh
y convertirlo en ejecutable. Este archivo se ejecutará cuando el usuario inicie sesión.
sudo tee -a /etc/profile.d/cells-env.sh << EOF
export CELLS_WORKING_DIR=/var/cells
export CELLS_BIND=127.0.0.1:8080
export CELLS_EXTERNAL=https://cells.hwdomain.io
EOF
sudo chmod 0755 /etc/profile.d/cells-env.sh
A continuación, inicia sesión como usuario pydio
y comprueba las variables de entorno $CELLS_WORKING_DIR
, $CELLS_BIND
, y $CELLS_EXTERNAL
. Asegúrate de que cada una apunta al valor correcto como en el archivo /etc/profile.d/cells-env.sh
.
su – pydio
echo $CELLS_WORKING_DIR
echo $CELLS_BIND
echo $CELLS_EXTERNAL
Ahora ejecuta el siguiente comando para descargar el archivo binario de Pydio en /opt/pydio/bin/cells
.
export distribId=células
wget -O /opt/pydio/bin/células https://download.pydio.com/latest/
Haz ejecutable el archivo /opt/pydio/bin/cells
y sal del usuario actual pydio
.
chmod a+x /opt/pydio/bin/cells exit
Después, ejecuta el siguiente comando setcap
para permitir que Pydio utilice los puertos de privilegios (0-1024) y crea un enlace simbólico a /usr/local/bin/cells
.
sudo setcap ‘cap_net_bind_service=+ep’ /opt/pydio/bin/cells
sudo ln -s /opt/pydio/bin/cells /usr/local/bin/cells
Conéctate de nuevo como usuario de pydio
y ejecuta el siguiente comando cells
para comprobar la versión de Pydio Cells.
su – pydio
versión de cells
Como puedes ver a continuación, Pydio Cells 4.4.3 está instalado.
Configurar Pydio Cells
Ahora que has descargado Pydio Cells, deberás configurarlo e integrarlo con el servidor de bases de datos MariaDB y crear un usuario administrador para la instalación de Pydio Cells. Esto se puede hacer a través de la línea de comandos cells
.
Ejecuta el siguiente comando cells
para instalar y configurar la instalación de Pydio Cells.
cells configure –cli
- Selecciona TCP para la conexión a la base de datos e introduce tu base de datos MariaDB, usuario y contraseña.
- Introduce
N
para el soporte de MongoDB. En este caso, construirás e instalarás una única Pydio Cells. - Pulsa ENTER para utilizar la configuración de almacenamiento por defecto.
- Introduce un nuevo usuario administrador, una dirección de correo electrónico y una contraseña para tu instalación de Pydio Cells.
Una vez finalizada la instalación, verás el mensaje Installation finished
.
Ejecutar Pydio Cells como un servicio systemd
En esta sección, crearás y configurarás un archivo de servicio systemd para Pydio Cells. Con esto, podrás gestionar fácilmente Pydio Cells con el comando systemctl
.
Crea un nuevo archivo de servicio /etc/systemd/system/cells.service
con el editor nano
.
sudo nano /etc/systemd/system/cells.service
Añade la siguiente configuración al archivo y asegúrate de cambiar la variable de entorno CELLS_EXTERNAL
por el nombre de tu dominio de destino.
[Unit]
Description=Pydio Cells
Documentation=https://pydio.com
Wants=network-online.target
After=network-online.target
AssertFileIsExecutable=/opt/pydio/bin/cells
[Service]
User=pydio
Group=pydio
PermissionsStartOnly=true
AmbientCapabilities=CAP_NET_BIND_SERVICE
ExecStart=/opt/pydio/bin/cells start
Restart=on-failure
StandardOutput=journal
StandardError=inherit
LimitNOFILE=65536
TimeoutStopSec=5
KillSignal=INT
SendSIGKILL=yes
SuccessExitStatus=0
WorkingDirectory=/home/pydio
# Add environment variables
Environment=CELLS_WORKING_DIR=/var/cells
Environment=CELLS_BIND=127.0.0.1:8080
Environment=CELLS_EXTERNAL=https://cells.hwdomain.io
[Install]
WantedBy=multi-user.target
Guarda el archivo y sal del editor.
Ahora ejecuta el siguiente comando systemctl
para recargar el gestor systemd y aplicar tus cambios.
sudo systemctl daemon-reload
Inicia y activa el servicio cells
con el siguiente comando. A continuación, comprueba el estado de cells
para asegurarte de que el servicio se está ejecutando.
sudo systemctl enable –ahora celdas
sudo systemctl status celdas
Configurar Apache como proxy inverso
Después de que Pydio Cells se ejecute como un servicio systemd, crearás un nuevo archivo de host virtual de Apache como proxy inverso para Pydio Cells. También tendrás que habilitar los módulos de Apache con el comando a2enmod
.
En primer lugar, ejecuta el siguiente comando a2enmod
para habilitar los módulos de Apache. En este caso, habilitarás los módulos para SSL y el proxy inverso.
sudo a2enmod rewrite ssl proxy proxy_http proxy_wstunnel http2 proxy_http2
Ahora crea un nuevo archivo de host virtual /etc/apache2/sites-available/cells.conf
con el siguiente comando nano
.
sudo nano /etc/apache2/sitios-disponibles/cells.conf
Introduce la siguiente configuración para configurar Apache como proxy inverso para Pydio Cells. Asegúrate de cambiar la opción ServerName
por tu nombre de dominio de destino.
<VirtualHost *:80>
ServerName cells.hwdomain.io
AllowEncodedSlashes On
RewriteEngine On
# be aware of this
# Allow reverse proxy via self-signed certificates
SSLProxyEngine On
SSLProxyVerify none
SSLProxyCheckPeerCN off
SSLProxyCheckPeerName off
SSLProxyCheckPeerExpire off
## The order of the directives matters.
# If Cells is not running with https, consider using ws instead of wss
ProxyPassMatch "/ws/(.*)" wss://localhost:8080/ws/$1 nocanon
## This rewrite condition is required if using Cells-Sync
# RewriteCond %{HTTP:Content-Type} =application/grpc [NC]
# RewriteRule /(.*) h2://localhost:8080/$1 [P,L]
ProxyPass "/" "https://127.0.0.1:8080/"
ProxyPassReverse "/" "https://127.0.0.1:8080/"
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Guarda y sal del archivo cuando hayas terminado.
A continuación, ejecuta el siguiente comando a2ensite
para activar el host virtual cells.conf
y verificar la configuración de Apache. Si la configuración de Apache es correcta, verás una salida Syntax is OK
.
sudo a2ensite cells.conf
sudo apachectl configtest
Por último, ejecuta el siguiente comando systemctl
para reiniciar el servidor web Apache y aplicar tus cambios.
sudo systemctl restart apache2
Proteger Pydio Cells con HTTPS
Pydio Cells es accesible a través de HTTPS. Así que debes habilitar HTTPS en tu archivo de host virtual de Apache. En esta sección, generarás certificados SSL/TLS con certbot
para asegurar la instalación de Pydio Cells.
Para asegurar Pydio Cells con HTTPS, ejecuta el comando certbot
que aparece a continuación. asegúrate de cambiar el nombre de dominio y la dirección de correo electrónico que aparecen a continuación con tu información.
sudo certbot –apache –agree-tos –redirect –hsts –staple-ocsp –email [email protected] -d cells.hwdomain.io
Una vez finalizado el proceso, tus certificados SSL/TLS estarán disponibles en el directorio /etc/letsencrypt/live/domain.com
.
Ahora abre tu navegador web y visita tu dominio https://cells.hwdomain.io/. Si la instalación se ha realizado correctamente, aparecerá la página de inicio de sesión de Pydio Cells.
Introduce tu usuario y contraseña de administrador, y pulsa INTRO.
Verás el panel de control de Pydio Cells como el siguiente:
Conclusión
¡Enhorabuena! Has completado la instalación de Pydio Cells en el servidor Ubuntu 24.04. Ya tienes Pydio Cells funcionando con el servidor de base de datos MariaDB y Apache como proxy inverso. Por último, también has asegurado Pydio Cells con HTTPS a través de Certbot y Letsencrypt.