Come installare Pydio Cells su AlmaLinux 9
In questa pagina
- Prerequisiti
- Installazione delle dipendenze
- Configurazione del server MariaDB
- Download di celle Pydio
- Installazione di Pydio Cells tramite la riga di comando
- Configurazione del file di servizio systemd per Pydio Cells
- Configurazione di Httpd come proxy inverso
- Accesso alle celle Pydio
- Conclusione
Pydio Cells è una piattaforma di condivisione e collaborazione di documenti open source per la tua organizzazione. Ti consente di condividere documenti e file all'interno della tua organizzazione e ti dà il pieno controllo del tuo ambiente di condivisione dei documenti.
Le celle Pydio hanno prestazioni veloci, possono gestire enormi dimensioni di trasferimento di file e forniscono un'automazione avanzata del flusso di lavoro.
In questa guida ti mostreremo come installare Pydio Cells su un server Alma Linux 9. Installerai Pydio Cells con il server database MariaDB e il server web Httpd.
Prerequisiti
Per iniziare con questa guida, assicurati di avere quanto segue:
- Un server Alma Linux 9
- Un utente non root con privilegi di amministratore
- Un nome di dominio puntava all'indirizzo IP del server
- Un SELinux con lo stato abilitato e permissivo
Installazione delle dipendenze
Prima di installare Pydio Cells, devi installare le dipendenze sul tuo server Alma Linux. Ciò include il repository EPEL, il server database MariaDB, il server web Httpd e alcuni strumenti di sistema come wget e nano.
Innanzitutto, esegui il comando 'dnf' di seguito per aggiungere il repository EPEL e installare il server MariDB e il server web Httpd. Inserisci "Y" per confermare l'installazione.
sudo dnf install epel-release mariadb-server httpd wget nano
Una volta completata l'installazione, esegui il comando 'systemctl' di seguito per avviare, abilitare e verificare il servizio 'httpd'. Vedrai che il servizio "httpd" è in esecuzione e abilitato.
sudo systemctl enable --now httpd
sudo systemctl status httpd
Ora esegui il seguente comando per avviare e abilitare il servizio 'mariadb'. Quindi, verificalo per assicurarti che il servizio sia in esecuzione.
sudo systemctl enable --now mariadb
sudo systemctl status mariadb
Nell'output seguente, puoi vedere che il server MariaDB è in esecuzione e abilitato.
Infine, esegui il comando "firewall-cmd" di seguito per aprire entrambe le porte "http" e "https" sul tuo sistema. Quindi, ricarica le regole firewalld per applicare le modifiche.
sudo firewall-cmd --add-service={http,https} --permanent
sudo firewall-cmd --reload
Configurazione del server MariaDB
Dopo aver installato le dipendenze, è necessario proteggere l'installazione del server MariaDB e creare un nuovo database e utente per l'installazione del server Pydio Cells. Proteggerai MariaDB con il comando 'mariadb-secure-installation', quindi creerai un nuovo database e un nuovo utente tramite il client 'mariadb'.
Per proteggere l'installazione del server MariaDB, esegui il comando 'mariadb-secure-installation' di seguito.
sudo mariadb-secure-installation
Durante il processo, ti verranno chieste le seguenti configurazioni:
- Passare l'autenticazione locale a unix_socket? Ingresso n.
- Imposta la nuova password root di MariaDB. Inserisci y per confermare, quindi digita la nuova password per la distribuzione del server MariaDB.
- Rimuovere l'utente anonimo? Immettere y per confermare.
- Rimuovere il test del database predefinito dalla distribuzione?. Immettere y per confermare.
- Non consentire l'accesso root a MariaDB da connessioni remote? Immettere y per confermare.
- Ricarica i privilegi della tabella e applica le modifiche. Immettere y e premere ENTER.
Ora che il server MariaDB è protetto, creerai un nuovo database e un nuovo utente per l'installazione di Pydio Cells.
Accedi al server MariaDB con il comando 'mariadb' di seguito. Inserisci la password root di MariaDB quando richiesto.
sudo mariadb -u root -p
Esegui le seguenti query per creare un nuovo database 'cells' e un nuovo utente 'pydio', con la password 'p4ssw0rd'. può modificare i dettagli del database secondo necessità.
CREATE DATABASE cells;
CREATE USER 'pydio'@'localhost' IDENTIFIED BY 'p4ssw0rd';
GRANT ALL PRIVILEGES ON cells.* to 'pydio'@'localhost';
FLUSH PRIVILEGES;
Ora controlla i privilegi per l'utente 'pydio' per garantire autorizzazioni e privilegi al database 'cells'.
SHOW GRANTS FOR 'pydio'@'localhost';
Di seguito puoi vedere che le "celle" del database sono accessibili tramite l'utente "pydio".
Digita 'quit' per uscire dal server MariaDB.
Download di celle Pydio
Con il database MariaDB configurato, sei pronto per scaricare Pydio Cells. In questa sezione configurerai l'utente 'pydio', scaricherai Pydio Cells, configurerai la directory di installazione e le variabili di ambiente e consentirai a Pydio Cell di essere eseguito sulle porte privilegiate.
Crea un nuovo utente e gruppo "pydio" con il seguente comando.
sudo useradd -m -s /bin/bash pydio
Crea nuove directory '/opt/pydio/bin' e '/var/cells' con il comando seguente. Quindi cambia la proprietà di entrambe le directory nell'utente 'pydio'.
sudo mkdir -p /opt/pydio/bin /var/cells
sudo chown -R pydio:pydio /opt/pydio/bin /var/cells
Ora crea un nuovo file env '/etc/profile.d/cells-env.sh' con l'editor 'nano'.
sudo nano /etc/profile.d/cells-env.sh
Immettere il seguente script per impostare le variabili di ambiente per Pydio Cells. Assicurati di modificare l'indirizzo 'CELLS_EXTRERNAL' in modo che corrisponda al nome di dominio della tua installazione Pydio.
export CELLS_WORKING_DIR=/var/cells
export CELLS_BIND=127.0.0.1:8080
export CELLS_EXTERNAL=https://cells.howtoforge.local
Al termine, salva ed esci dal file.
Ora esegui il comando seguente per rendere eseguibile il file env '/etc/profile.d/cells-env.sh'.
sudo chmod +x /etc/profile.d/cells-env.sh
Successivamente, esegui il comando seguente per scaricare il file binario Pydio Cells per Linux in '/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 volta scaricato, esegui il comando seguente per rendere eseguibile il file binario 'cells' e consentirgli di collegarsi alle porte privilegiate.
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
Ora accedi come utente "pydio" con quanto segue:
su - pydio
Controlla le variabili di ambiente per Pydio Cells con quanto segue: assicurati che l'output corrisponda al file env '/etc/profile.d/cells-env.sh'.
echo $CELLS_WORKING_DIR
echo $CELLS_BIND
echo $CELLS_EXTERNAL
Infine, controlla la versione 'cells' con il comando seguente.
cells version
Nell'output seguente, puoi vedere la versione di Pydio Cells.
Installazione di Pydio Cells tramite la riga di comando
Ora inizierai a installare Pydio Cells dalla riga di comando. Con il comando 'cells', imposterai l'installazione di Pydio Cells con il database MariaDB, configurerai l'utente e la password dell'amministratore e configurerai il percorso di archiviazione per la memorizzazione dei dati dell'utente.
Per iniziare, esegui il comando seguente per configurare l'installazione di Pydio Cells dal terminale.
cells configure --cli
Ora ti verranno richieste le seguenti configurazioni:
- Connessione al database: seleziona tramite TCP, quindi inserisci i dettagli dell'host, della porta, dell'utente e della password del database MariaDB.
- Configurazione MongoDB: input n per no.
- Configurazione utente amministrativo: inserisci l'utente amministratore e la password per Pydio Cells.
- Posizione di archiviazione predefinita: premere INVIO per utilizzare l'impostazione predefinita e continuare.
Una volta completato il processo, vedrai il seguente output:
Configurazione del file di servizio systemd per Pydio Cells
Dal passaggio precedente, puoi avviare Pydio Cells con il comando 'cells start'. Per renderlo più semplice, utilizzerai invece il systemd 'systemctl' per la gestione del servizio Pydio Cells. Quindi ora creerai un nuovo file di servizio systemd.
Crea un nuovo file '/etc/systemd/system/cells.service' con l'editor 'nano'.
sudo nano /etc/systemd/system/cells.service
Inserisci la configurazione seguente per eseguire Pydio Cells come servizio systemd. Assicurati di cambiare "CELLS_EXTERNAL" con il tuo nome di 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
Salvare il file ed uscire dall'editor.
Ora esegui il comando seguente per ricaricare il systemd manager.
sudo systemctl daemon-reload
Infine, esegui il comando 'systemctl' di seguito per avviare, abilitare e verificare il servizio 'cells'.
sudo systemctl enable --now cells
sudo systemctl status cells
In questo output, puoi vedere che il servizio 'cells' è in esecuzione in background come servizio systemd.
Configurazione di Httpd come proxy inverso
A questo punto, le Pydio Cell sono in esecuzione sul tuo server Alma Linux sulla porta '8080'. Per renderlo accessibile dal client, creerai un file host virtuale Httpd come proxy inverso per il server Pydio Cells. Genererai anche certificati SSL/TLS da Letsencrypt per proteggere il trasferimento dei dati tra il client e il server Pydio Cells.
Innanzitutto, esegui il comando 'dnf' di seguito per installare 'certbot' sul tuo sistema.
sudo dnf install certbot -y
Ora crea una nuova directory root web fittizia e cambia la proprietà nell'utente "apache".
sudo mkdir -p /var/www/html/cells/public_html
sudo chown -R apache:apache /var/www/html/cells/public_html
Esegui il comando 'certbot' di seguito per generare certificati SSL/TLS per Pydio Cells. Assicurati di modificare l'indirizzo email e il nome di dominio con le tue informazioni.
sudo certbot certonly --agree-tos --email [email --no-eff-email --webroot -w /var/www/html/cells/public_html -d cells.howtoforge.local
Successivamente, crea una nuova configurazione dell'host virtuale Httpd '/etc/httpd/conf.d/pydio.conf' con l'editor 'nano'.
sudo nano /etc/httpd/conf.d/pydio.conf
Inserisci la configurazione di seguito e assicurati di modificare l'opzione "ServerName" con il tuo nome di 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>
Salvare il file e uscire dall'editor una volta terminato.
Ora esegui il comando 'apachectl' di seguito per verificare la tua sintassi Apache. Se hai una configurazione Apache corretta, vedrai l'output "La sintassi è OK".
sudo apachectl configtest
Infine, esegui il comando "systemctl" di seguito per riavviare il server web "httpd" e applicare le modifiche. Con questo, l'installazione di Pydio Cells dovrebbe essere completata e accessibile.
sudo systemctl restart httpd
Accesso alle celle Pydio
Apri il tuo browser web e visita il nome di dominio della tua installazione Pydio Cells come https://cells.howtoforge.local. Se l'installazione ha esito positivo, vedrai la pagina di accesso di Pydio Cells.
Inserisci l'utente amministratore e la password per accedere.
Se disponi delle credenziali corrette, vedrai la dashboard utente di Pydio Cells come la seguente.
Da qui, ora puoi provare a caricare file dal tuo computer locale al server Pydio Cells. Nello screenshot seguente, ho caricato i file su Pydio Cells e ho avuto successo.
Conclusione
Congratulazioni! Hai terminato l'installazione di Pydio Cells sul server Alma Linux 9. Hai le celle Pydio in esecuzione con il server database MariaDB e il server web Httpd. Oltre a ciò, hai anche protetto l'installazione di Pydio Cells con HTTPS tramite Certbot e Letsencrypt.