Hai semuanya, apa kabar? Kali ini saya mau berbagi pengalaman (sharing) mengenai layanan Zextras Carbonio yang merupakan suatu layanan mail server (mirip dengan Zimbra). Alasannya karena saya ingin belajar lagi lebih banyak mengenai administrasi mail server.
Ada dua jenis, yaitu Carbonio dan Carbonio Community Edition (gratis). Pada tulisan kali ini kita akan coba gunakan Carbonio CE. Fitur-fitur yang diunggulkan oleh Zextras ant ara lain adalah Carbonio memiliki fitur kalendar, video chat, manajemen file, kolaborasi dokumen, dan juga mobile app.
Untuk mendapatkan instalasi Carbonio CE, buka situs resminya lalu scroll ke bagian paling bawah dan isi form-nya. Detail lebih lanjut akan dikirimkan melalui email.
Carbonio dapat dipasang pada sistem Ubuntu 20-22, serta RedHat 8-9. Untuk keperluan sistem secara umum seperti berikut:
- CPU 64 bit, 4 core atau 8 virtual core
- RAM minimum 16GB
- Disk minimum 50GB
Pengujian akan dilakukan di atas VM Ubuntu 22 pada virtualisasi Proxmox VE. Dan untuk pengujian kali ini tidak menggunakan IP publik dan pakainya IP lokal.
Sebelum instalasi dilakukan, ada beberapa hal yang perlu disiapkan terlebih dahulu:
- Hostname
- Alamat IP (file
/etc/hosts
) - DNS/
resolv.conf
- Repositori
- Disable firewall
Untuk pengujian kali ini kita atur hostname-nya sebagai mail.zaidan.web.id
dengan menggunakan perintah hostnamectl set-hostname mail.zaidan.web.id
. Untuk verifikasi/memastikan apakah hostname berhasil diganti atau tidak, gunakan perintah hostname
.
$ hostname
mail.zaidan.web.id
Menyesuaikan alamat IP dilakukan via file /etc/hosts
. Formatnya seperti berikut:
127.0.0.1 localhost
192.168.80.160 mail.zaidan.web.id mail
Pada bagian bawah file /etc/hosts
ada konfigurasi untuk IPv6, dibiarkan saja dulu.
Selanjutnya kita atur file /etc/resolv.conf
. File ini berisi konfigurasi untuk resolver Domain Name System (DNS). Isinya alamat IP dan juga nama search domain. Format filenya seperti berikut:
nameserver 127.0.0.1
nameserver 8.8.8.8
nameserver 1.1.1.1
search zaidan.web.id
Kita konfigurasi juga DNS lokalnya menggunakan dnsmasq. Pertama, kita matikan terelebih dahulu service “systemd-resolved
” (resolver DNS bawaan) dengan menggunakan perintah systemctl disable --now systemd-resolved.service
. Lalu kita instal dnsmasq
dengan menggunakan perintah apt install dnsmasq
.
Ubah isi file /etc/dnsmasq.conf
dengan format berikut:
server=8.8.8.8
mx-host=zaidan.web.id, mail.zaidan.web.id,10
host-record=zaidan.web.id, 192.168.80.160
host-record=mail.zaidan.web.id, 192.168.80.160
Selanjutnya, restart service dari dnsmasq
dengan menggunakan perintah:
systemctl enable --now dnsmasq
systemctl restart dnsmasq
Pengecekan DNS lokal:
# host -t MX zaidan.web.id
zaidan.web.id mail is handled by 10 mail.zaidan.web.id.
# host -t A mail.zaidan.web.id
mail.zaidan.web.id has address 192.168.80.160
Selanjutnya kita perlu menonaktifkan beberapa service seperti sendmail, postfix, dan ufw (apabila ada) untuk menghindari konflik service dan port yang diperlukan.
systemctl disable --now sendmail
systemctl disable --now postfix
systemctl disable --now ufw
Instalasi Carbonio CE memerlukan akses repositori Zextras. Buat file baru dengan nama /etc/apt/sources.list.d/zextras.list
dan isi dengan entri berikut:
deb [arch=amd64 signed-by=/usr/share/keyrings/zextras.gpg] https://repo.zextras.io/release/ubuntu jammy main
Selain menambahkan repositori Zextras, kita juga perlu untuk melakukan impor GPG key yang digunakan untuk verifikasi packages dari repositori.
wget -O- "https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x5dc7680bc4378c471a7fa80f52fd40243e584a21" \
| gpg --dearmor | sudo tee \
/usr/share/keyrings/zextras.gpg > /dev/null
chmod 644 /usr/share/keyrings/zextras.gpg
Untuk instalasi Carbonio, Zextras sudah menyediakan skrip yang berguna untuk memudahkan proses instalasi. Juga berikan hak akses execute untuk skrip installer-nya.
wget -c https://docs.zextras.com/carbonio-ce/html/_downloads/bed211d6fc1b9ca35f15be01eb9aa3fc/install_carbonio_ce_singleserver_ubuntu.sh
chmod +x install_carbonio_ce_singleserver_ubuntu.sh
Jalankan installer dengan menggunakan perintah ./install_carbonio_ce_singleserver_ubuntu.sh
.
Instalasi akan berjalan. Saat ada pop-up/prompt berikut, pada pengujian kali ini saya pakai opsi/pilihan default saja.
sebenarnya ada prompt lagi, dan saya pilih semua servicenya agar di-restart sekalian. juga ada prompt yang meminta kita untuk memasukkan cluster password
Kemudian, kita juga diminta untuk memasukkan IP publik. Karena pada pengujian kali ini kita tidak menggunakan IP publik, isi prompt ini dengan alamat IP lokal saja.
Instalasi pun berjalan, namun pada pengujian yang saya lakukan ada beberapa pesan sepereti ini:
ERROR: zclient.IO_ERROR (invoke Connection refused, server: localhost) (cause: java.net.ConnectException Connection refused)
Saat penyelesaian instalasi juga ada muncul password untuk service-discover dan juga database:
The service-discover password is: <password>
You can find it in file /var/lib/service-discover/password.
The PostgreSQL passowrd (DB_ADM_PWD) is: <password>
Please store it in a safe place, otherwise you will need to reset it!
Apakah instalasi sudah selesai? Kita coba saja. Buka alamat IP yang kita gunakan saat instalasi Carbonio (in this case berarti 192.168.80.160
).
Ternyata, belum bisa. Sepertinya ada kesalahan konfigurasi yang dilakukan. Hmm. Tapi saya juga sudah (sambil) tulis pos ini. Saya lanjut pos saja deh hehe.
Sampai jumpa. Bye.
Harus dicari tahu mengapa ada error, bang