Cara Install dan Konfigurasi RoundCube Webmail Client dengan Virtual User di Postfix - Part 4


Di Bagian 1 hingga 3 seri Postfix ini kami menjelaskan, langkah demi langkah, cara menyiapkan dan mengonfigurasi server email dengan pengguna virtual. Kami juga menunjukkan cara mengakses salah satu akun tersebut menggunakan Thunderbird sebagai klien email.

  1. Menyiapkan Server Email Postfix dan Dovecot dengan MariaDB – Bagian 1
  2. Konfigurasikan Pengguna Domain Virtual Postfix dan Dovecot – Bagian 2
  3. Instal dan Integrasikan ClamAV dan SpamAssassin ke Server Email Postfix – Bagian 3

Di era konektivitas ini ketika Anda mungkin memerlukan akses ke kotak masuk Anda dari mana saja (dan bukan hanya dari komputer di rumah), perangkat lunak sisi server yang dikenal sebagai klien email web memungkinkan Anda membaca dan mengirim email melalui antarmuka web.

Roundcube adalah salah satu program tersebut, dan mengingat banyak fiturnya (yang dapat Anda baca lebih lanjut di situs web proyek), itulah yang kami pilih untuk digunakan dalam tutorial ini.

Instal Roundcube Webmail untuk Postfix

Di CentOS 7 dan distribusi berbasis seperti RHEL dan Fedora, menginstal Roundcube semudah melakukan:

yum update && yum install roundcubemail

Catatan: Harap diingat bahwa Roundcube disertakan dalam repositori EPEL, yang harus sudah kami aktifkan sebagaimana dijelaskan di Bagian 1.

Di Debian 8 dan turunannya seperti Ubuntu dan Mint, Anda harus mengaktifkan backport Jessie (web) terlebih dahulu:

echo "deb http://http.debian.net/debian jessie-backports main" >> /etc/apt/sources.list

Kemudian instal Roundcube sebagai berikut:

aptitude update && aptitude install roundcube

Terlepas dari distribusi yang kita gunakan, sekarang kita perlu membuat database untuk menyimpan struktur internal Roundcube.

Di Debian 8, proses instalasi akan menangani hal ini:

Pilih Ya ketika ditanya apakah Anda ingin mengonfigurasi database Roundcube menggunakan dbconfig-common:

Pilih mysql sebagai tipe database:

Berikan kata sandi untuk pengguna root MariaDB:

Dan pilih kata sandi roundcube untuk mendaftar ke server database, lalu klik Ok:

Konfirmasikan kata sandi yang Anda masukkan pada langkah sebelumnya:

Dan tidak lama lagi, Anda akan memiliki database bernama roundcube dan tabel terkait yang dibuat secara otomatis untuk Anda:

MariaDB [(none)]> USE roundcube;
MariaDB [(none)]> SHOW TABLES;

Di CentOS 7, Anda perlu membuat database secara manual dengan masuk ke phpMyAdmin atau melalui baris perintah. Untuk singkatnya, kami akan menggunakan metode kedua yang diusulkan di sini:

mysql -u root -p
MariaDB [(none)]> CREATE DATABASE RoundCube_db;

Kemudian keluar dari prompt MariaDB dan jalankan skrip SQL berikut:

mysql -u root -p RoundCube_db < /usr/share/roundcubemail/SQL/mysql.initial.sql

Harap dicatat bahwa di Debian Anda juga dapat melakukan langkah-langkah ini secara manual. Oleh karena itu, Anda dapat mengganti nama database jika diinginkan, alih-alih menamainya secara otomatis “roundcube” seperti yang terlihat sebelumnya.

Konfigurasikan Roundcube untuk Postfix

Untuk memulai, Anda harus memperhatikan bahwa mulai RoundCube v1.0 dan seterusnya, pengaturan konfigurasi disertakan dalam satu file saja, dibandingkan dengan versi sebelumnya yang membaginya menjadi dua file.

Pertama, cari file berikut dan buat salinannya dengan nama config.inc.php di direktori yang sama. Gunakan opsi -p untuk mempertahankan mode, kepemilikan, dan stempel waktu asli:

cp -p /etc/roundcubemail/defaults.inc.php /etc/roundcubemail/config.inc.php

Selanjutnya pastikan Roundcube dapat mengakses database yang kita buat sebelumnya. Di db_dsnw, ganti pengguna dan kata sandi dengan nama pengguna dan kata sandi yang memiliki izin untuk mengakses RoundCube_db.

Misalnya, Anda bisa menggunakan akun administratif yang sama dengan yang Anda gunakan untuk masuk ke phpMyAdmin di Bagian 1, atau Anda bisa menggunakan root saja jika Anda mau.

$config['db_dsnw'] = 'mysql://user:password@localhost/RoundCube_db';

Pengaturan berikut mengacu pada nama host, port, jenis otentikasi, dan sebagainya (sudah cukup jelas, namun Anda dapat menemukan detail lebih lanjut dengan membaca komentar di file konfigurasi):

$config['default_host'] = 'ssl://mail.linuxnewz.com';
$config['default_port'] = 143;
$config['smtp_server'] = 'tls://mail.linuxnewz.com';
$config['smtp_port'] = 587;
$config['smtp_user'] = '%u';
$config['smtp_pass'] = '%p';
$config['smtp_auth_type'] = 'LOGIN';

Dua pengaturan terakhir ini (nama_produk dan agen pengguna) mengacu pada header di antarmuka web dan header email yang dikirimkan bersama pesan.

$config['product_name'] = 'Linuxnewz Webmail - Powered by Roundcube';
$config['useragent'] = 'Linuxnewz Webmail';

Agar Roundcube dapat menggunakan otentikasi pengguna virtual untuk email keluar, kita perlu mengaktifkan plugin virtuser_query (yang dapat ditemukan di /usr/share/roundcubemail/plugins):

$config['plugins'] = array('virtuser_query');
$config['virtuser_query'] = "SELECT Email FROM EmailServer_db.Users_tbl WHERE Email = '%u'";

Perhatikan bagaimana query SQL di atas menunjuk ke database EmailServer_db yang kita siapkan awalnya di Bagian 1, yang merupakan tempat penyimpanan informasi tentang pengguna virtual.

Terakhir, mirip dengan apa yang kita lakukan di Bagian 1 untuk dapat mengakses antarmuka web phpMyAdmin menggunakan browser web, mari selami file konfigurasi Roundcube/Apache di:

vi /etc/httpd/conf.d/roundcubemail.conf # CentOS 7
nano /etc/roundcube/apache.conf # Debian 8

Dan letakkan baris berikut di dalam tag yang ditunjukkan:

Debian 8:

<IfVersion >= 2.3> 
    Require ip AAA.BBB.CCC.DDD 
    Require all granted 
</IfVersion>

CentOS 7:

<IfModule mod_authz_core.c> 
    # Apache 2.4 
    Require ip AAA.BBB.CCC.DDD 
    Require all granted 
</IfModule>

Meskipun tidak sepenuhnya diwajibkan, ada baiknya Anda mengubah alias direktori Roundcube untuk melindungi diri Anda dari bot yang menargetkan /roundcube sebagai pintu terkenal untuk membobol sistem Anda. Silakan memilih alias yang sesuai dengan kebutuhan Anda (kami akan menggunakan webmail di sini):

Alias /webmail /usr/share/roundcubemail # CentOS 7
Alias /webmail /var/lib/roundcube # Debian 8

Simpan perubahan, keluar dari file konfigurasi dan mulai ulang Apache:

systemctl restart httpd # CentOS 7
systemctl restart apache2 # Debian 8

Sekarang Anda dapat membuka browser web dan mengarahkannya ke https://mail.domainanda.com/webmail dan Anda akan melihat sesuatu seperti:

Anda sekarang dapat masuk dengan salah satu akun yang kami konfigurasikan di artikel sebelumnya dan mulai mengirim dan menerima email menggunakan Roundcube dari mana saja!

Menyesuaikan Webmail Roundcube

Untungnya, antarmuka Roundcube cukup intuitif dan mudah dikonfigurasi. Pada titik ini, Anda dapat meluangkan waktu 15-30 menit untuk mengonfigurasi lingkungan dan mengenalnya. Buka Setelan untuk detail lebih lanjut:

Harap perhatikan bahwa gambar di atas menunjukkan email yang kami terima di akun ini ([email dilindungi]).

Anda dapat mengeklik Tulis dan mulai menulis email ke alamat email eksternal:

Lalu tekan Kirim dan periksa tujuannya untuk melihat apakah sudah sampai dengan benar:

Selamat! Anda telah berhasil menyiapkan Roundcube untuk mengirim dan menerima email!

Ringkasan

Pada artikel ini kami telah menjelaskan cara mengatur dan mengkonfigurasi Roundcube sebagai klien web. Saat Anda menjelajahi antarmuka Roundcube, Anda akan melihat betapa mudahnya menggunakannya, seperti yang dijelaskan dalam bantuan Webmail.

Namun, jangan ragu untuk memberi tahu kami jika Anda memiliki pertanyaan atau masalah – cukup kirimkan pesan kepada kami menggunakan formulir komentar di bawah. Kami menantikan kabar dari Anda!