Cómo instalar Pydio en Debian 11
Pydio es una aplicación gratuita, de código abierto y basada en la nube para compartir archivos. Está escrita en el lenguaje Golang y se utiliza para compartir archivos con el cliente. Te permite compartir y acceder a varios documentos como archivos, imágenes y vídeos desde cualquier lugar utilizando una aplicación móvil, un software de escritorio o un navegador web. Tiene clientes nativos para Linux, Windows y macOS, y clientes móviles para Android e iOS.
En este tutorial, te mostraré cómo instalar la aplicación Pydio en Debian 11.
Requisitos previos
- Un servidor que ejecute Debian 11.
- Una contraseña de root configurada en el servidor.
Instalar y configurar MariaDB
Pydio utiliza MariaDB como base de datos, por lo que debes instalar el servidor de base de datos MariaDB en tu servidor. Puedes instalarlo ejecutando el siguiente comando:
dnf install mariadb-server -y
Una vez instalado MariaDB, asegura la instalación de MariaDB mediante el siguiente comando:
mysql_secure_installation
Este script establecerá una contraseña de root, eliminará los usuarios anónimos, no permitirá el inicio de sesión de root de forma remota y eliminará la base de datos de prueba, como se muestra a continuación:
Set root password? [Y/n] n Remove anonymous users? [Y/n] y Disallow root login remotely? [Y/n] y Remove test database and access to it? [Y/n] y Reload privilege tables now? [Y/n] y
Una vez asegurada MariaDB, inicia sesión en el shell de MariaDB:
mysql -u root -p
Una vez que hayas iniciado sesión, crea una base de datos y un usuario con el siguiente comando:
CREATE DATABASE pydiodb; CREATE USER 'pydiodb'@'localhost' IDENTIFIED BY 'password';
A continuación, concede todos los privilegios al Pydio con el siguiente comando:
GRANT ALL PRIVILEGES ON pydiodb.* to 'pydiouser'@'localhost';
A continuación, vacía los privilegios y sal del intérprete de comandos MariaDB con el siguiente comando:
FLUSH PRIVILEGES; EXIT;
Instala las Células Pydio
Por defecto, el paquete Pydio no está incluido en el repositorio de Debian 11. Así que tendrás que descargarlo de su sitio web oficial.
Puedes descargar la última versión de Pydio cells utilizando el siguiente comando:
distribId=cells wget -O /usr/bin/cells https://download.pydio.com/latest/${distribId}/release/{latest}/linux-amd64/${distribId}
Una vez completada la descarga, establece el permiso de ejecutable en el archivo descargado y enlázalo al puerto HTTP utilizando el siguiente comando:
chmod +x /usr/bin/cells setcap 'cap_net_bind_service=+ep' /usr/bin/cells
A continuación, verifica la versión de Pydio cells utilizando el siguiente comando:
cells version
Obtendrás la siguiente salida:
Warning: no private IP detected for binding broker. Will bind to 209.23.9.181, which may give public access to the broker. Pydio Cells Home Edition Version: 3.0.6 Built: 22 Mar 22 06:06 +0su - pydio cells configure000 Git commit: 2165523347d2b9860d9c86236b7a518456d9cef3 OS/Arch: linux/amd64 Go version: go1.15.14
Configurar células Pydio
A continuación, tendrás que configurar las Células Pydio. Puedes configurarlo con el siguiente comando:
cells configure
Se te pedirá que elijas entre los modos de instalación basado en navegador y basado en línea de comandos.
Welcome to Pydio Cells Home Edition installation Pydio Cells Home Edition (v3.0.3) will be configured to run on this machine. Make sure to prepare access and credentials to a MySQL 5.6+ (or MariaDB equivalent) server. Pick your installation mode when you are ready.
Selecciona la instalación basada en navegador y pulsa la tecla Intro. Una vez configurado Pydio Cells, obtendrás la siguiente salida:
Use the arrow keys to navigate: ↓ ↑ → ← ? Installation mode: ? Browser-based (requires a browser access) Command line (performed in this terminal) ? Browser-based (requires a browser access) 2022-04-02T11:16:18.544Z INFO pydio.gateway.rest Started 2022-04-02T11:16:18.685Z INFO pydio.rest.install Started 2022-04-02T11:16:22.010Z INFO Installation Server is starting... Listening to: 0.0.0.0:8080 2022-04-02T11:16:22.366Z INFO ? Created a new local CA at "/root/.config/pydio/cells/certs/rootCA.pem" ???? 2022-04-02T11:16:22.366Z INFO ? Created a new certificate valid for the following names ???? - "127.0.0.1" - "209.23.9.181" - "localhost" 2022-04-02T11:16:22.366Z INFO ? The certificate is at "/root/.config/pydio/cells/certs/e6de382e6f121a9072d77b25ba622a36.pem" 2022-04-02T11:16:22.366Z INFO and the key at "/root/.config/pydio/cells/certs/e6de382e6f121a9072d77b25ba622a36-key.pem" 2022-04-02T11:16:22.366Z INFO 2022-04-02T11:16:22.366Z INFO ???? If you are behind a reverse proxy, you can either install the RootCA on the proxy machine trust store, or configure your proxy to `insecure_skip_verify` for pointing to Cells. 2022-04-02T11:16:22.367Z INFO ???? If you are developing locally, you may install the RootCA in your system trust store to see a green light in your browser! 2022-04-02T11:16:22.367Z INFO ???? To easily install the RootCA in your trust store, use https://github.com/FiloSottile/mkcert. Set the $CAROOT environment variable to the rootCA folder then use 'mkcert -install' 2022-04-02T11:16:22.367Z INFO 2022-04-02T11:16:22.367Z INFO Activating privacy features... done. 2022-04-02T11:16:22.367Z INFO https://0.0.0.0:8080 2022-04-02T11:16:22.367Z INFO WARNING: File descriptor limit 1024 is too low for production servers. At least 8192 is recommended. Fix with "ulimit -n 8192". 2022-04-02T11:16:24.365Z INFO pydio.gateway.proxy Restarting proxy {"caddyfile": "\n\n0.0.0.0:8080 {\n\troot \"/root/.config/pydio/cells/static/install\"\n\tproxy /install [::]:38327\n\n\t\n\ttls \"/root/.config/pydio/cells/certs/e6de382e6f121a9072d77b25ba622a36.pem\" \"/root/.config/pydio/cells/certs/e6de382e6f121a9072d77b25ba622a36-key.pem\"\n}\n\n\n\n\t "} 2022-04-02T11:16:24.868Z INFO pydio.gateway.proxy Restart done Opening URL https://0.0.0.0:8080 in your browser. Please copy/paste it if the browser is not on the same machine.
Acceder al Asistente de Instalación Web de Pydio Cells
En este punto, Pydio Cells se ha iniciado y está a la escucha en el puerto 8080. Puedes acceder a él utilizando la URL https://your-server-ip:8080. Deberías ver la página del acuerdo de Licencia de Pydio Cells:
Acepta el Contrato de Licencia y pulsa el botón SIGUIENTE. Deberías ver la página de configuración de la base de datos.
Proporciona la configuración de tu base de datos y pulsa el botón SIGUIENTE. Debes ver la página de creación del usuario administrador:
Proporciona tu nombre de usuario admin, tu contraseña y pulsa el botón SIGUIENTE. Deberías ver la siguiente página:
Ahora, haz clic en el botón INSTALAR AHORA. Deberías ver la página de inicio de sesión de Pydio Cells:
Proporciona tu nombre de usuario admin, contraseña, y haz clic en el botón ENTRAR. Deberías ver el panel de control de Pydio en la siguiente página:
Crear Fiel de Servicio Systemd para Pydio Cells
A continuación, tendrás que crear un archivo de servicio systemd para gestionar el servicio Pydio. Primero, pulsa CTRL+C para detener el servicio Pydio y luego crea un archivo de servicio systemd con el siguiente comando:
nano /etc/systemd/system/cells.service
Añade las siguientes líneas:
[Unit] Description=Pydio Cells Documentation=https://pydio.com Wants=network-online.target After=network-online.target AssertFileIsExecutable=/usr/bin/cells [Service] User=root Group=root PermissionsStartOnly=true AmbientCapabilities=CAP_NET_BIND_SERVICE ExecStart=/usr/bin/cells start Restart=on-failure StandardOutput=journal StandardError=inherit LimitNOFILE=65536 TimeoutStopSec=5 KillSignal=INT SendSIGKILL=yes SuccessExitStatus=0 WorkingDirectory=/root [Install] WantedBy=multi-user.target
Guarda y cierra el archivo y vuelve a cargar el demonio systemd para aplicar los cambios:
systemctl daemon-reload
A continuación, inicia y activa el servicio Pydio con el siguiente comando:
systemctl enable cells systemctl start cells
También puedes comprobar el estado de Pydio con el siguiente comando:
systemctl status cells
Obtendrás la siguiente salida:
? cells.service - Pydio Cells Loaded: loaded (/etc/systemd/system/cells.service; disabled; vendor preset: enabled) Active: active (running) since Sat 2022-04-02 11:34:24 UTC; 6s ago Docs: https://pydio.com Main PID: 25764 (cells) Tasks: 119 (limit: 2341) Memory: 421.6M CPU: 4.114s CGroup: /system.slice/cells.service ??25764 /usr/bin/cells start ??25769 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.jobs$ ??25775 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.search$ ??25781 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.gateway.websocket$ ??25783 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.sync.pydiods1$ ??25787 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.sync.personal$ ??25790 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.sync.cellsdata$ ??25802 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.sync.versions$ ??25805 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.sync.thumbnail> ??25816 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.tasks$ ??25819 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.objects.local1$ ??25847 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.index.pydiods1$ ??25848 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.index.personal$ ??25849 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.index.cellsdat> ??25850 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.index.versions$ ??25851 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.index.thumbnai> Apr 02 11:34:29 debian11 cells[25764]: 2022-04-02T11:34:29.294Z INFO pydio.test.objects Started Apr 02 11:34:29 debian11 cells[25764]: 2022-04-02T11:34:29.307Z INFO pydio.gateway.grpc Activating self-signed configura> Apr 02 11:34:29 debian11 cells[25764]: 2022-04-02T11:34:29.308Z INFO pydio.gateway.grpc Started Apr 02 11:34:30 debian11 cells[25764]: 2022-04-02T11:34:30.191Z INFO pydio.grpc.data.index.pydiods1 Warning: no private > Apr 02 11:34:30 debian11 cells[25764]: 2022-04-02T11:34:30.194Z INFO pydio.grpc.data.index.personal Warning: no private > Apr 02 11:34:30 debian11 cells[25764]: 2022-04-02T11:34:30.195Z INFO pydio.grpc.data.index.cellsdata Warning: no private> Apr 02 11:34:30 debian11 cells[25764]: 2022-04-02T11:34:30.204Z INFO pydio.grpc.data.index.thumbnails Warning: no privat> Apr 02 11:34:30 debian11 cells[25764]: 2022-04-02T11:34:30.212Z INFO pydio.grpc.data.index.versions Warning: no private > Apr 02 11:34:30 debian11 cells[25764]: 2022-04-02T11:34:30.326Z INFO pydio.gateway.proxy Restarting proxy {"caddy>
Conclusión
Enhorabuena! has instalado y configurado correctamente Pydio Cells en Debian 11. Ahora puedes subir tus archivos, documentos e imágenes desde el panel de Pydio y acceder a él desde cualquier móvil o navegador web. No dudes en preguntarme si tienes alguna duda.