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.

instalar deps

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.

comprobar apache

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.

comprobar mariadb

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;

crear base de datos

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:

comprobar usuario

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

comprobar entorno

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.

comprueba la versión de pydio

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.

configuración de pydio

Una vez finalizada la instalación, verás el mensaje Installation finished.

celdas pydio instaladas

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

celdas como servicio systemd

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

activar módulos

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

configurar apache

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.

inicio de sesión

Verás el panel de control de Pydio Cells como el siguiente:

salpicadero

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.

También te podría gustar...