Cómo instalar Pydio Cells en AlmaLinux 9

Pydio Cells es una plataforma de colaboración e intercambio de documentos de código abierto para tu organización. Te permite compartir documentos y archivos en toda tu organización y te da el control total de tu entorno de intercambio de documentos.

Las Células Pydio tienen un rendimiento rápido, pueden gestionar transferencias de archivos de gran tamaño y proporcionan una automatización avanzada del flujo de trabajo.

En esta guía, te mostraremos cómo instalar las Células Pydio en un servidor Alma Linux 9. Instalarás las Células Pydio con el servidor de base de datos MariaDB y el servidor web Httpd.

Requisitos previos

Para empezar con esta guía, asegúrate de que tienes lo siguiente:

  • Un servidor Alma Linux 9
  • Un usuario no root con privilegios de administrador
  • Un nombre de dominio apuntando a la dirección IP del servidor
  • Un SELinux con el estado activado y permisivo

Instalación de dependencias

Antes de instalar Pydio Cells, necesitas instalar dependencias en tu servidor Alma Linux. Esto incluye el repositorio EPEL, el servidor de bases de datos MariaDB, el servidor web Httpd y algunas herramientas del sistema como wget y nano.

En primer lugar, ejecuta el comando‘dnf‘ que aparece a continuación para añadir el repositorio EPEL, e instalar el servidor MariDB y el servidor web Httpd. Introduce‘Y’ para confirmar la instalación.

sudo dnf install epel-release mariadb-server httpd wget nano

instalar deps

Una vez completada la instalación, ejecuta el siguiente comando«systemctl» para iniciar, activar y verificar el servicio«httpd«. Verás que el servicio«httpd» se está ejecutando y está habilitado.

sudo systemctl enable --now httpd
sudo systemctl status httpd

comprobar httpd

Ahora ejecuta el siguiente comando para iniciar y habilitar el servicio«mariadb«. Y luego, verifícalo para asegurarte de que el servicio se está ejecutando.

sudo systemctl enable --now mariadb
sudo systemctl status mariadb

En la siguiente salida, puedes ver que el servidor MariaDB se está ejecutando y está habilitado.

comprobar mariadb

Por último, ejecuta el siguiente comando‘firewall-cmd‘ para abrir los puertos‘http‘ y‘https’ de tu sistema. A continuación, recarga las reglas del cortafuegos para aplicar los cambios.

sudo firewall-cmd --add-service={http,https} --permanent
sudo firewall-cmd --reload

Configurar el servidor MariaDB

Después de haber instalado las dependencias, necesitas asegurar la instalación del servidor MariaDB y crear una nueva base de datos y un nuevo usuario para la instalación del servidor Pydio Cells. Asegurarás MariaDB con el comando‘mariadb-secure-installation‘, y luego crearás una base de datos y un usuario nuevos a través del cliente‘mariadb‘.

Para asegurar la instalación del servidor MariaDB, ejecuta el comando‘mariadb-secure-installation‘ que aparece a continuación.

sudo mariadb-secure-installation

Durante el proceso, se te preguntará por las siguientes configuraciones:

  • ¿Cambiar la autenticación local a unix_socket? Introduce n.
  • Configurar 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 privilegios de tabla y aplicar los cambios. Introduce y y pulsa ENTER.

Ahora que el servidor MariaDB está protegido, crearás una nueva base de datos y un nuevo usuario para la instalación de Pydio Cells.

Accede al servidor MariaDB con el siguiente comando‘mariadb‘. Introduce tu contraseña de root de MariaDB cuando te lo pida.

sudo mariadb -u root -p

Ejecuta las siguientes consultas para crear una nueva base de datos‘cells‘, y un nuevo usuario‘pydio‘, con la contraseña ‘p4ssw0rd’. Puedes ajustar los detalles de la base de datos según necesites.

CREATE DATABASE cells;
CREATE USER 'pydio'@'localhost' IDENTIFIED BY 'p4ssw0rd';
GRANT ALL PRIVILEGES ON cells.* to 'pydio'@'localhost';
FLUSH PRIVILEGES;

crear base de datos

Ahora comprueba los privilegios del usuario‘pydio‘ para asegurarte de que tiene permiso y privilegios para la base de datos‘celdas‘.

SHOW GRANTS FOR 'pydio'@'localhost';

Puedes ver a continuación que la base de datos‘celdas‘ es accesible a través del usuario‘pydio‘.

comprobar base de datos

Escribe ‘quit’ para salir del servidor MariaDB.

Descarga de celdas Pydio

Con la base de datos MariaDB configurada, estás listo para descargar Pydio Cells. En esta sección, configurarás el usuario ‘pydio’, descargarás las Células Pydio, configurarás el directorio de instalación y las variables de entorno, y permitirás que las Células Pydio se ejecuten en los puertos privilegiados.

Crea un nuevo usuario y grupo‘pydio‘ con el siguiente comando.

sudo useradd -m -s /bin/bash pydio

Crea nuevos directorios‘/opt/pydio/bin‘ y‘/var/cells‘ con el siguiente comando. Y luego cambia la propiedad de ambos directorios al usuario‘pydio‘.

sudo mkdir -p /opt/pydio/bin /var/cells
sudo chown -R pydio:pydio /opt/pydio/bin /var/cells

Ahora crea un nuevo archivo de entorno‘/etc/profile.d/cells-env.sh‘ con el editor‘nano‘.

sudo nano /etc/profile.d/cells-env.sh

Introduce el siguiente script para configurar las variables de entorno para Pydio Cells. Asegúrate de cambiar la dirección‘CELLS_EXTRERNAL‘ para que coincida con el nombre de dominio de tu instalación de Pydio.

export CELLS_WORKING_DIR=/var/cells
export CELLS_BIND=127.0.0.1:8080
export CELLS_EXTERNAL=https://cells.howtoforge.local

Cuando hayas terminado, guarda y sal del archivo.

Ahora ejecuta el siguiente comando para hacer ejecutable el archivo env‘/etc/profile.d/cells-env.sh‘.

sudo chmod +x /etc/profile.d/cells-env.sh

A continuación, ejecuta el siguiente comando para descargar el archivo binario Pydio Cells para Linux en el directorio‘/opt/pydio/bin/cells‘.

export distribId=cells
wget -O /opt/pydio/bin/cells https://download.pydio.com/latest/${distribId}/release/{latest}/linux-amd64/${distribId}

Una vez descargado, ejecuta el siguiente comando para hacer ejecutable el archivo binario‘cells‘ y permitir que se enlace en los puertos de privilegio.

sudo chmod a+x /opt/pydio/bin/cells
sudo setcap 'cap_net_bind_service=+ep' /opt/pydio/bin/cells
sudo ln -s /opt/pydio/bin/cells /usr/local/bin/cells

Ahora inicia sesión como usuario‘pydio‘ con lo siguiente:

su - pydio

Comprueba las variables de entorno para Pydio Cells con lo siguiente – Asegúrate de que la salida coincide dentro del archivo env‘/etc/profile.d/cells-env.sh‘.

echo $CELLS_WORKING_DIR
echo $CELLS_BIND
echo $CELLS_EXTERNAL

comprobar entorno

Por último, comprueba la versión ‘cells ‘ con el siguiente comando.

cells version

En la siguiente salida, puedes ver la versión de Pydio Cells.

comprobar versión de celdas

Instalar Pydio Cells a través de la línea de comandos

Ahora empezarás a instalar Pydio Cells desde la línea de comandos. Con el comando‘cells‘, configurarás la instalación de Pydio Cells con la base de datos MariaDB, configurarás el usuario y la contraseña de administrador, y configurarás la ubicación de almacenamiento para guardar los datos de usuario.

Para empezar, ejecuta el siguiente comando para configurar la instalación de Pydio Cells desde el terminal.

cells configure --cli

Ahora se te pedirán las siguientes configuraciones:

  • Conexión a la base de datos: selecciona vía TCP, e introduce los detalles del host, puerto, usuario y contraseña de tu base de datos MariaDB.
  • Configuración de MongoDB: Introduce n para no.
  • Configuración del usuario administrador: introduce tu usuario administrador y contraseña para Pydio Cells.
  • Ubicación de almacenamiento predeterminada: pulsa ENTER para utilizar la predeterminada y continuar.

Una vez completado el proceso, verás la siguiente salida:

instalación de celdas pydio

Configuración del archivo de servicio systemd para Pydio Cells

Desde el paso anterior, puedes iniciar las Células Pydio con el comando ‘cells start’. Para hacerlo más fácil, utilizarás en su lugar el ‘systemctl’ de systemd para gestionar el servicio Pydio Cells. Así que ahora crearás un nuevo archivo de servicio systemd.

Crea un nuevo archivo ‘/etc/systemd/system/cells.service’ con el editor ‘nano’.

sudo nano /etc/systemd/system/cells.service

Introduce la configuración que aparece a continuación para ejecutar Pydio Cells como un servicio systemd. Asegúrate de cambiar ‘CELLS_EXTERNAL’ por tu nombre de dominio.

[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.howtoforge.local

[Install]
WantedBy=multi-user.target

Guarda el archivo y sal del editor.

Ahora ejecuta el siguiente comando para recargar el gestor systemd.

sudo systemctl daemon-reload

Por último, ejecuta el siguiente comando«systemctl» para iniciar, habilitar y verificar el servicio«cells«.

sudo systemctl enable --now cells
sudo systemctl status cells

En esta salida, puedes ver que el servicio«cells» se está ejecutando en segundo plano como un servicio systemd.

servicio systemd

Configurar Httpd como proxy inverso

En este punto, las Células Pydio se están ejecutando en tu servidor Alma Linux en el puerto ‘8080’. Para hacerlo accesible desde el cliente, crearás un archivo de host virtual Httpd como proxy inverso al servidor de las Células Pydio. También generarás certificados SSL/TLS desde Letsencrypt para asegurar la transferencia de datos entre el cliente y el servidor Pydio Cells.

Primero, ejecuta el comando‘dnf‘ que aparece a continuación para instalar ‘certbot ‘ en tu sistema.

sudo dnf install certbot -y

Ahora crea un nuevo directorio raíz web ficticio y cambia la propiedad al usuario‘apache‘.

sudo mkdir -p /var/www/html/cells/public_html
sudo chown -R apache:apache /var/www/html/cells/public_html

Ejecuta el siguiente comando‘certbot‘ para generar certificados SSL/TLS para Pydio Cells. Asegúrate de cambiar la dirección de correo electrónico y el nombre de dominio con tu información.

sudo certbot certonly --agree-tos --email [email protected] --no-eff-email --webroot -w /var/www/html/cells/public_html -d cells.howtoforge.local

A continuación, crea una nueva configuración de host virtual Httpd‘/etc/httpd/conf.d/pydio.conf‘ con el editor‘nano‘.

sudo nano /etc/httpd/conf.d/pydio.conf

Introduce la configuración que aparece a continuación y asegúrate de cambiar la opción‘NombreServidor‘ con tu nombre de dominio.

<VirtualHost *:80>
ServerName cells.howtoforge.local
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

RewriteCond %{SERVER_NAME} =cells.howtoforge.local
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>

<VirtualHost *:443>
ServerName cells.howtoforge.local
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 /var/log/httpd/error.log
CustomLog /var/log/httpd/access.log combined

SSLCertificateFile /etc/letsencrypt/live/cells.howtoforge.local/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/cells.howtoforge.local/privkey.pem
#Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>

Guarda el archivo y sal del editor cuando hayas terminado.

Ahora ejecuta el comando‘apachectl‘ que aparece a continuación para verificar la sintaxis de tu Apache. Si la configuración de Apache es correcta, verás elmensaje «La sintaxis es correcta«.

sudo apachectl configtest

Por último, ejecuta el comando «systemctl» para reiniciar el servidor web«httpd» y aplicar los cambios. Con esto, tu instalación de Pydio Cells debería estar terminada y accesible.

sudo systemctl restart httpd

Configuración de httpd

Acceder a Pydio Cells

Abre tu navegador web y visita el nombre de dominio de tu instalación de Pydio Cells, como https://cells.howtoforge.local. Si la instalación se ha realizado correctamente, verás la página de inicio de sesión de Pydio Cells.

Introduce tu usuario y contraseña de administrador para iniciar sesión.

login pydio células

Si tienes las credenciales correctas, verás el panel de usuario de Pydio Cells como el siguiente.

tablero pydio

Desde aquí, ahora puedes intentar subir archivos desde tu ordenador local al servidor de Pydio Cells. En la siguiente captura de pantalla, he subido archivos a Pydio Cells y he tenido éxito.

pydio subir archivos

Conclusión

¡Enhorabuena! Has terminado la instalación de Pydio Cells en el servidor Alma Linux 9. Tienes las Células Pydio funcionando con el servidor de base de datos MariaDB y el servidor web Httpd. Además, también has asegurado la instalación de Pydio Cells con HTTPS a través de Certbot y Letsencrypt.

También te podría gustar...