In questo tutorial, ti mostreremo come installare EteSync Server su Ubuntu 20.04 LTS. Per chi non lo sapesse, EteSync è un open source end-to-end soluzione di crittografia per sincronizzare calendari, contatti, attività e note. È possibile accedervi tramite client desktop, Web, Android e iOS.
Questo articolo presuppone che tu abbia almeno una conoscenza di base di Linux, sappia come usare la shell e, soprattutto, che ospiti il tuo sito sul tuo VPS. L'installazione è abbastanza semplice e presuppone che tu sono in esecuzione nell'account root, in caso contrario potrebbe essere necessario aggiungere 'sudo
' ai comandi per ottenere i privilegi di root. Ti mostrerò passo passo l'installazione del Server EteSync su Ubuntu 20.04 (Focal Fossa). Puoi seguire le stesse istruzioni per Ubuntu 18.04, 16.04 e qualsiasi altra distribuzione basata su Debian come Linux Mint.
Prerequisiti
- Un server che esegue uno dei seguenti sistemi operativi:Ubuntu 20.04, 18.04 e qualsiasi altra distribuzione basata su Debian come Linux Mint o SO elementare.
- Si consiglia di utilizzare una nuova installazione del sistema operativo per prevenire potenziali problemi.
- Un
non-root sudo user
o accedere all'root user
. Ti consigliamo di agire comenon-root sudo user
, tuttavia, poiché puoi danneggiare il tuo sistema se non stai attento quando agisci come root.
Installa EteSync Server su Ubuntu 20.04 LTS Focal Fossa
Passaggio 1. Innanzitutto, assicurati che tutti i pacchetti di sistema siano aggiornati eseguendo il seguente apt
comandi nel terminale.
sudo apt update sudo apt upgrade sudo apt install python3-virtualenv python3-pip gcc build-essential libmysqlclient-dev
Passaggio 2. Installazione di MariaDB.
Esegui il seguente comando per aggiungere la chiave GPG e il repository MariaDB con il seguente comando:
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'
Successivamente, installa MariaDB sul tuo sistema:
sudo apt install mariadb-server
Per impostazione predefinita, MariaDB non è protetto. Puoi proteggere MariaDB usando mysql_secure_installation
sceneggiatura. dovresti leggere attentamente e sotto ogni passaggio che imposterà una password di root, rimuoverà gli utenti anonimi, non consentirà l'accesso root remoto e rimuoverà il database di test e l'accesso per proteggere MariaDB:
mysql_secure_installation
Configuralo in questo modo:
- 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
Successivamente, dovremo accedere alla console MariaDB e creare un database per EteSync. Esegui il seguente comando:
mysql -u root -p
Questo ti chiederà una password, quindi inserisci la tua password di root MariaDB e premi Invio. Una volta effettuato l'accesso al server del database, devi creare un database per Installazione EteSync:
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;
Passaggio 3. Installazione di EteSync Server su Ubuntu 20.04.
Ora scarichiamo l'ultima versione di EteSync da GitHub:
git clone https://github.com/etesync/server.git etebase
Successivamente, cambia la directory e crea un virtuale Python:
cd etebase virtualenv -p python3 .venv source .venv/bin/activate pip install -r requirements.txt
Dopo, copia il file di configurazione di esempio e modifica la configurazione:
cp etebase-server.ini.example etebase-server.ini nano etebase-server.ini
Cambia le seguenti righe:
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
Salva e chiudi il file, quindi installa altri moduli utilizzando il seguente comando:
pip3 install daphne mysqlclient aioredis
Successivamente, genera i file statici e migra il database con il seguente comando:
./manage.py collectstatic ./manage.py migrate
Quindi, avvia il server EteSync con il seguente comando:
daphne -b 0.0.0.0 -p 8001 etebase_server.asgi:application
Passaggio 4. Crea un file di servizio Systemd per EteSync.
Ora crea un systemd
file dell'unità di servizio per EteSync con il seguente comando:
nano /etc/systemd/system/etebase.service
Aggiungi le seguenti righe:
[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
Salva e chiudi il file, quindi ricarica il systemd
demone con il seguente comando:
sudo systemctl daemon-reload sudo systemctl start etebase sudo systemctl enable etebase
Passaggio 5. Configura Nginx.
Ora installiamo Nginx usando il seguente comando:
sudo apt install nginx
Quindi, crea un file di configurazione dell'host virtuale Nginx con il seguente comando:
nano /etc/nginx/conf.d/etebase.conf
Aggiungi le seguenti righe:
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; } }
Salva e chiudi il file, quindi riavvia il servizio Nginx per applicare le modifiche alla configurazione:
sudo systemctl restart nginx
Passaggio 6. Crea account utente.
Prima cambiamo la directory in etebase e attiviamo l'ambiente virtuale se non attivato:
cd etebase source .venv/bin/activate
Quindi, crea un superutente con il seguente comando:
./manage.py createsuperuser
Fornisci il tuo nome utente, password ed email come mostrato di seguito:
Username: admin Email address: [email protected] Password: Password (again): Superuser created successfully.
Passaggio 7. Accedi all'interfaccia Web del server EteSync.
Una volta installato correttamente, apri il tuo browser web e accedi alla tua interfaccia web EteSync utilizzando l'URL http://etesync.your-domain.com/admin
. Dovresti vedere la seguente pagina:
Congratulazioni! Hai installato con successo EteSync. Grazie per aver utilizzato questo tutorial per l'installazione di EteSync Server su Ubuntu 20.04 LTS Focal Fossa system. Per ulteriore aiuto o informazioni utili, ti consigliamo di controllare l'EteSync ufficiale sito web.