So installierst du Pydio Cells auf einem Ubuntu 24.04 Server
Pydio Cells ist eine selbst gehostete Plattform für den Austausch und die Zusammenarbeit von Dokumenten. Sie gibt dir die volle Kontrolle über deine Dokumentenfreigabeumgebung. Pydio Cells ist sehr leistungsfähig, kann riesige Datenmengen übertragen und bietet eine fortschrittliche Workflow-Automatisierung.
In dieser Anleitung führen wir dich durch die Installation von Pydio Cells auf dem Ubuntu 24.04 Server mit der MariaDB Datenbank und Apache als Reverse Proxy.
Voraussetzungen
Bevor du beginnst, solltest du sicherstellen, dass du Folgendes hast
- Einen Ubuntu 24.04 Server.
- Einen Nicht-Root-Benutzer mit Administrator-Rechten.
- Einen Domainnamen, der auf eine Server-IP-Adresse zeigt.
Installieren der Abhängigkeiten
Bevor du Pydio Cells installierst, musst du die Abhängigkeiten auf deinem Ubuntu-System installieren. Dazu gehören der MariaDB-Datenbankserver und der Apache-Webserver.
Führe zunächst den folgenden Befehl apt
aus, um deinen Ubuntu-Paketindex zu aktualisieren und die Abhängigkeiten für Pydio Cells zu installieren. Mit diesem Befehl installierst du den Apache-Webserver, den MariaDB-Datenbankserver und Certbot zur Erstellung von SSL/TLS-Zertifikaten.
sudo apt update sudo apt install apache2 mariadb-server certbot python3-certbot-apache wget
Gib Y
ein, um die Installation zu bestätigen.
Nachdem die Installation abgeschlossen ist, überprüfe den Status des Apache-Dienstes mit folgendem Befehl:
sudo systemctl is-enabled apache2 sudo
systemctl status apache2
Wie du unten siehst, ist der Apache-Webserver aktiviert und läuft.
Überprüfe nun den Status des MariaDB-Servers mit dem folgenden Befehl.
sudo systemctl is-enabled mariadb
sudo systemctl status mariadb
Nachstehend siehst du, dass der MariaDB-Server läuft und aktiviert ist.
MariaDB-Server einrichten
Nachdem du den MariaDB-Server installiert hast, sicherst du MariaDB mit dem Dienstprogramm mariadb-secure-installation
. Dann erstellst du eine neue Datenbank und einen neuen Benutzer für Pydio Cells.
Um die Installation des MariaDB-Servers zu sichern, führe den folgenden Befehl mariadb-secure-installation
aus.
sudo mariadb-secure-installation
Im Folgenden wirst du nach der Konfiguration des MariaDB-Servers gefragt:
- Lokale Authentifizierung auf unix_socket umstellen? Gib n ein.
- Richte das neue MariaDB Root-Passwort ein. Bestätige mit y und gib dann das neue Passwort für deinen MariaDB-Server ein.
- Anonymen Benutzer entfernen? Gib zur Bestätigung y ein.
- Den Standard-Datenbanktest aus dem Einsatz entfernen? Gib zur Bestätigung y ein.
- MariaDB Root-Login von Remote-Verbindungen verbieten? Gib zur Bestätigung y ein.
- Tabellenberechtigungen neu laden und die Änderungen übernehmen? Gib y ein und drücke ENTER.
Führe nun den folgenden mariadb
Client-Befehl aus, um dich am MariaDB-Server anzumelden. Gib dein Root-Passwort ein, wenn du dazu aufgefordert wirst.
sudo mariadb -u root -p
Als Nächstes führst du die folgenden Abfragen aus, um eine neue Datenbank cellsdb
, einen Benutzer cells
und das Passwort p4ssword
zu erstellen. Achte darauf, dass du die Angaben unten mit deinen Informationen abänderst.
CREATE DATABASE cellsdb;
CREATE USER cells@localhost IDENTIFIED BY ‚cellsp4ssword‘;
GRANT ALL PRIVILEGES ON cellsdb.* TO cells@localhost;
FLUSH PRIVILEGES;
Führe nun die folgende Abfrage aus, um sicherzustellen, dass der Benutzer cells@localhost
auf die Datenbank cellsdb
zugreifen kann.
SHOW GRANTS FOR cells@localhost;
Du solltest eine ähnliche Ausgabe wie unten sehen:
Gib quit
ein, um den MariaDB-Server zu verlassen.
Installation von Pydio Cells
In diesem Abschnitt erstellst du einen neuen Benutzer pydio
, richtest Umgebungsvariablen ein und lädst dann Pydio Cells herunter und installierst es.
Füge einen neuen Benutzer pydio
mit dem folgenden Befehl hinzu:
sudo useradd -m -s /bin/bash pydio
Führe dann den folgenden Befehl aus, um ein neues Verzeichnis /opt/pydio/bin
und /var/cells
zu erstellen und ändere die Eigentümerschaft auf den Benutzer pydio
.
sudo mkdir -p /opt/pydio/bin /var/cells
sudo chown -R pydio: /opt/pydio/bin /var/cells
Führe nun den folgenden Befehl aus, um die Umgebungsdatei /etc/profile.d/cells-env.sh
zu erstellen und sie zu einer ausführbaren Datei zu machen. Diese Datei wird ausgeführt, wenn sich der Benutzer anmeldet.
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
Melde dich dann als Benutzer pydio
an und überprüfe die Umgebungsvariablen $CELLS_WORKING_DIR
, $CELLS_BIND
und $CELLS_EXTERNAL
. Vergewissere dich, dass sie auf den richtigen Wert in der Datei /etc/profile.d/cells-env.sh
verweisen.
su – pydio
echo $CELLS_WORKING_DIR
echo $CELLS_BIND
echo $CELLS_EXTERNAL
Führe nun den folgenden Befehl aus, um die Pydio-Binärdatei auf /opt/pydio/bin/cells
herunterzuladen.
export distribId=cells
wget -O /opt/pydio/bin/cells https://download.pydio.com/latest/
Mache die Datei /opt/pydio/bin/cells
ausführbar und beende sie unter dem aktuellen Benutzer pydio
.
chmod a+x /opt/pydio/bin/cells exit
Danach führst du den folgenden Befehl setcap
aus, um Pydio zu erlauben, die privilegierten Ports (0-1024) zu verwenden und einen Symlink zu /usr/local/bin/cells
zu erstellen.
sudo setcap ‚cap_net_bind_service=+ep‘ /opt/pydio/bin/cells
sudo ln -s /opt/pydio/bin/cells /usr/local/bin/cells
Melde dich erneut als Benutzer pydio
an und führe den folgenden Befehl cells
aus, um die Pydio Cells Version zu überprüfen.
su – pydio
cells version
Wie du unten sehen kannst, ist Pydio Cells 4.4.3 installiert.
Pydio Cells konfigurieren
Nachdem du Pydio Cells heruntergeladen hast, musst du es konfigurieren und in den MariaDB-Datenbankserver integrieren sowie einen Admin-Benutzer für die Pydio Cells-Installation anlegen. Das kannst du über die Befehlszeile cells
erledigen.
Führe den folgenden cells
Befehl aus, um Pydio Cells zu installieren und zu konfigurieren.
cells configure –cli
- Wähle TCP für die Datenbankverbindung und gib deine MariaDB-Datenbank, den Benutzer und das Passwort ein.
- Gib
N
für die MongoDB-Unterstützung ein. In diesem Fall wirst du ein einzelnes Pydio Cells erstellen und installieren. - Drücke ENTER, um die Standard-Speicherkonfiguration zu verwenden.
- Gib einen neuen Admin-Benutzer, eine E-Mail-Adresse und ein Passwort für deine Pydio Cells-Installation ein.
Nachdem die Installation abgeschlossen ist, siehst du die Meldung Installation finished
.
Pydio Cells als systemd-Dienst ausführen
In diesem Abschnitt wirst du eine systemd-Dienstdatei für Pydio Cells erstellen und einrichten. Damit kannst du Pydio Cells ganz einfach mit dem Befehl systemctl
verwalten.
Erstelle eine neue Servicedatei /etc/systemd/system/cells.service
mit dem Editor nano
.
sudo nano /etc/systemd/system/cells.service
Füge die folgende Konfiguration in die Datei ein und stelle sicher, dass du die Umgebungsvariable CELLS_EXTERNAL
mit dem Namen deiner Zieldomäne änderst.
[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
Speichere die Datei und beende den Editor.
Führe nun den folgenden Befehl systemctl
aus, um den systemd Manager neu zu laden und deine Änderungen zu übernehmen.
sudo systemctl daemon-reload
Starte und aktiviere den Dienst cells
mit dem unten stehenden Befehl. Überprüfe dann den Status von cells
, um sicherzustellen, dass der Dienst läuft.
sudo systemctl enable –now cells
sudo systemctl status cells
Apache als Reverse Proxy einrichten
Nachdem Pydio Cells als systemd-Dienst läuft, erstellst du eine neue virtuelle Apache-Hostdatei als Reverse-Proxy für Pydio Cells. Außerdem musst du die Apache-Module mit dem Befehl a2enmod
aktivieren.
Führe zunächst den Befehl a2enmod
aus, um Apache-Module zu aktivieren. In diesem Fall aktivierst du die Module für SSL und Reverse Proxy.
sudo a2enmod rewrite ssl proxy proxy_http proxy_wstunnel http2 proxy_http2
Erstelle nun eine neue virtuelle Hostdatei /etc/apache2/sites-available/cells.conf
mit dem folgenden nano
Befehl.
sudo nano /etc/apache2/sites-available/cells.conf
Füge die folgende Konfiguration ein, um Apache als Reverse Proxy für Pydio Cells einzurichten. Achte darauf, dass du die Option ServerName
durch deinen Zieldomainnamen ersetzt.
<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>
Speichere und beende die Datei, wenn du fertig bist.
Als Nächstes führst du den Befehl a2ensite
aus, um den virtuellen Host cells.conf
zu aktivieren und deine Apache-Konfiguration zu überprüfen. Wenn du Apache richtig konfiguriert hast, siehst du eine Ausgabe Syntax is OK
.
sudo a2ensite cells.conf
sudo apachectl configtest
Führe abschließend den folgenden Befehl systemctl
aus, um den Apache-Webserver neu zu starten und deine Änderungen zu übernehmen.
sudo systemctl restart apache2
Absicherung von Pydio Cells mit HTTPS
Pydio Cells ist über HTTPS zugänglich. Daher musst du HTTPS in deiner virtuellen Apache-Hostdatei aktivieren. In diesem Abschnitt erstellst du SSL/TLS-Zertifikate mit certbot
, um die Installation von Pydio Cells zu sichern.
Um Pydio Cells mit HTTPS zu sichern, führe den Befehl certbot
aus. Achte darauf, dass du den Domänennamen und die E-Mail-Adresse mit deinen Daten abänderst.
sudo certbot –apache –agree-tos –redirect –hsts –staple-ocsp –email admin@hwdomain.io -d cells.hwdomain.io
Nachdem der Vorgang abgeschlossen ist, sind deine SSL/TLS-Zertifikate im Verzeichnis /etc/letsencrypt/live/domain.com
verfügbar.
Öffne nun deinen Webbrowser und besuche deine Domain https://cells.hwdomain.io/. Wenn die Installation erfolgreich war, wirst du auf die Anmeldeseite von Pydio Cells weitergeleitet.
Gib deinen Admin-Benutzer und dein Passwort ein und klicke auf ENTER.
Du siehst das Pydio Cells Dashboard wie folgt:
Fazit
Herzlichen Glückwunsch! Du hast die Installation von Pydio Cells auf dem Ubuntu 24.04 Server abgeschlossen. Du hast Pydio Cells mit dem MariaDB-Datenbankserver und dem Apache als Reverse Proxy eingerichtet und zum Laufen gebracht. Außerdem hast du Pydio Cells mit HTTPS über Certbot und Letsencrypt abgesichert.