GNU/Linux >> Tutoriels Linux >  >> Linux

Comment installer EteSync Server sur Ubuntu 20.04

EteSync est un outil gratuit, open source et de bout en bout utilisé pour synchroniser vos contacts, calendriers, tâches et notes. Il peut être facilement intégré à vos applications existantes. Vous avez juste besoin d'un mot de passe pour la connexion et le cryptage. EteSync a la capacité de partager des données avec d'autres utilisateurs et la synchronisation entre plusieurs appareils. Il fournit également un module complémentaire pour Mozilla Thunderbird et un client pour le Web, le bureau, Android et iOS.

Dans cet article, nous vous montrerons comment installer EteSync sur le serveur Ubuntu 20.04.

Prérequis

  • Un nouveau serveur Ubuntu 20.04 sur la plate-forme cloud Atlantic.Net
  • Un nom de domaine valide pointé vers votre serveur
  • Un mot de passe root configuré sur votre serveur

Étape 1 - Créer un serveur cloud Atlantic.Net

Tout d'abord, connectez-vous à votre serveur Atlantic.Net Cloud. Créez un nouveau serveur en choisissant Ubuntu 20.04 comme système d'exploitation avec au moins 2 Go de RAM. Connectez-vous à votre serveur cloud via SSH et connectez-vous à l'aide des informations d'identification mises en évidence en haut de la page.

Une fois que vous êtes connecté à votre serveur Ubuntu 20.04, exécutez la commande suivante pour mettre à jour votre système de base avec les derniers packages disponibles.

apt-get update -y

Étape 2 - Installer et configurer la base de données MariaDB

EteSync utilise MariaDB comme backend de base de données, donc la dernière version de MariaDB doit être installée sur votre serveur.

Tout d'abord, installez les dépendances requises avec la commande suivante :

apt-get install software-properties-common curl git gnupg2 -y

Ensuite, téléchargez et ajoutez la clé GPG et le référentiel avec la commande suivante :

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'

Ensuite, installez la dernière version du serveur MariaDB avec la commande suivante :

apt-get install mariadb-server -y

Ensuite, connectez-vous à MariaDB et créez une base de données et un utilisateur :

mysql

Une fois connecté, créez une base de données et un utilisateur avec la commande suivante :

create database etebase;
create user [email protected] identified by 'password';

Ensuite, accordez tous les privilèges à la base de données etebase avec la commande suivante :

grant all privileges on etebase.* to [email protected];

Ensuite, videz les privilèges et quittez MariaDB avec la commande suivante :

flush privileges;
exit;

Étape 3 - Installer EteSync

Tout d'abord, vous devrez installer toutes les dépendances Python sur votre serveur. Vous pouvez tous les installer avec la commande suivante :

apt-get install python3-virtualenv python3-pip gcc build-essential libmysqlclient-dev -y

Une fois toutes les dépendances installées, téléchargez la dernière version d'EteSync avec la commande suivante :

git clone https://github.com/etesync/server.git etebase

Ensuite, changez le répertoire vers le répertoire téléchargé et créez un environnement virtuel Python avec la commande suivante :

cd etebase
virtualenv -p python3 .venv

Ensuite, activez l'environnement virtuel avec la commande suivante :

source .venv/bin/activate

Ensuite, installez toutes les dépendances requises avec la commande suivante :

pip install -r requirements.txt

Ensuite, renommez l'exemple de fichier de configuration :

cp etebase-server.ini.example etebase-server.ini

Ensuite, modifiez le fichier de configuration avec la commande suivante :

nano etebase-server.ini

Modifiez les lignes suivantes :

media_root = /mnt
allowed_host1 = etebase.example.com
;engine = django.db.backends.sqlite3
;name = db.sqlite3
engine = django.db.backends.mysql
name = etebase
user = etebase
password = password
host = 127.0.0.1
port = 3306

Enregistrez et fermez le fichier, puis installez le serveur de socket Web Django et le client MariaDB avec la commande suivante :

pip3 install daphne mysqlclient aioredis

Ensuite, créez les fichiers statiques de Django avec la commande suivante :

./manage.py collectstatic

Ensuite, initialisez l'application avec la commande suivante :

./manage.py migrate

Ensuite, démarrez le serveur EteSync avec la commande suivante :

daphne -b 0.0.0.0 -p 8001 etebase_server.asgi:application

Vous devriez obtenir le résultat suivant :

2021-03-13 04:30:04,102 INFO     Starting server at tcp:port=8001:interface=0.0.0.0
2021-03-13 04:30:04,103 INFO     HTTP/2 support not enabled (install the http2 and tls Twisted extras)
2021-03-13 04:30:04,103 INFO     Configuring endpoint tcp:port=8001:interface=0.0.0.0
2021-03-13 04:30:04,104 INFO     Listening on TCP address 0.0.0.0:8001

Appuyez sur CTRL+C pour arrêter le serveur.

Étape 4 - Créer un fichier de service Systemd pour EteSync

Ensuite, vous devrez créer un fichier de service systemd pour EteSync. Vous pouvez le créer avec la commande suivante :

nano /etc/systemd/system/etebase.service

Ajoutez les lignes suivantes :

[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

Enregistrez et fermez le fichier, puis rechargez le démon systemd avec la commande suivante :

systemctl daemon-reload

Ensuite, démarrez le service EteSync et activez-le au redémarrage du système avec la commande suivante :

systemctl start etebase
systemctl enable etebase

Ensuite, vérifiez l'état du service EteSync avec la commande suivante :

systemctl status etebase

Vous devriez obtenir le résultat suivant :

● etebase.service - EteSync: End-to-End Encryption to Sync Calender, Contacts, Tasks and Notes.
     Loaded: loaded (/etc/systemd/system/etebase.service; disabled; vendor preset: enabled)
     Active: active (running) since Sat 2021-03-13 04:30:57 UTC; 6s ago
   Main PID: 13641 (daphne)
      Tasks: 1 (limit: 2353)
     Memory: 48.5M
     CGroup: /system.slice/etebase.service
             └─13641 /root/etebase/.venv/bin/python /root/etebase/.venv/bin/daphne -b 127.0.0.1 -p 8001 -u /tmp/etebase_server.sock etebase_se>

Mar 13 04:30:57 ubuntu2004 systemd[1]: Started EteSync: End-to-End Encryption to Sync Calender, Contacts, Tasks and Notes..
Mar 13 04:30:58 ubuntu2004 daphne[13641]: 2021-03-13 04:30:58,437 INFO     Starting server at tcp:port=8001:interface=127.0.0.1, unix:/tmp/ete>
Mar 13 04:30:58 ubuntu2004 daphne[13641]: 2021-03-13 04:30:58,438 INFO     HTTP/2 support not enabled (install the http2 and tls Twisted extra>
Mar 13 04:30:58 ubuntu2004 daphne[13641]: 2021-03-13 04:30:58,439 INFO     Configuring endpoint tcp:port=8001:interface=127.0.0.1
Mar 13 04:30:58 ubuntu2004 daphne[13641]: 2021-03-13 04:30:58,441 INFO     Listening on TCP address 127.0.0.1:8001
Mar 13 04:30:58 ubuntu2004 daphne[13641]: 2021-03-13 04:30:58,441 INFO     Configuring endpoint unix:/tmp/etebase_server.sock

Étape 5 - Configurer Nginx pour EteSync

Ensuite, installez le Nginx avec la commande suivante :

apt-get install nginx -y

Une fois installé, créez un fichier de configuration d'hôte virtuel Nginx avec la commande suivante :

nano /etc/nginx/conf.d/etebase.conf

Ajoutez les lignes suivantes :

upstream etebase {
    server unix:/tmp/etebase_server.sock;
}

server {
    listen 80;
    server_name etebase.example.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 75M;

    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;
    }
}

Enregistrez et fermez le fichier, puis redémarrez le service Nginx pour appliquer les modifications :

systemctl restart nginx

Étape 6 – Créer un utilisateur administrateur

Ensuite, vous devrez créer un utilisateur administratif pour EteSync.

Tout d'abord, changez le répertoire en etebase et activez l'environnement virtuel s'il n'est pas activé :

cd etebase
source .venv/bin/activate

Créez ensuite un super-utilisateur avec la commande suivante :

./manage.py createsuperuser

Fournissez toutes les informations comme indiqué ci-dessous :

Username: admin
Email address: [email protected]
Password: 
Password (again): 
Superuser created successfully.

Étape 7 - Accéder à EteSync

Maintenant, ouvrez votre navigateur Web et accédez à votre interface Web EteSync en utilisant l'URL http://etebase.example.com/admin . Vous devriez voir la page suivante :

Indiquez votre nom d'utilisateur, votre mot de passe et cliquez sur Connexion bouton. Vous devriez voir le tableau de bord EteSync sur la page suivante :

Conclusion

Toutes nos félicitations! Vous avez installé et configuré avec succès EteSync sur le serveur Ubuntu 20.04. Vous pouvez désormais synchroniser facilement vos contacts, calendriers, tâches et notes en utilisant l'hébergement VPS d'Atlantic.Net !


Linux
  1. Comment installer le serveur EteSync sur Ubuntu 20.04

  2. Comment installer TeamSpeak Server sur Ubuntu 18.04 et 20.04

  3. Comment installer MongoDB sur Ubuntu 20.04

  4. Comment installer la localisation sur un serveur Ubuntu

  5. Comment installer R sur Ubuntu 18.04

Comment installer Ruby sur Ubuntu 18.04

Comment installer Consul Server sur Ubuntu 20.04

Comment installer Monit Monitoring Server sur Ubuntu 20.04.

Comment installer Let's Chat sur un Ubuntu 20.04

Comment installer TimescaleDB sur Ubuntu 20.04

Comment installer EteSync Server sur Ubuntu 20.04