GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara Memasang Kalender Radicale (CalDAV dan CardDAV) di Ubuntu 20.04

Radicale adalah server CalDAV (Kalender, daftar tugas) dan CardDav (kontak) sumber terbuka dan gratis. Ini bertujuan untuk menjadi aplikasi server kecil dan ringan (CalDAV dan CardDav), namun kuat dan bekerja di luar kotak. Radicale memungkinkan Anda untuk berbagi kalender dan daftar kontak melalui CalDAV, CardDAV, dan HTTPS. Dan yang paling penting, itu bisa aman melalui koneksi dan otentikasi TLS. Juga, ini bekerja dengan banyak klien CalDAV dan CardDAV seperti gnome-calendar, evolution, Mozilla thunderbird, DAVx (untuk android), dll.

Radicale hadir dengan konfigurasi sederhana, dan mudah untuk dikonfigurasi dan diinstal. Radicale ditulis dengan Python, berjalan di sistem operasi seperti Linux, BSD, macOS, dan Windows.

Dalam tutorial ini, Anda akan belajar cara menginstal dan mengkonfigurasi Radicale di Ubuntu 20.04.

Prasyarat

  • Ubuntu 20.04. Pastikan paket dan repositori diperbarui.
  • Pengguna root atau pengguna dengan hak akses root. Ini akan digunakan untuk menginstal paket baru dan mengedit konfigurasi sistem.

Memasang Passlib dan Perpustakaan Bcrypt

Pada awalnya, Anda akan menginstal beberapa dependensi paket untuk instalasi radikal. Anda akan menginstal modul python-pip, python-passlib, kemudian menginstal modul python bcrypt dari PyPI (repositori python).

1. Jalankan perintah apt berikut untuk menginstal modul python-pip dan python-passlib ke sistem Ubuntu.

sudo apt install python3-pip python3-passlib

Ketik 'Y ' dan tekan 'Enter ' untuk menginstal semua paket tersebut.

2. Jika instalasi selesai, jalankan perintah pip di bawah ini untuk menginstal modul Python bcrypt.

sudo pip3 install bcrypt

Sekarang Anda akan melihat output berikut.

Menginstal dan Mengonfigurasi Radicale

Secara default, paket radikal tersedia di repositori Ubuntu.

1. Jalankan perintah apt di bawah ini untuk menginstal radikal pada sistem Ubuntu.

sudo apt install radicale

Ketik 'Y ' dan tekan 'Enter ' untuk menginstal paket radikal.

2. Setelah instalasi selesai, Anda akan mengedit konfigurasi radikal default yang tersedia di '/etc/radicale/config '.

Edit konfigurasi radikal menggunakan perintah nano di bawah ini.

sudo nano /etc/radicale/config

3. Di [server] bagian, ubah konfigurasi default menggunakan konfigurasi berikut.

[server]

host = 127.0.0.1:5232
max_connections = 20
max_content_length = 100000000
timout = 30

Radikal server hanya akan berjalan pada alamat IP lokal karena kami akan menempatkan server web Apache sebagai proxy terbalik di depannya.

4. Selanjutnya beri komentar pada konfigurasi SSL seperti di bawah ini, karena enkripsi SSL akan dilakukan melalui reverse proxy Apache.

# SSL flag, enable HTTPS protocol
#ssl = False

# SSL certificate path
#certificate = /etc/ssl/certs/ssl-cert-snakeoil.pem

# SSL private key
#key = /etc/ssl/private/ssl-cert-snakeoil.key

5. Setelah itu, pindah ke '[auth]' dan ubah konfigurasi default sebagai berikut.

[auth]
type = htpasswd
htpasswd_filename = /etc/radicale/users
htpasswd_encryption = bcrypt

Jenis otentikasi yang kami gunakan adalah 'htpasswd ' dengan enkripsi kuat 'bcrypt ', dan daftar pengguna akan disimpan di '/etc/radicale/users ' berkas.

6. Selanjutnya pada konfigurasi paling bawah Anda akan melihat '[storage] ' bagian. Ubah konfigurasi seperti di bawah ini untuk mengaktifkan backend penyimpanan radikal.

[storage]
type = multifilysystem
filesystem_folder = /var/lib/radicale/collections
filesystem_locking = True

Backend penyimpanan default untuk radikal adalah 'multifilesystem', dan semua data pengguna tersedia di direktori '/var/lib/radicale/collections'.

Sekarang tekan 'Ctrl+x ' dan ketik 'y' , lalu tekan tombol 'Enter ' untuk menyimpan dan keluar.

Hasilkan Pengguna untuk Radicale

Pada tahap ini, konfigurasi radikal selesai. Dan untuk saat ini, Anda akan membuat pengguna dan kata sandi baru untuk radikal, yang dapat dibuat menggunakan perintah 'htpasswd' (bagian dari paket 'apache2-utils').

1. Jalankan perintah apt di bawah ini untuk menginstal 'apache2-utils ' paket.

sudo apt install apache2-utils

Ketik 'Y ' dan tekan 'Enter ' untuk melanjutkan penginstalan.

2. selanjutnya buat user baru (untuk contoh ini user 'johndoe') dan password dengan menjalankan perintah htpasswd di bawah ini.

sudo htpasswd -B -c /etc/radicale/users johndoe

Sekarang ketik dan ulangi kata sandi untuk pengguna 'johndoe '.

Opsi penting yang harus Anda ketahui:

  • -Opsi B - ini akan memaksa untuk menggunakan enkripsi kuat 'bcrypt', bukan 'md5' default.
  • -c opsi - File kata sandi yang ingin Anda buat. Nama pengguna dan kata sandi tersedia di file itu.

Untuk menambahkan pengguna lain, jalankan saja perintah di atas dan ubah nama pengguna dengan milik Anda.

Opsional, periksa file sandi yang dihasilkan '/etc/radicale/users ' menggunakan perintah cat seperti di bawah ini.

cat /etc/radicale/users

3. Setelah membuat file pengguna dan kata sandi, aktifkan layanan radikal untuk memulai secara otomatis saat boot.

sudo systemctl enable radicale

4. Sekarang jalankan layanan radikal dan periksa status layanan dengan menjalankan perintah berikut.

sudo systemctl start radicale
sudo systemctl status radicale

Jika layanan radikal Anda aktif dan berjalan, Anda akan melihat output serupa seperti di bawah ini. Jika tidak, Anda akan melihat status layanan radikal sebagai 'gagal' di bagian bawah pesan log.

Setup Apache sebagai Reverse Proxy untuk Radicale

Pada tahap ini, Anda akan menginstal dan mengonfigurasi Apache sebagai proxy terbalik untuk radikal.

1. Instal paket Apache dengan menjalankan perintah apt di bawah ini.

sudo apt install apache2

Sekarang ketik 'Y ' dan tekan 'Enter ' untuk melanjutkan penginstalan.

2. Setelah instalasi selesai, jalankan perintah berikut untuk mengaktifkan beberapa modul proxy untuk Apache dan mengaktifkan modul mod_ssl.

sudo a2enmod proxy proxy_ajp proxy_http rewrite deflate headers proxy_balancer proxy_connect proxy_html ssl

3. Sekarang ubah direktori kerja menjadi '/etc/Apache2/sites-available ' dan buat konfigurasi host virtual baru 'radicale.conf '.

cd /etc/apache2/sites-available/
sudo nano radicale.conf

Salin dan tempel konfigurasi berikut dan pastikan untuk mengubah nama domain dengan nama Anda sendiri.

<VirtualHost *:80>
        
    ServerName cal.domain-name.io
    ServerAdmin [email protected]

    ErrorLog ${APACHE_LOG_DIR}/cal-dmain-name.io.error.log
    CustomLog ${APACHE_LOG_DIR}/cal-dmain-name.io.access.log combined

    ProxyRequests Off
    <Proxy *>
        Order deny,allow
        Allow from all
    </Proxy>

    RewriteEngine On
    RewriteRule ^/radicale$ /radicale/ [R,L]

    <Location "/radicale/">
        AuthType     Basic
        AuthName     "Radicale - Password Required"
        AuthUserFile "/etc/radicale/users"
        Require      valid-user

        ProxyPass        http://localhost:5232/ retry=0
        ProxyPassReverse http://localhost:5232/
        RequestHeader    set X-Script-Name /radicale
        RequestHeader    set X-Remote-User expr=%{REMOTE_USER}
    </Location>

    <Location />
        Order allow,deny
        Allow from all
    </Location>

</VirtualHost>

Simpan konfigurasi dengan menekan 'Ctrl+x ' dan ketik 'y ', lalu tekan 'Enter '.

Dengan menggunakan konfigurasi ini, radikal akan tersedia di jalur domain 'domain.com/radicale', bukan di jalur akar nama domain.

4. Selanjutnya, jalankan perintah berikut untuk mengaktifkan konfigurasi virtual host 'radicale.conf' .

sudo a2ensite radicale.conf

5. Setelah itu verifikasi konfigurasi Apache dan pastikan tidak ada error, kemudian restart service Apache untuk menerapkan konfigurasi virtual host yang baru.

sudo apachectl configtest
sudo systemctl restart apache2

Jika konfigurasi Apache Anda benar, Anda akan melihat pesan 'Sintaks OK ' setelah menjalankan perintah 'apachectl'. Dan di bawah ini adalah output serupa yang akan Anda dapatkan.

Buat SSL Letsencrypt

Untuk tahap ini, Anda akan mengamankan instalasi radikal menggunakan SSL Letsencrypt.

1. Jalankan perintah berikut untuk menginstal plugin certbot dan certbot-apache.

sudo apt install certbot python-certbot-apache

2. Setelah instalasi selesai, buat SSL Letsencrtypt baru untuk nama domain radikal menggunakan perintah certbot di bawah ini.

sudo certbot --apache -d domain-name.io -d www.domain-name.io

Dan Anda akan ditanya beberapa pertanyaan di bawah ini.

  • Alamat email:saat sertifikat SSL kedaluwarsa, Anda akan melihat email ini.
  • Letsencrypt TOS (Persyaratan Layanan):ketik 'A ' untuk setuju.
  • Berbagi email dengan EFF:Anda dapat memilih 'N ' untuk tidak.
  • Secara otomatis mengalihkan HTTP ke HTTPS:pilih nomor '2' untuk mengaktifkan pengalihan otomatis.

Setelah proses selesai, Anda akan melihat sertifikat SSL tersedia di direktori '/etc/letsencrypt/live/domain.com'. Dan virtual host Apache telah berubah dengan konfigurasi tambahan dari letsencrypt.

Verifikasi Pemasangan

Buka browser web Anda dan ketik instalasi URL radikal di bilah alamat.

https://cal.domain-name.io/radicale/

Sekarang Anda akan dimintai pengguna dan kata sandi untuk otentikasi dasar Apache.

Ketikkan pengguna dan sandi Anda, lalu klik 'Masuk '.

Dan Anda akan mendapatkan halaman login Radicale seperti di bawah ini.

Ketikkan pengguna dan kata sandi Anda untuk Radicale dan klik 'Berikutnya '.

Setelah Anda masuk, klik tautan 'Buat buku alamat atau kalender baru '.

Ubah judul, deskripsi, jenis, dan warna Anda sendiri, lalu klik tombol 'Buat '.

Sekarang Anda akan diarahkan ke dasbor pengguna radikal seperti di bawah ini.

Kesimpulan

Selamat! Sekarang Anda telah berhasil menginstal Radicale di Ubuntu 20.04 Server. Untuk tahap selanjutnya, Anda dapat terhubung ke server radikal baru Anda dengan aman menggunakan klien CalDAV/CardDAV dari komputer atau smartphone android Anda.


Ubuntu
  1. Cara Menginstal Node.js &NPM di Ubuntu 18.04 dan 20.04

  2. Cara Menginstal PHP 7.4 dan 8.0 Di Ubuntu 18.04 atau 20.04

  3. Cara Menginstal Anaconda di Ubuntu 18.04 dan 20.04

  1. Cara Menginstal dan Menggunakan Anggur di Ubuntu 20.04

  2. Cara Menginstal Node.js dan npm di Ubuntu 18.04

  3. Cara Menginstal dan Mengonfigurasi Redis di Ubuntu 18.04

  1. Cara Menginstal dan Mengkonfigurasi Redmine di Ubuntu 18.04

  2. Cara Menginstal dan Menggunakan FFmpeg di Ubuntu 18.04

  3. Cara Menginstal dan Mengonfigurasi Samba di Ubuntu 18.04