Dalam tutorial ini, kami akan menunjukkan kepada Anda cara menginstal EteSync Server di Ubuntu 20.04 LTS. Bagi Anda yang belum tahu, EteSync adalah open-source, end-to-end solusi enkripsi untuk menyinkronkan kalender, kontak, tugas, dan catatan Anda. Dapat diakses melalui klien desktop, web, Android, dan iOS.
Artikel ini mengasumsikan Anda memiliki setidaknya pengetahuan dasar tentang Linux, tahu cara menggunakan shell, dan yang terpenting, Anda meng-host situs Anda di VPS Anda sendiri. Instalasi cukup sederhana dan mengasumsikan Anda sedang berjalan di akun root, jika tidak, Anda mungkin perlu menambahkan 'sudo
' ke perintah untuk mendapatkan hak akses root. Saya akan menunjukkan kepada Anda langkah demi langkah instalasi Server EteSync di Ubuntu 20.04 (Focal Fossa). Anda dapat mengikuti instruksi yang sama untuk Ubuntu 18.04, 16.04, dan distribusi berbasis Debian lainnya seperti Linux Mint.
Prasyarat
- Server yang menjalankan salah satu sistem operasi berikut:Ubuntu 20.04, 18.04, dan distribusi berbasis Debian lainnya seperti Linux Mint atau OS dasar.
- Sebaiknya Anda menggunakan penginstalan OS baru untuk mencegah potensi masalah.
- Seorang
non-root sudo user
atau akses keroot user
. Kami merekomendasikan untuk bertindak sebagainon-root sudo user
, namun, karena Anda dapat membahayakan sistem jika tidak berhati-hati saat bertindak sebagai root.
Instal Server EteSync di Ubuntu 20.04 LTS Focal Fossa
Langkah 1. Pertama, pastikan bahwa semua paket sistem Anda mutakhir dengan menjalankan apt
berikut perintah di terminal.
sudo apt update sudo apt upgrade sudo apt install python3-virtualenv python3-pip gcc build-essential libmysqlclient-dev
Langkah 2. Menginstal MariaDB.
Jalankan perintah berikut untuk menambahkan kunci GPG dan repositori MariaDB dengan perintah berikut:
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'
Selanjutnya, instal MariaDB ke sistem Anda:
sudo apt install mariadb-server
Secara default, MariaDB tidak dikeraskan. Anda dapat mengamankan MariaDB menggunakan mysql_secure_installation
naskah. Anda harus membaca dan di bawah setiap langkah dengan cermat yang akan menetapkan kata sandi root, menghapus pengguna anonim, melarang login root jarak jauh, dan menghapus database pengujian dan akses untuk mengamankan MariaDB:
mysql_secure_installation
Konfigurasikan seperti ini:
- 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
Selanjutnya, kita perlu masuk ke konsol MariaDB dan membuat database untuk EteSync. Jalankan perintah berikut:
mysql -u root -p
Ini akan meminta Anda untuk memasukkan kata sandi, jadi masukkan kata sandi root MariaDB Anda dan tekan Enter. Setelah Anda masuk ke server basis data, Anda perlu membuat basis data untuk Instalasi 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;
Langkah 3. Menginstal EteSync Server di Ubuntu 20.04.
Sekarang kami mengunduh versi terbaru EteSync dari GitHub:
git clone https://github.com/etesync/server.git etebase
Selanjutnya, ubah direktori dan buat virtual Python:
cd etebase virtualenv -p python3 .venv source .venv/bin/activate pip install -r requirements.txt
Setelah itu, salin contoh file konfigurasi dan edit konfigurasinya:
cp etebase-server.ini.example etebase-server.ini nano etebase-server.ini
Ubah baris berikut:
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
Simpan dan tutup file kemudian instal modul lain menggunakan perintah berikut di bawah ini:
pip3 install daphne mysqlclient aioredis
Selanjutnya, buat file statis dan migrasikan database dengan perintah berikut:
./manage.py collectstatic ./manage.py migrate
Kemudian, jalankan server EteSync dengan perintah berikut:
daphne -b 0.0.0.0 -p 8001 etebase_server.asgi:application
Langkah 4. Buat File Layanan Systemd untuk EteSync.
Sekarang buat systemd
file unit layanan untuk EteSync dengan perintah berikut:
nano /etc/systemd/system/etebase.service
Tambahkan baris berikut:
[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
Simpan dan tutup file, lalu muat ulang systemd
daemon dengan perintah berikut:
sudo systemctl daemon-reload sudo systemctl start etebase sudo systemctl enable etebase
Langkah 5. Konfigurasi Nginx.
Sekarang kita menginstal Nginx menggunakan perintah berikut di bawah ini:
sudo apt install nginx
Selanjutnya, buat file konfigurasi virtual host Nginx dengan perintah berikut:
nano /etc/nginx/conf.d/etebase.conf
Tambahkan baris berikut:
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; } }
Simpan dan tutup file, lalu mulai ulang layanan Nginx untuk menerapkan perubahan konfigurasi:
sudo systemctl restart nginx
Langkah 6. Buat Akun Pengguna.
Pertama, kita ubah direktori menjadi etebase dan aktifkan virtual environment jika tidak diaktifkan:
cd etebase source .venv/bin/activate
Kemudian, buat superuser dengan perintah berikut:
./manage.py createsuperuser
Berikan nama pengguna, kata sandi, dan email Anda seperti yang ditunjukkan di bawah ini:
Username: admin Email address: admin@your-domain.com Password: Password (again): Superuser created successfully.
Langkah 7. Akses Antarmuka Web Server EteSync.
Setelah berhasil diinstal, buka browser web Anda dan akses antarmuka web EteSync menggunakan URL http://etesync.your-domain.com/admin
. Anda akan melihat halaman berikut:
Selamat! Anda telah berhasil menginstal EteSync. Terima kasih telah menggunakan tutorial ini untuk menginstal EteSync Server pada sistem Focal Fossa Ubuntu 20.04 LTS. Untuk bantuan tambahan atau informasi yang berguna, kami menyarankan Anda untuk memeriksa EteSync resmi situs web.