Instal 'iRedMail' (Server Email Berfitur Lengkap) dengan Domain Virtual, Webmail, SpamAssassin & ClamAV di Linux


Setelah layanan HTTP dan DNS bayangan, email (SMTP, POP, IMAP, dan semua protokol email terenkripsi terkait) adalah salah satu layanan yang paling banyak digunakan di Internet, dan juga, salah satu yang paling masuk akal, karena spam dan server email relai terbuka.

Tutorial ini akan memandu Anda menginstal server email lengkap dengan perangkat lunak MTA, MDA, dan MUA dalam beberapa menit di RHEL, CentOS, Linux Ilmiah dan Debian, Ubuntu, Linux Mint dengan Postfix, Domain Virtual dan Pengguna dengan MySQL, Dovecot – dukungan untuk POP3/POP3S, IMAP/IMAPS, Roundcube – Webmail dan juga, spam email dan pemindaian virus dengan SpamAssassin dan ClamAV, semuanya diinstal menggunakan satu paket perangkat lunak yang disebut 'iRedMail'.

Apa itu iRedMail

iRedMail adalah solusi server email berfitur lengkap Open Source yang dapat menghemat banyak waktu bagi administrator sistem untuk konfigurasi kompleks, memiliki dukungan untuk semua distribusi Linux utama dan dikirimkan bersama paket Linux berikut.

  1. Postfix: Layanan SMTP – MTA default.
  2. Tempat perlindungan merpati: POP3/POP3S, IMAP/IMAPS, layanan Managesieve – MDA default.
  3. Apache: Server web.
  4. MySQL/PostgreSQL: Menyimpan data aplikasi dan/atau akun email.
  5. OpenLDAP: Menyimpan akun email.
  6. Kebijakan: Server kebijakan Postfix.
  7. Amavisd: Antarmuka antara Postfix dan SpamAssassin, ClamAV. Digunakan untuk pemindaian spam dan virus.
  8. Roundcube: Email web – MUA default.
  9. Awstats: Penganalisis log Apache dan Postfix.
  10. Fail2ban: memindai file log (mis. /var/log/maillog) dan melarang IP yang menunjukkan upaya sistem berbahaya.

Persyaratan

  1. Instalasi minimal CentOS 6.5 – Panduan Instalasi CentOS 6.5
  2. Data MX DNS valid yang mengarah ke server email yang bertanggung jawab atas nama domain Anda.

Selain itu, tutorial ini dirancang untuk tujuan pengujian dan pembelajaran saja dan tidak menggunakan data MX yang valid, atau domain DNS yang valid, semua konfigurasi dibuat secara lokal menggunakan penerima virtual dengan MySQL (hanya dapat menerima atau mengirim email antar pengguna domain lokal – nama domain lokal disediakan dari file host) namun perlu diketahui bahwa, meskipun sistem kami tidak dapat menerima email dari domain internet, sistem kami sebenarnya dapat meneruskan email ke server email domain tersebut melalui Postfix MTA, bahkan jika Anda berada di ruang alamat IP pribadi , tanpa data MX yang valid dan menggunakan domain fiktif, jadi perhatikan baik-baik apa yang Anda lakukan.

Langkah 1: Konfigurasi Awal dan Alamat IP Statis

1. Setelah reboot pertama, login dengan akun root Anda dan pastikan sistem Anda mutakhir dan instal beberapa paket berguna yang diperlukan untuk penggunaan nanti.

Di RHEL/CentOS/Linux Ilmiah
yum update && yum upgrade
yum install nano wget bzip2
Di Debian/Ubuntu/Linux Mint
apt-get update && apt-get upgrade
apt-get install nano wget bzip2

2. Karena kotak ini berfungsi seperti Server Email, IP statis perlu dikonfigurasi pada Antarmuka Jaringan. Untuk menambahkan IP statis, buka dan edit file konfigurasi NIC Anda yang terletak di jalur /etc/sysconfig/network-scripts/ dan tambahkan nilai berikut.

Di RHEL/CentOS/Linux Ilmiah
nano /etc/sysconfig/network-scripts/ifcfg-eth0

Gunakan file ini sebagai templat dan ganti dengan nilai penyesuaian Anda.

DEVICE="eth0"
BOOTPROTO="static"
HWADDR="00:0C:29:01:99:E8"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
UUID="7345dd1d-f280-4b9b-a760-50208c3ef558"
NAME="eth0"
IPADDR=192.168.1.40
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=192.168.1.1
DNS2=8.8.8.8

Setelah Anda selesai mengedit file NIC Anda, buka file jaringan dari lokasi yang sama seperti di atas dan tambahkan nama host server Anda yang tidak memenuhi syarat pada direktif HOSTNAME.

nano /etc/sysconfig/network-scripts/network

Di Debian/Ubuntu/Linux Mint
nano /etc/network/interfaces

Ganti nilai berikut dengan pengaturan Anda.

auto eth0
iface eth0 inet static
  address 192.168.1.40
  netmask 255.255.255.0
  gateway 192.168.1.1
  dns-nameservers 192.168.1.1
  dns-search 8.8.8.8

Setelah Anda selesai dengan file jaringan Anda, sekarang tambahkan nama host Anda di file /etc/hostname.

nano /etc/hostnames

3. Kemudian buka file /etc/resolv.conf dan tambahkan seluruh sistem server IP DNS Anda seperti pada gambar di bawah.

nano /etc/resolv.conf

Tambahkan konten berikut dengan server nama favorit Anda.

search mydomain.lan
nameserver 8.8.8.8
nameserver 8.8.8.8

4. Setelah semua konfigurasi di atas ditulis ke file terkait, mulai ulang layanan jaringan Anda untuk menerapkan konfigurasi baru dan verifikasi menggunakan perintah ping dan ifconfig.

service network restart	[On RedHat based systems]

service networking restart	[On Debian based systems]

ifconfig

5. Sekarang setelah jaringan statis Anda beroperasi penuh, edit file /etc/hosts dan tambahkan nama host Anda yang tidak memenuhi syarat dan FQDN seperti contoh di bawah.

nano /etc/hosts
127.0.0.1   centos.mydomain.lan centos localhost localhost.localdomain
192.168.1.40 centos.mydomain.lan centos

Untuk memverifikasi masalah konfigurasi nama host Anda, jalankan perintah nama host dan nama host –f.

hostname
hostname -f

6. Paket berguna lainnya adalah bash-completion (urutan perintah pelengkapan otomatis menggunakan kunci [Tab]) yang disediakan oleh repositori EPEL di bawah RedHat sistem berbasis dan kemudian perbarui sumber Anda.

Di RHEL/CentOS/Linux Ilmiah
rpm –Uvh http://fedora.mirrors.romtelecom.ro/pub/epel/6/i386/epel-release-6-8.noarch.rpm
yum repolist && yum upgrade

Setelah sumber Anda diperbarui, instal utilitas bash-completion (jawaban Ya pada semua pertanyaan).

yum install bash-completion

Di Debian/Ubuntu/Linux Mint

Paket penyelesaian bash pada sistem berbasis Debian dapat diinstal dengan mudah menggunakan perintah berikut.

apt-get install bash-completion

7. Langkah terakhir adalah menambahkan pengguna sistem dengan hak akses root. Pertama tambahkan pengguna dan atur kata sandinya.

adduser your_user
passwd your_user

Setelah pengguna Anda ditambahkan, buka file /etc/sudoers dan hapus komentar pada grup %wheel, lalu tambahkan pengguna yang baru Anda buat ke grup wheel.

nano /etc/sudoers

Cari dan batalkan komentar pada baris grup roda hingga terlihat seperti ini.

%wheel                ALL=(ALL)            ALL

Tutup file dan tambahkan pengguna Anda ke grup roda dengan mengeluarkan perintah berikut.

usermod -aG wheel your_user

8. Sebelum kita dapat mulai mengunduh dan menginstal perangkat lunak iRedMail, reboot sistem Anda, lalu login dengan pengguna yang baru Anda buat dan pastikan semuanya berfungsi penuh.

Langkah 2: Instal iRedMail

9. Untuk mengunduh paket arsip iRedMail Anda harus mengunjungi bagian halaman unduh resminya atau Anda dapat menggunakan perintah wget untuk mengunduh versi terakhir ( 0.8.7 pada saat artikel ini ditulis).

wget https://bitbucket.org/zhb/iredmail/downloads/iRedMail-0.8.7.tar.bz2

10. Setelah pengunduhan arsip iRedMail selesai, ekstrak arsip tersebut menggunakan perintah berikut.

tar xvjf iRedMail-0.8.7.tar.bz2

11. Kemudian masukkan jalur direktori iRedMail yang baru diekstrak, tandai skrip iRedMail.sh dengan izin yang dapat dieksekusi lalu jalankan.

cd iRedMail-0.8.7
chmod +x iRedMail.sh
sudo ./iRedMail.sh

12. Setelah pemeriksaan sistem awal, program mulai menambahkan repositori yang diperlukan, lalu perintah panduan pertama menanyakan apakah Anda ingin melanjutkan instalasi atau membatalkan. Pilih Ya untuk melanjutkan.

13. iRedMail menggunakan format Maildir untuk menyimpan email di jalur sistem /var/vmail yang membuat direktori terpisah untuk setiap domain yang Anda tambahkan ke server MTA Anda. Jika Anda merasa nyaman dengan jalur ini, tekan Berikutnya untuk melanjutkan konfigurasi server, jika tidak, berikan lokasi yang Anda inginkan lalu Berikutnya.

14. Pada langkah berikutnya pilih database pilihan Anda untuk menyimpan nama domain email dan penerima yang akan terhubung ke Postfix. Tutorial ini berfokus pada database MySQL, jadi pilih MySQL menggunakan bilah [Spasi] lalu lanjutkan dengan Berikutnya dan berikan kata sandi yang kuat untuk akun root MySQL.

15. Pada langkah berikutnya tambahkan nama domain virtual pertama Anda. Jika Anda memiliki nama domain terdaftar yang ditambahkan di sini (tambahkan nama domain saja, bukan FQDN sistem).

16. Secara default iRedAdmin membuat pengguna administratif dengan kekuasaan penuh atas server Anda yang dapat diakses melalui panel iRedAdmin atau melalui protokol Dovecot (antarmuka email web Roundcube default atau perangkat lunak IMAP/POP MUA lainnya seperti SquirrelMail, Rainloop , Microsoft Outlook, Mozilla Thunderbird, Evolution, Mutt, Elm dll).

Akun administratif postmaster ini juga digunakan oleh sistem untuk melaporkan insiden terkait fungsi email atau kegagalan sistem lainnya atau informasi berguna – logwatch biasanya mengirimkan statistiknya ke sini - jadi pilihlah kata sandi yang kuat dan lanjutkan dengan Berikutnya.

17. Pada langkah berikutnya pilih komponen server email Anda yang lain seperti panel administratif resmi iRedAdmin ke Postfix, kunci domain DKIM – (menambahkan tanda tangan ke header pesan yang mengevaluasi kepercayaan pesan untuk pengiriman akhir atau relai lebih lanjut), Roundcube antarmuka webmail default (jika Anda berencana menggunakan Agen Pengiriman Surat lain, lewati Roundcube), PhpMyadmin (jika Anda merasa nyaman dengan baris perintah MySQL, Anda juga harus melewatkan instalasi PhpMyAdmin), Awstats (statistik dan penganalisa log yang berguna), Fail2ban (melindungi server Anda dari serangan kekerasan).

18. Pada rangkaian pertanyaan berikutnya, bergantung pada komponen opsional yang dipasang, Anda harus menjawab dengan Ya. Berikan perhatian ekstra pada file iRedMail.tips yang terletak di direktori $HOME yang diekstraksi karena berisi informasi sensitif server email seperti nama pengguna dan kata sandi untuk aplikasi server, file konfigurasi server, URL default, dan informasi penting lainnya.

19. Setelah instalasi selesai reboot sistem Anda dan verifikasi file iRedmail.tips untuk melihat pengaturan default server Anda – Anda harus memindahkan file ini ke tempat yang aman jalur sistem dengan 600 izin di dalamnya.

20. Akses aplikasi web default pada URL berikut.

  1. Email Web Roundcube – https://nama_domain atau server_IP/mail/
  2. Panel IRedAdmin – https://nama_domain atau server_IP/iredadmin/
  3. PhpMyadmin – https://nama_domain atau server_IP /phpmyadmin/
  4. Awstats – https://domain_name atau server_IP/awstats/awstats.pl?config=web (atau ?config=smtp)
  5. Plugin anti-spam kebijakan – https://nama_domain atau server_IP/cluebringer/

Langkah 3: Konfigurasi Webmail Awal

21. Panel administratif iRedAdmin menawarkan antarmuka email web dasar tempat Anda dapat menambahkan domain dan akun virtual untuk server email Anda yang dapat ditangani Postfix melalui backend MySQL. Untuk masuk ke panel iRedAdmin, arahkan browser Anda ke URL https://domain_name/iredadmin/ atau https://server_IP/iredadmin/ dan gunakan kredensial default berikut.

  1. Nama pengguna: postmaster@nama_domain_anda.tld
  2. Sandi: sandi postmaster ditetapkan pada poin #16

22. Untuk menambahkan pengguna, navigasikan ke Tambahkan -> Pengguna lalu berikan alamat email dan kata sandi nama pengguna yang Anda inginkan. Anda juga dapat mengatur jumlah ruang yang dapat ditangani Kotak Surat pengguna Anda dengan Kuota dan Anda juga dapat mempromosikan pengguna dengan kewenangan administratif melalui panel iRedAdmin dengan Menandai pengguna sebagai Admin Global.

23. Membaca email pengguna disediakan oleh antarmuka web Roundcube. Untuk mengaksesnya, navigasikan ke URL https://domain_name/mail atau https://server_IP/mail/ dan berikan kredensial akun email Anda dalam bentuk [ dilindungi email].

Mengakses akun email administratif default postmaster Anda akan menemukan dua email awal, salah satunya berisi informasi sensitif server Anda. Dari sini Anda sekarang dapat membaca email, menulis dan mengirim email ke pengguna domain lain.

24. Untuk mengakses Kebijakan anti-spam server, navigasikan ke https://domain_name/cluebringer atau https://server_IP/ petunjukbringer/ dan berikan kredensial berikut.

  1. Nama Pengguna: [dilindungi email]
  2. Sandi: sandi kepala kantor pos

25. Untuk melihat statistik server email Anda, navigasikan ke https://mydomain.lan/awstats/awstats.pl/?config=smtp atau https:// mydomain.lan/awstats/awstats.pl dan gunakan kredensial berikut.

  1. Nama Pengguna: [dilindungi email]
  2. Sandi: sandi kepala kantor pos

26. Jika Anda ingin memeriksa koneksi terbuka server Anda dan status daemon mendengarkan dengan soket aferennya, jalankan perintah berikut.

netstat -tulpn   ## numerical view
netstat -tulp    ## semantic view

27. Untuk men-debug masalah lain dengan transaksi email atau melihat server Anda berfungsi secara langsung, Anda dapat menggunakan perintah berikut.

tailf /var/log/maillog   ## visualize mail logs in real time
mailq    		   ##  inspect mail queue
telnet    		   ## test your server protocols and security form a different location
nmap                     ## scan your server opened connections from different locations

28. Sekarang Anda telah menerapkan lingkungan email lengkap, satu-satunya hal yang hilang, setidaknya pada topik ini adalah nama domain yang valid dengan data MX DNS untuk menerima email dari domain internet lain tetapi server SMTP lokal dapat dan akan merelai email di domain Internet lain yang valid, jadi berikan perhatian ekstra kepada siapa Anda mengirim email karena Anda dapat mengalami masalah ilegal dengan ISP Anda.

Dari tangkapan layar di bawah ini Anda dapat melihat bahwa saya telah mengirim email dari domain lokal saya yang tidak valid ke salah satu akun google.com saya dan email tersebut berhasil diterima oleh akun Google saya.

Tidak seperti layanan jaringan lain di mana Anda menginstal dan melupakannya dalam waktu lama, mengelola server email adalah kerja keras yang terus-menerus karena masalah terkait layanan email seperti SPAM, relai terbuka, dan pesan terpental.

Tautan Referensi

Beranda iRedMail