In diesem Tutorial zeigen wir Ihnen, wie Sie EteSync Server auf Ubuntu 20.04 LTS installieren. Für diejenigen unter Ihnen, die es nicht wussten, EteSync ist ein Open-Source-End-to-End Verschlüsselungslösung zum Synchronisieren Ihrer Kalender, Kontakte, Aufgaben und Notizen. Der Zugriff ist über Desktop-, Web-, Android- und iOS-Clients möglich.
Dieser Artikel geht davon aus, dass Sie zumindest über Grundkenntnisse in Linux verfügen, wissen, wie man die Shell verwendet, und vor allem, dass Sie Ihre Website auf Ihrem eigenen VPS hosten. Die Installation ist recht einfach und setzt Sie voraus im Root-Konto ausgeführt werden, wenn nicht, müssen Sie möglicherweise 'sudo
hinzufügen ‘ zu den Befehlen, um Root-Rechte zu erhalten. Ich zeige Ihnen Schritt für Schritt die Installation des EteSync Servers auf Ubuntu 20.04 (Focal Fossa). Sie können denselben Anweisungen für Ubuntu 18.04, 16.04 und jede andere Debian-basierte Distribution wie Linux Mint folgen.
Voraussetzungen
- Ein Server, auf dem eines der folgenden Betriebssysteme ausgeführt wird:Ubuntu 20.04, 18.04 und jede andere Debian-basierte Distribution wie Linux Mint oder elementares Betriebssystem.
- Es wird empfohlen, dass Sie eine neue Betriebssysteminstallation verwenden, um potenziellen Problemen vorzubeugen.
- Ein
Nicht-Root-Sudo-Benutzer
oder Zugriff auf denRoot-Benutzer
. Wir empfehlen, alsNicht-Root-Sudo-Benutzer
zu agieren , da Sie Ihr System beschädigen können, wenn Sie als Root nicht aufpassen.
EteSync-Server auf Ubuntu 20.04 LTS Focal Fossa installieren
Schritt 1. Stellen Sie zunächst sicher, dass alle Ihre Systempakete auf dem neuesten Stand sind, indem Sie den folgenden apt
ausführen Befehle im Terminal.
sudo apt update sudo apt upgrade sudo apt install python3-virtualenv python3-pip gcc build-essential libmysqlclient-dev
Schritt 2. Installation von MariaDB.
Führen Sie den folgenden Befehl aus, um den GPG-Schlüssel und das MariaDB-Repository mit dem folgenden Befehl hinzuzufügen:
apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8 add-apt-repository 'deb [arch=amd64,arm64,ppc64el] http://mirror.lstn.net/mariadb/repo/10.5/ubuntu focal main'
Installieren Sie als Nächstes MariaDB auf Ihrem System:
sudo apt install mariadb-server
Standardmäßig ist MariaDB nicht gehärtet. Sie können MariaDB mit mysql_secure_installation
sichern Skript. Sie sollten jeden Schritt sorgfältig lesen und befolgen, der ein Root-Passwort festlegt, anonyme Benutzer entfernt, Remote-Root-Login verbietet und die Testdatenbank und den Zugriff auf die sichere MariaDB entfernt:
mysql_secure_installation
Konfiguriere es so:
- Set root password? [Y/n] y - 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
Als Nächstes müssen wir uns bei der MariaDB-Konsole anmelden und eine Datenbank für EteSync erstellen. Führen Sie den folgenden Befehl aus:
mysql -u root -p
Dadurch werden Sie zur Eingabe eines Passworts aufgefordert, geben Sie also Ihr MariaDB-Root-Passwort ein und drücken Sie die Eingabetaste. Sobald Sie sich bei Ihrem Datenbankserver angemeldet haben, müssen Sie eine Datenbank für erstellen EteSync-Installation:
MariaDB [(none)]> create database etesyncdb; MariaDB [(none)]> create user etesync@localhost identified by 'your-stronge-passwd'; MariaDB [(none)]> grant all privileges on etesyncdb.* to etesync@localhost; MariaDB [(none)]> flush privileges; MariaDB [(none)]> exit;
Schritt 3. EteSync Server auf Ubuntu 20.04 installieren.
Jetzt laden wir die neueste Version von EteSync von GitHub herunter:
git clone https://github.com/etesync/server.git etebase
Wechseln Sie als Nächstes das Verzeichnis und erstellen Sie ein virtuelles Python:
cd etebase virtualenv -p python3 .venv source .venv/bin/activate pip install -r requirements.txt
Kopieren Sie danach die Beispielkonfigurationsdatei und bearbeiten Sie die Konfiguration:
cp etebase-server.ini.example etebase-server.ini nano etebase-server.ini
Ändern Sie die folgenden Zeilen:
media_root = /mnt allowed_host1 = etesync.your-domain.com ;engine = django.db.backends.sqlite3 ;name = db.sqlite3 engine = django.db.backends.mysql name = etebase user = etebase password = your-strong-password host = 127.0.0.1 port = 3306
Speichern und schließen Sie die Datei und installieren Sie dann andere Module mit dem folgenden Befehl:
pip3 install daphne mysqlclient aioredis
Generieren Sie als Nächstes die statischen Dateien und migrieren Sie die Datenbank mit dem folgenden Befehl:
./manage.py collectstatic ./manage.py migrate
Starten Sie dann den EteSync-Server mit folgendem Befehl:
daphne -b 0.0.0.0 -p 8001 etebase_server.asgi:application
Schritt 4. Erstellen Sie eine Systemd-Dienstdatei für EteSync.
Erstellen Sie nun ein systemd
Service-Unit-Datei für EteSync mit dem folgenden Befehl:
nano /etc/systemd/system/etebase.service
Fügen Sie die folgenden Zeilen hinzu:
[Unit] Description=EteSync: End-to-End Encryption to Sync Calendar, Contacts, Tasks and Notes. [Service] WorkingDirectory=/root/etebase/ ExecStart=/root/etebase/.venv/bin/daphne -b 127.0.0.1 -p 8001 -u /tmp/etebase_server.sock etebase_server.asgi:application User=root Group=root Restart=always RestartSec=5s [Install] WantedBy=multi-user.target
Speichern und schließen Sie die Datei und laden Sie dann systemd
neu Daemon mit dem folgenden Befehl:
sudo systemctl daemon-reload sudo systemctl start etebase sudo systemctl enable etebase
Schritt 5. Konfigurieren Sie Nginx.
Nun installieren wir Nginx mit dem folgenden Befehl:
sudo apt install nginx
Erstellen Sie als Nächstes eine Konfigurationsdatei für den virtuellen Nginx-Host mit dem folgenden Befehl:
nano /etc/nginx/conf.d/etebase.conf
Fügen Sie die folgenden Zeilen hinzu:
upstream etebase { server unix:/tmp/etebase_server.sock; } server { listen 80; server_name etesync.your-domain.com; charset utf-8; access_log /var/log/nginx/etebase.access; error_log /var/log/nginx/etebase.error; # max upload size client_max_body_size 64M; location /static/ { alias /root/etebase/static/; } location / { proxy_pass http://etebase; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_redirect of/f; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Host $server_name; } }
Speichern und schließen Sie die Datei und starten Sie dann den Nginx-Dienst neu, um die Konfigurationsänderungen zu übernehmen:
sudo systemctl restart nginx
Schritt 6. Erstellen Sie Benutzerkonten.
Als erstes ändern wir das Verzeichnis auf etebase und aktivieren die virtuelle Umgebung, falls nicht aktiviert:
cd etebase source .venv/bin/activate
Erstellen Sie dann einen Superuser mit dem folgenden Befehl:
./manage.py createsuperuser
Geben Sie Ihren Benutzernamen, Ihr Passwort und Ihre E-Mail-Adresse wie unten gezeigt ein:
Username: admin Email address: [email protected] Password: Password (again): Superuser created successfully.
Schritt 7. Greifen Sie auf die EteSync Server-Webschnittstelle zu.
Öffnen Sie nach erfolgreicher Installation Ihren Webbrowser und greifen Sie über die URL http://etesync.your-domain.com/admin
Herzlichen Glückwunsch! Sie haben EteSync erfolgreich installiert. Vielen Dank, dass Sie dieses Tutorial zur Installation von EteSync Server auf einem Ubuntu 20.04 LTS Focal Fossa-System verwendet haben. Für zusätzliche Hilfe oder nützliche Informationen empfehlen wir Ihnen, das offizielle EteSync zu überprüfen Webseite.