GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo instalar el servidor EteSync en Ubuntu 20.04

EteSync es una herramienta gratuita, de código abierto y de extremo a extremo que se utiliza para sincronizar sus contactos, calendarios, tareas y notas. Se puede integrar fácilmente con sus aplicaciones existentes. Solo necesita una contraseña para iniciar sesión y cifrar. EteSync tiene la capacidad de compartir datos con otros usuarios y sincronización entre múltiples dispositivos. También proporciona un complemento para Mozilla Thunderbird y un cliente para Web, Desktop, Android e iOS.

En esta publicación, le mostraremos cómo instalar EteSync en el servidor Ubuntu 20.04.

Requisitos

  • Un nuevo servidor Ubuntu 20.04 en Atlantic.Net Cloud Platform
  • Un nombre de dominio válido apuntado con su servidor
  • Una contraseña de root configurada en su servidor

Paso 1:crear el servidor en la nube de Atlantic.Net

Primero, inicie sesión en su servidor en la nube de Atlantic.Net. Cree un nuevo servidor, eligiendo Ubuntu 20.04 como sistema operativo con al menos 2 GB de RAM. Conéctese a su servidor en la nube a través de SSH e inicie sesión con las credenciales resaltadas en la parte superior de la página.

Una vez que haya iniciado sesión en su servidor Ubuntu 20.04, ejecute el siguiente comando para actualizar su sistema base con los últimos paquetes disponibles.

apt-get update -y

Paso 2:instalar y configurar la base de datos MariaDB

EteSync utiliza MariaDB como base de datos, por lo que debe instalar la última versión de MariaDB en su servidor.

Primero, instala las dependencias requeridas con el siguiente comando:

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

A continuación, descargue y agregue la clave GPG y el repositorio con el siguiente 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'

A continuación, instale la última versión del servidor MariaDB con el siguiente comando:

apt-get install mariadb-server -y

A continuación, conéctese a MariaDB y cree una base de datos y un usuario:

mysql

Una vez conectado, cree una base de datos y un usuario con el siguiente comando:

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

A continuación, otorgue todos los privilegios a la base de datos de etebase con el siguiente comando:

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

A continuación, elimine los privilegios y salga de MariaDB con el siguiente comando:

flush privileges;
exit;

Paso 3:instalar EteSync

Primero, deberá instalar todas las dependencias de Python en su servidor. Puede instalarlos todos con el siguiente comando:

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

Una vez instaladas todas las dependencias, descarga la última versión de EteSync con el siguiente comando:

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

A continuación, cambie el directorio al directorio descargado y cree un entorno virtual de Python con el siguiente comando:

cd etebase
virtualenv -p python3 .venv

A continuación, active el entorno virtual con el siguiente comando:

source .venv/bin/activate

Luego, instala todas las dependencias requeridas con el siguiente comando:

pip install -r requirements.txt

A continuación, cambie el nombre del archivo de configuración de ejemplo:

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

A continuación, edite el archivo de configuración con el siguiente comando:

nano etebase-server.ini

Cambie las siguientes líneas:

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

Guarde y cierre el archivo, luego instale el servidor de socket web Django y el cliente MariaDB con el siguiente comando:

pip3 install daphne mysqlclient aioredis

A continuación, cree los archivos estáticos de Django con el siguiente comando:

./manage.py collectstatic

A continuación, inicialice la aplicación con el siguiente comando:

./manage.py migrate

A continuación, inicie el servidor EteSync con el siguiente comando:

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

Deberías obtener el siguiente resultado:

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

Presione CTRL+C para detener el servidor.

Paso 4:cree un archivo de servicio de Systemd para EteSync

A continuación, deberá crear un archivo de servicio systemd para EteSync. Puedes crearlo con el siguiente comando:

nano /etc/systemd/system/etebase.service

Agregue las siguientes líneas:

[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

Guarde y cierre el archivo, luego vuelva a cargar el demonio systemd con el siguiente comando:

systemctl daemon-reload

A continuación, inicie el servicio EteSync y habilítelo para que se inicie al reiniciar el sistema con el siguiente comando:

systemctl start etebase
systemctl enable etebase

A continuación, verifique el estado del servicio EteSync con el siguiente comando:

systemctl status etebase

Deberías obtener el siguiente resultado:

● 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

Paso 5:configurar Nginx para EteSync

A continuación, instale Nginx con el siguiente comando:

apt-get install nginx -y

Una vez instalado, cree un archivo de configuración de host virtual Nginx con el siguiente comando:

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

Agregue las siguientes líneas:

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

Guarde y cierre el archivo, luego reinicie el servicio Nginx para aplicar los cambios:

systemctl restart nginx

Paso 6:crear un usuario administrador

A continuación, deberá crear un usuario administrativo para EteSync.

Primero, cambie el directorio a etebase y active el entorno virtual si no está activado:

cd etebase
source .venv/bin/activate

A continuación, cree un superusuario con el siguiente comando:

./manage.py createsuperuser

Proporcione toda la información como se muestra a continuación:

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

Paso 7:acceda a EteSync

Ahora, abra su navegador web y acceda a su interfaz web EteSync usando la URL http://etebase.example.com/admin . Debería ver la siguiente página:

Proporcione su nombre de usuario, contraseña y haga clic en Iniciar sesión botón. Debería ver el panel de EteSync en la siguiente página:

Conclusión

¡Felicidades! Ha instalado y configurado con éxito EteSync en el servidor Ubuntu 20.04. ¡Ahora puede sincronizar fácilmente sus contactos, calendarios, tareas y notas utilizando el alojamiento VPS de Atlantic.Net!


Linux
  1. Cómo instalar el servidor EteSync en Ubuntu 20.04

  2. Cómo instalar TeamSpeak Server en Ubuntu 18.04 y 20.04

  3. Cómo instalar MongoDB en Ubuntu 20.04

  4. Cómo instalar la ubicación en un servidor Ubuntu

  5. Cómo instalar R en Ubuntu 18.04

Cómo instalar Ruby en Ubuntu 18.04

Cómo instalar el servidor Consul en Ubuntu 20.04

Cómo instalar Monit Monitoring Server en Ubuntu 20.04.

Cómo instalar Let's Chat en un Ubuntu 20.04

Cómo instalar TimescaleDB en Ubuntu 20.04

Cómo instalar el servidor EteSync en Ubuntu 20.04