Praktikum MAIL Server - Ubuntu 24.04

📌 Tujuan Praktikum

Setelah mengikuti praktikum ini, Anda diharapkan mampu:

  • Memahami fungsi dan cara kerja MAIL Server
  • Memahami protokol email (SMTP, POP3, IMAP)
  • Menginstall dan mengkonfigurasi Postfix sebagai SMTP Server
  • Menginstall dan mengkonfigurasi Dovecot sebagai IMAP/POP3 Server
  • Membuat user email untuk pengujian
  • Menguji kirim email menggunakan mail client (Thunderbird/Outlook)
1. Fungsi MAIL Server Teori

MAIL Server adalah server yang bertanggung jawab untuk mengirim, menerima, dan menyimpan email. Mail Server menggunakan protokol standar untuk berkomunikasi dengan client dan server lainnya.

Analogi MAIL Server:

MAIL Server seperti "kantor pos" di dunia digital. Kantor pos menerima surat (email) dari pengirim, menyortirnya, dan mengantarkannya ke penerima yang tepat. Setiap orang memiliki kotak surat (mailbox) sendiri yang hanya bisa diakses oleh mereka.

🔑 Fungsi Utama MAIL Server

  • Mengirim Email (SMTP): Mengirim email dari client ke server lain
  • Menerima Email: Menerima email dari server lain
  • Menyimpan Email: Menyimpan email di mailbox user
  • Mengambil Email (POP3/IMAP): Client mengambil email dari server
  • Spam Filtering: Menyaring email spam
  • Manajemen User: Mengelola account email user

📋 Protokol Email

POP3
Post Office Protocol v3

Port: 110 (non-SSL), 995 (SSL)
Fungsi: Mengambil email dari server
Keunggulan: Sederhana, hemat storage server
Kekurangan: Email hanya di satu perangkat
IMAP
Internet Message Access Protocol

Port: 143 (non-SSL), 993 (SSL)
Fungsi: Sinkronisasi email di server
Keunggulan: Email tersedia di semua perangkat
Kekurangan: Membutuhkan storage server
SMTP
Simple Mail Transfer Protocol

Port: 25 (non-SSL), 465 (SSL), 587 (TLS)
Fungsi: Mengirim email antar server
Keunggulan: Standar global untuk pengiriman email
Kekurangan: Tidak untuk mengambil email
💡 Komponen MAIL Server pada Praktikum Ini:
  • Postfix: SMTP Server (mengirim dan menerima email)
  • Dovecot: IMAP/POP3 Server (menyimpan dan mengambil email)
  • Domain: smk-tkj.lmn
  • User: admin@smk-tkj.lmn, user@smk-tkj.lmn
2. Skenario & Topologi Desain

Pada praktikum ini, kita akan membangun sebuah MAIL Server dengan spesifikasi berikut:

KomponenKeterangan
Sistem OperasiUbuntu Server 24.04 LTS
IP Address Server192.168.10.20/24
Gateway192.168.10.1
SMTP ServerPostfix
IMAP/POP3 ServerDovecot
Domainsmk-tkj.lmn
User Emailadmin@smk-tkj.lmn, user@smk-tkj.lmn
ClientThunderbird / Outlook / Mail Client
Topologi Jaringan MAIL Server
Gambar 1: Topologi Jaringan MAIL Server
Keterangan Topologi:
  • Router → Gateway (192.168.10.1) dan sumber jaringan
  • Switch → Menghubungkan semua perangkat dalam satu jaringan
  • MAIL Server → Server dengan IP 192.168.10.20 menjalankan Postfix + Dovecot
  • Client → Komputer yang mengakses email melalui mail client
3. Persiapan DNS untuk Mail Server Step 1

Sebelum menginstall Mail Server, pastikan DNS Server sudah dikonfigurasi dengan benar untuk mendukung layanan email. Tambahkan record MX dan A pada DNS Server.

📝 Langkah-langkah

1. Edit file zone DNS Server (/etc/bind/db.smk-tkj):

sudo nano /etc/bind/db.smk-tkj

2. Tambahkan record berikut:

; MX Record untuk Mail Server
@       IN  MX  10  mail.smk-tkj.lmn.

; A Record untuk Mail Server
mail    IN  A   192.168.10.20

; A Record untuk email client (opsional)
webmail IN  A   192.168.10.20
📖 Penjelasan Record:
  • MX Record: Menentukan server email untuk domain (prioritas 10)
  • A Record mail: Menunjuk mail.smk-tkj.lmn ke IP 192.168.10.20
  • A Record webmail: Untuk akses webmail (opsional)

3. Restart DNS Server:

sudo systemctl restart bind9

4. Uji DNS:

dig smk-tkj.lmn MX
dig mail.smk-tkj.lmn
nslookup mail.smk-tkj.lmn
✅ DNS untuk Mail Server berhasil dikonfigurasi!
  • MX Record: mail.smk-tkj.lmn (prioritas 10)
  • A Record: mail.smk-tkj.lmn → 192.168.10.20
4. Install Postfix (SMTP Server) Step 2

Postfix adalah Mail Transfer Agent (MTA) yang bertugas mengirim dan menerima email. Postfix adalah pengganti Sendmail yang lebih aman dan mudah dikonfigurasi.

📝 Langkah-langkah Install Postfix

1. Install Postfix:

sudo apt update
sudo apt install postfix -y
📖 Panduan Instalasi Postfix:
  • General type of mail configuration: Pilih Internet Site
  • System mail name: Isi smk-tkj.lmn

2. Cek status Postfix:

sudo systemctl status postfix

3. Cek versi Postfix:

postconf -d | grep mail_version
✅ Postfix berhasil diinstall! SMTP Server sudah berjalan di port 25.
5. Konfigurasi Postfix Step 3

Konfigurasi Postfix agar dapat menerima dan mengirim email untuk domain smk-tkj.lmn.

📝 Langkah-langkah Konfigurasi

1. Edit file konfigurasi Postfix:

sudo nano /etc/postfix/main.cf

2. Pastikan konfigurasi berikut ada:

# Pengaturan Dasar
myhostname = mail.smk-tkj.lmn
mydomain = smk-tkj.lmn
myorigin = $mydomain
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
relayhost =
mynetworks = 127.0.0.0/8 192.168.10.0/24
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = ipv4

# Pengaturan Mailbox
home_mailbox = Maildir/
mailbox_command =
📖 Penjelasan Konfigurasi:
  • myhostname → Nama host server email
  • mydomain → Domain utama
  • mydestination → Domain yang dilayani
  • mynetworks → Jaringan yang diizinkan
  • home_mailbox = Maildir/ → Format penyimpanan email

3. Restart Postfix:

sudo systemctl restart postfix

4. Cek konfigurasi Postfix:

sudo postfix check
✅ Postfix berhasil dikonfigurasi!
6. Install Dovecot (IMAP/POP3) Step 4

Dovecot adalah IMAP/POP3 Server yang aman dan cepat. Dovecot bertugas menyimpan email dan menyediakan akses bagi client untuk mengambil email.

📝 Langkah-langkah Install Dovecot

1. Install Dovecot:

sudo apt install dovecot-core dovecot-imapd dovecot-pop3d -y

2. Cek status Dovecot:

sudo systemctl status dovecot

3. Cek port yang terbuka:

sudo netstat -tulpn | grep dovecot
✅ Dovecot berhasil diinstall!
  • IMAP (non-SSL): port 143
  • IMAP (SSL): port 993
  • POP3 (non-SSL): port 110
  • POP3 (SSL): port 995
7. Konfigurasi Dovecot Step 5

Konfigurasi Dovecot agar terintegrasi dengan Postfix dan dapat diakses oleh client.

📝 Langkah-langkah Konfigurasi

1. Edit file konfigurasi utama Dovecot:

sudo nano /etc/dovecot/dovecot.conf

2. Pastikan konfigurasi berikut ada:

protocols = imap pop3

3. Edit file konfigurasi 10-mail.conf:

sudo nano /etc/dovecot/conf.d/10-mail.conf

4. Setel mail_location:

mail_location = maildir:~/Maildir

5. Edit file konfigurasi 10-auth.conf:

sudo nano /etc/dovecot/conf.d/10-auth.conf

6. Pastikan autentikasi menggunakan system user:

auth_mechanisms = plain login
!include auth-system.conf.ext

7. Edit file konfigurasi 10-master.conf:

sudo nano /etc/dovecot/conf.d/10-master.conf

8. Pastikan Postfix dapat berkomunikasi dengan Dovecot:

service auth {
    unix_listener /var/spool/postfix/private/auth {
        mode = 0660
        user = postfix
        group = postfix
    }
}

9. Restart Dovecot:

sudo systemctl restart dovecot
✅ Dovecot berhasil dikonfigurasi!
8. Membuat User Email Step 6

Buat user sistem yang akan digunakan sebagai account email.

📝 Langkah-langkah

1. Buat user admin:

sudo useradd -m -s /bin/bash admin
sudo passwd admin

Masukkan password untuk user admin.

2. Buat user biasa:

sudo useradd -m -s /bin/bash user
sudo passwd user

Masukkan password untuk user.

3. Buat direktori Maildir untuk masing-masing user:

sudo mkdir -p /home/admin/Maildir
sudo mkdir -p /home/user/Maildir
sudo chown admin:admin /home/admin/Maildir
sudo chown user:user /home/user/Maildir
sudo chmod 700 /home/admin/Maildir
sudo chmod 700 /home/user/Maildir
✅ User email berhasil dibuat!
  • admin@smk-tkj.lmn → Password: [yang dibuat]
  • user@smk-tkj.lmn → Password: [yang dibuat]
9. Konfigurasi Firewall Step 7

Buka port yang dibutuhkan untuk Mail Server pada firewall.

📝 Langkah-langkah

# Port SMTP (Postfix)
sudo ufw allow 25/tcp

# Port SMTP dengan TLS (opsional)
sudo ufw allow 465/tcp
sudo ufw allow 587/tcp

# Port IMAP (Dovecot)
sudo ufw allow 143/tcp

# Port IMAP dengan SSL (opsional)
sudo ufw allow 993/tcp

# Port POP3 (Dovecot)
sudo ufw allow 110/tcp

# Port POP3 dengan SSL (opsional)
sudo ufw allow 995/tcp

# Aktifkan firewall
sudo ufw enable

# Cek status
sudo ufw status
✅ Firewall berhasil dikonfigurasi!
10. Pengujian MAIL Server Step 8

Lakukan pengujian untuk memastikan Mail Server berjalan dengan baik.

10.1 Uji Kirim Email dari Command Line

1. Kirim email menggunakan mail command:

sudo apt install mailutils -y
echo "Isi email test" | mail -s "Test Email" admin@smk-tkj.lmn

2. Cek email di mailbox admin:

sudo mail -u admin

3. Keluar dari mail:

# Tekan q untuk keluar

10.2 Uji dengan Thunderbird / Outlook

Konfigurasi pada Mail Client:

  • Nama: Admin SMK TKJ
  • Email: admin@smk-tkj.lmn
  • Password: [password admin]

Pengaturan Server Masuk (IMAP):

  • Server: mail.smk-tkj.lmn
  • Port: 143
  • Keamanan: STARTTLS / None
  • Autentikasi: Password

Pengaturan Server Keluar (SMTP):

  • Server: mail.smk-tkj.lmn
  • Port: 25
  • Keamanan: STARTTLS / None
  • Autentikasi: Password

10.3 Uji Kirim Email antar User

Dari admin@smk-tkj.lmn kirim ke user@smk-tkj.lmn:

echo "Halo user, ini email dari admin" | mail -s "Email dari Admin" user@smk-tkj.lmn

Cek mailbox user:

sudo mail -u user
⚠️ Troubleshooting:
  • Connection refused: Pastikan Postfix dan Dovecot berjalan
  • Mailbox not found: Periksa mail_location di Dovecot
  • Authentication failed: Periksa password user
  • Relay access denied: Periksa mynetworks di Postfix
✅ MAIL Server berhasil diuji!
11. Kesimpulan Selesai

Dalam praktikum ini, Anda telah berhasil melakukan:

Selanjutnya:

Setelah MAIL Server berhasil, Anda dapat melanjutkan ke materi berikutnya: Konfigurasi WEB MAIL Server untuk mengakses email melalui browser.