Cara Membuat & Konfigurasi Mail Server Postix di Ubuntu 20.04

Membuat mail server memiliki tingkat kesulitan yang lebih tinggi jika dibandingkan dengan server lain. Hal tersebut dikarenakan mail server memiliki banyak komponen yang harus dikonfigurasi. Namun jangan khawatir! Di sini saya akan membahas secara lengkap dengan contoh konfigurasi yang bisa langsung dipraktikkan.

Mail server memiliki 2 komponen penting agar dapat berjalan yaitu SMTP dan IMAP. SMTP berfungsi untuk mengirim e-mail antar server oleh karena itu SMTP juga disebut MTA (Mail Transfer Agent). Sedangkan IMAP berfungsi untuk mengambil e-mail dari server oleh user, IMAP biasa juga disebut MUA (Mail User Agent). Kita akan menggunakan software Postfix untuk SMTP dan software Dovecot untuk IMAP.

Selain 2 komponen tersebut nantinya kita juga akan install beberapa komponen lain agar e-mail kita dipercaya oleh server lain. Komponen tersebut adalah SPF dan DKIM dan SSL untuk enkripsi.

Pada tutorial ini kita akan membuat mail server beserta webmail yang tidak asal “it works” saja. Tetapi juga terenkripsi dan memiliki signature agar e-mail kita tidak dianggap spam oleh server lain. Nah, mari kita awali dengan instalasi Postfix sebagai SMTP atau MTA pada mail server yang akan kita bangun. Namun sebelumnya anda harus melakukan beberapa prasyarat di bawah ini.

Prasyarat:

Berikut ini adalah cara install dan konfigurasi mail server dengan Postfix di Ubuntu Server 20.04.

1. Install Postfix Sebagai SMTP Server

Perbarui database repository dengan perintah:

$ sudo apt update

Install Postfix dengan perintah:

$ sudo apt -y install postfix

Lalu muncul penjelasan tentang opsi instalasi Postfix. Pilih OK dengan cara tekan TAB pada keyboard lalu Enter. Setelah itu, pilih Internet Site kemudian pilih OK dengan menekan TAB lalu Enter.

Kemudian masukkan domain anda pada System mail name. Ini akan menjadi domain pada alamat e-mail yang biasanya berada di belakang simbol @ pada email. Misalnya alamat email saya adalah hernawan@itkoding.com maka saya harus mengisinya dengan itkoding.com.

2. Ubah Konfigurasi Pada Postfix

Buka file /etc/postfix/main.cf dengan nano:

$ sudo nano /etc/postfix/main.cf

Cari parameter myhostname lalu ubah menjadi hostname.domainanda.com sesuai dengan pengaturan hostname pada prasyarat pertama yaitu konfigurasi awal ubuntu server. Misalnya hostname sudah saya atur menjadi itkodingserver dan domain saya adalah itkoding.com maka:

myhostname = itkodingserver.itkoding.com

Simpan lalu tutup file tersebut.

Secara default Postfix mengaktifkan protokol IPv4 dan IPv6. Jika kita tidak memiliki IPv6 sebaiknya mengatur agar hanya mengaktifkan IPv4 dengan cara:

$ sudo postconf -e "inet_protocols = ipv4"

Postfix di Ubuntu server 20.04 secara default menjadikan root sebagai alias postmasternya. Fungsi dari postmaster adalah sebagai alamat administrator yang akan mendapatkan e-mail informasi jika terjadi error pada mail server. Karena root jarang kita pantau isi email masuknya maka sebaiknya tambahkan alias untuk root dengan akun yang sering kita pantau kotak masuknya. Caranya:

Buka file /etc/aliases:

$ sudo nano /etc/aliases

Tambahkan root: username pada baris terakhir file tersebut. Misalnya user saya adalah paijo. File akan menjadi:

# See man 5 aliases for format
postmaster: root
root: paijo

Simpan lalu tutup file tersebut. Maka semua email administrator akan dialihkan ke email paijo.

Restart Postfix dengan perintah:

$ sudo systemctl restart postfix

3. Buka Port 25 Pada Firewall UFW

Buka akses pada firewall UFW untuk port 25 SMTP agar Postfix dapat berjalan.

$ sudo ufw allow 'Postfix'

Terkadang penyedia server (VPS, dedicated dan lainnya) dan ISP melakukan block pada port 25 sehingga kita tidak bisa mengirim atau menerima e-mail. Pengalaman saya penyedia VPS seperti Vultr dan DigitalOcean melakukan block port 25 untuk user baru. Untuk mengeceknya lakukan perintah telnet di bawah ini:

$ telnet gmail-smtp-in.l.google.com 25

Jika tidak di block maka akan muncul keterangan bahwa kita dapat terkoneksi (Connected) seperti di bawah ini:

Trying x.x.x.x...
Connected to gmail-smtp-in.l.google.com.

Tapi jika di block biasanya ada pesan error: Unable to connect to remote host: Connection timed out. Seperti pada contoh di bawah ini:

Trying x.x.x.x...
telnet: Unable to connect to remote host: Connection timed out

Nah, jika anda termasuk yang di block kita tidak bisa melakukan apa-apa kecuali kontak penyedia server atau ISP kita agar dibukakan port 25. Biasanya mereka akan membukakan jika tujuan kita dalam membuat mail server tidak melakukan spam e-mail.

Jika tidak ada block pada port 25 maka lanjutkan membaca tutorialnya.

4. Ubah PTR Record IP server Menjadi Hostname FQDN Anda

PTR Record adalah kebalikan dari record. Biasa juga disebut dengan Reverse DNS. Jika record memetakan domain ke IP, sebaliknya PTR Record memetakan IP address ke domain. Lebih sederhana lagi PTR Record bisa diumpamakan sebagai domain yang telah terverifikasi sebagai pemilik IP tersebut.

Sebagian besar mail server akan menganggap e-mail sebagai spam jika IP address tidak memiliki PTR Record atau PTR Recordnya salah (bukan domain tersebut).

Nah, karena server kita mendapatkan IP address dari penyedia server atau ISP maka pengaturan PTR berada di member area server kita. Setiap provider server atau VPS memiliki menu untuk mengatur PTR record. Silahkan cari bagaimana mengaturnya pada petunjuk masing-masing provider server. Atau tanyakan pada customer service server tersebut tentang cara mengatur PTR di sana.

Silahkan ubah PTR Record IP address server anda menjadi hostname.domainanda.com. Misalnya pada praktik kali ini PTR Record-nya adalah itkodingserver.itkoding.com. Jika lupa dengan hostname FQDN anda, ketik saja perintah hostname --fqdn pada server anda untuk mengetahuinya.

Contohnya saya menggunakan VPS dari provider Vultr pengaturan PTR atau reverse DNS berada di menu Settings > IPv4 pada member area.

Menu pengaturan ptr atau reverse dns di vultr

5. Test Kirim E-Mail

Install terlebih dahulu MUA (Mail User Agent) berbasis CLI (Command-line Interface) agar bisa membuat email yang akan dikirim melalui Postfix.

$ sudo apt -y install mailutils

Kirim email dengan perintah:

$ mail usernameanda@gmail.com
Cc:
Subject: Test email pertama
Ini adalah email yang pertama percobaan 011.

Kemudian tekan CTRL+D untuk mengirim e-mail.

Silahkan lihat pada akun gmail anda apakah email sudah berhasil masuk. Anda dapat melihatnya pada folder spam atau junk. Email dari domain yang baru umumnya akan masuk ke folder spam atau junk. Seharusnya jika port 25 tidak di block kita sudah bisa mengirimkan e-mail dari server kita.

Langkah Berikutnya

Jika kita berhasil mengirim e-mail melalui command line ke akun gmail maka berarti instalasi SMTP server Postfix kita berhasil. Selanjutnya kita akan menginstall IMAP server agar mail server bisa digunakan pada email client seperti Outlook atau Thunderbird. Selain itu kita juga akan mengaktifkan enkripsi TLS agar e-mail kita lebih aman. Silahkan baca tutorial selanjutnya pada tulisan saya tentang cara install IMAP server Dovecot dan mengaktifkan enkripsi TLS. Sampai jumpa di tutorial berikutnya.

M. Hernawan
Web developer yang juga suka dengan dunia sysadmin. Pernah belajar Teknik Informatika di Indonesia.

Kirim Komentar