Panduan Cara Install Roundcube Webmail di Ubuntu Server 20.04

 

Cara install dan konfigurasi Roundcube Webmail pada Ubuntu Server 20.04 di Dedicated server atau VPS.

1. Install web server Nginx, MariaDB MySQL, PHP dan Composer

Perbarui database repositori:

$ sudo apt update

Karena kita telah menginstall NginX pada part 2 maka kita lanjutkan dengan menginstall MariaDB sebagai database server dan PHP7.4 beserta semua modul yang diperlukan. Kita juga perlu install composer untuk menginstall Roundcube.

$ sudo apt -y install php7.4-fpm php7.4-mysql php-net-ldap2 php-net-ldap3 php-imagick php7.4-common php7.4-gd php7.4-imap php7.4-json php7.4-curl php7.4-zip php7.4-xml php7.4-mbstring php7.4-bz2 php7.4-intl php7.4-gmp mariadb-server composer

2. Unduh Roundcube Webmail dari Ubuntu Server

Unduh dengan menggunakan perindah wget:

$ wget https://github.com/roundcube/roundcubemail/releases/download/1.4.6/roundcubemail-1.4.6-complete.tar.gz

Di atas kita mengunduh versi 1.4.6 yang merupakan versi terbaru saat artikel ini dibuat. Silahkan ubah versi tersebut jika ada rilis versi terbaru.

Ekstrak file yang telah diunduh tersebut:

$ tar xvf roundcubemail-1.4.6-complete.tar.gz

Pindahkan ke direkotori www agar nanti kita jadikan sebagai webroot webmail kita:

$ sudo mv roundcubemail-1.4.6 /var/www/roundcube

3. Install dan Update Roundcube Menggunakan Composer

Jalankan perintah ini:

$ cd /var/www/roundcube
$ composer install --no-dev

Ubah kepemilikan direktori roundcube:

$ sudo chown www-data:www-data -R /var/www/roundcube

4. Buat Database untuk Roundcube

Jalankan perintah:

$ sudo mariadb

Lakukan perintah MySQL berikut. Ubah nama_databasenama_user_database dan password_database sesuai keinginan anda.

mysql> CREATE DATABASE nama_database DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
mysql> GRANT ALL ON nama_database.* TO 'nama_user_database'@'localhost' IDENTIFIED BY 'password_database';
mysql> flush privileges;
mysql> exit;

Import sql default Roundcube ke database yang baru dibuat misalkan nama databasenya nama_database:

$ sudo mysql nama_database < /var/www/roundcube/SQL/mysql.initial.sql

5. Buat Subdomain untuk Webmail di DNS Record

Karena pada praktik sebelumnya kita menggunakan DNS Cloudflare sebagai penyimpan DNS record kita maka buka kembali akun Cloudflare.

Login ke akun Cloudflare. Masuk ke menu DNS lalu klik Add Record.

Pada Type pilih A. Pada Name masukkan nama subdomain sesuai keinginan misalnya saya ingin mengakses webmailnya nanti di webmail.itkoding.com maka masukkan webmail pada Name. Pada IPv4 Address isi IP address dari mail server. Kemudian klik pada simbol awan berwarna orange agar CDN tidak aktif. Lalu klik Save.

Membuat subdomain di dns cloudflare

6. Buat Server Block Nginx untuk Webmail

Buat file baru di /etc/nginx/sites-available/ sesuai dengan nama subdomain pada langkah 5:

$ sudo nano /etc/nginx/sites-available/webmail.itkoding.com

Masukkan kode di bawah ini (jangan lupa sesuaikan dengan nama subdomain anda di bagian server_name:

server {
        listen 80;
        root /var/www/roundcube;
        index index.php index.html index.htm index.nginx-debian.html;
        server_name webmail.itkoding.com;
 
 error_log /var/log/nginx/roundcube.error;
 access_log /var/log/nginx/roundcube.access;

        location / {
                try_files $uri $uri/ /index.php?$args;
        }

        location ~ \.php$ {
                include /etc/nginx/snippets/fastcgi-php.conf;
                fastcgi_pass unix:/run/php/php7.4-fpm.sock;
        }
}

Simpan lalu tutup file.

Aktifkan server block dengan link file ke sites-enabled:

$ sudo ln -s /etc/nginx/sites-available/webmail.itkoding.com /etc/nginx/sites-enabled/

Reload Nginx:

$ sudo systemctl reload nginx

7. Aktifkan HTTPS untuk Webmail

Pada part 2 kita telah install Certbot maka selanjutnya kita hanya perlu request SSL. Pastikan telah mengubah email dan nama subdomain anda sebelum menjalankan perintah di bawah ini:

$ sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email paijo@itkoding.com -d webmail.itkoding.com

Reload nginx:

$ sudo systemctl reload nginx

Izinkan akses HTTPS di port 443 pada firewall UFW:

$ sudo ufw allow 'Nginx Full'

8. Install Roundcube Melalui Web Browser

Buka alamat installer Roundcube pada subdomain anda. Format urlnya adalah subdomain.domainanda.com/installer misalnya webmail.itkoding.com/installer maka akan tampil form untuk instalasi Roundcube.

Scroll ke bawah lalu klik Next. Kemudian pada product_name isikan judul untuk webmail anda sesuai selera. Misalnya ITKoding WebMail.

Opsi product_name pada roundcube

Scrool lagi ke bawah hingga menemukan Database setup. Isikan informasi database yang telah kita buat di langkah nomor 4. Masukkan localhost pada Database server. Masukkan nama database anda di Database name, nama user database anda di Database user name dan password database di Database password.

Pengaturan database di roundcube

Pada bagian IMAP Settings masukkan hostname mail server anda beserta SSL di default_host misalnya pada praktik ini adalah itkodingserver.itkoding.com maka ssl://itkodingserver.itkoding.com lalu isi port dengan 993. Jika lupada dengan hostname anda silahkan ketikkan hostname --fqdn di server anda.

Konfigurasi imap pada roundcube

Pada bagian SMTP setting masukkan TLS hostname misalnya tls://itkodingserver.itkoding.com kemudian isi port dengan 587.

Konfigurasi smtp di roundcube

Lalu scroll ke bawah dan centang semua opsi plugin yang ada. Klik Create config maka secara otomatis akan dibuat dan disimpan di /var/www/roundcube/config/config.inc.php. Lalu Klik Continue. Maka selanjutnya kita akan dibawa ke halaman test.

Lalu silahkan test untuk mengirimkan email dengan mengisi Username yaitu email anda misalnya paijo@itkoding.com dan passwordnya. Kemudian isi Sender juga dengan alamat email anda misalnya paijo@itkoding.com lalu Recipient yaitu email penerima. Lalu klik Send test mail. Jika berhasil akan tampil SMTP send: OK.

Percobaan kirim email saat instalasi roundcube

Lalu lakukan test juga pada IMAP untuk memastikan konfigurasi yang kita lakukan sudah benar.

9. Hapus Direktori Installer

Hapus direktori installer dengan cara:

$ sudo rm /var/www/roundcube/installer/ -r

10. Login ke WebMail

Sekarang kita bisa mencoba untuk login ke Webmail dan test mengirim maupun menerima email. Buka alamat Webmail anda misalnya webmail.itkoding.com. Masukkan username dan password. Lalu klik Login.

Halaman login pada roundcube

Akan ada tampilan Please complete your sender identity. Silahkan isi sesuai dengan data diri anda. Lalu klik Save.

Tampilan inbox di webmail roundcube

Jika dilihat tampilan Roundcube pada versi ini memang sudah sangat modern dan mobile friendly. Itulah mengapa Roundcube sangat populer digunakan dikalangan Open Source. Tentunya sampai saat ini Roundcube masih terus dikembangkan. Tidak seperti Squirrelmail yang sudah berhenti pengembangannya padahal dahulu sangat populer dikalangan Open Source.

Komentar

Postingan populer dari blog ini

Membuat Localhost Bisa Diakses dari Internet (Online)