Sunday 4 June 2017

LAB Centos 10.1 | Mail Server | Installation Postfix & Dovecot

Assalamualaikum Wr.Wb.

Yak guys :v kembali lagi dengan saya selaku pengelola blog ini. Pada kali ini saya yang ngelola blog ini akan memposting tentang materi baru yaitu Mail Server pada Centos 7

Sebelumnya bisa anda lihat dulu postingan saya yang terdahulu dibagian Admin Server pada tab diatas. Dan sekarang kita simak pengertiannya.
Mail Server adalah server yang memungkinkan pengguna (user) untuk dapat mengirim dan menerima surat elektronik atau e-mail satu sama lain dalam satu jaringan atau dengan internet. Layanan mail server menggunakan arsitektur client-server, yang artinya ada aplikasi yang digunakan client untuk mengakses server email. Protocol yang umum digunakan adalah protocol SMTP (Simple Mail Transfer Protocol), POP3 (Post Office Protocol v3) dan IMAP. SMTP digunakan sebagai setandar untuk menampung data mendistribusikan email. Sedangkan POP3 dan IMAP digunakan agar user dapat mengambil dan membaca email secara remote.

Pada lab ini, saya mengkonfigurasi Mail Server yaitu dengan Postfix dan Dovecot.

Apa itu Postfix dan Dovecot?

Postfix adalah program yang digunakan sebagai layanan SMTP (email ke luar). Simple Mail Transfer Protocol atau SMTP digunakan untuk berkomunikasi dengan server guna mengirimkan email dari lokal email ke server, sebelum akhirnya dikirimkan ke server email penerima. Proses ini dikontrol dengan Mail Transfer Agent (MTA).

Dovecot digunakan sebagai layanan pop3 dan imap atau ibaratnya untuk akses email masuk. pop3 adalah sebuah layanan satu arah, maksudnya adalah data diambil dari mail server kemudian disimpan di perangkat anda. Sedangkan IMAP adalah komunikasi dua arah, maksudnya adalah email tetap berada pada server tanpa disimpan diperangkat anda.

Cukup singkat penjelasan diatas apa bila ingin lebih lanjut agan bisa buka disini.

Lanjut saja ke topologinya dibawah ini
 
Dan kita lanjutkan sekarang ke konfigurasinya

DNS Server Configuration

1. Pertama, kita buat Subdomain untuk Mail Server terlebih dulu, caranya dengan mengedit file forward DNS

Setelah itu tambahkan syntaks seperti gambar dibawah, jangan lupa untuk sesuaikan IP nya

2. Kemudian kita edit juga file reverse DNS nya

Lalu tambahkan syntaks seperti berikut, jangan lupa untuk sesuaikan dengan IP kalian masing-masing

3. Setelah itu, restart service named agar konfigurasi DNS yang sudah dilakukan dapat berjalan

4. Selanjutnya, kita cek apakah subdomain yang sudah dibuat berhasil berjalan atau tidak dengan perintah dig. Dan ternyata subdomain yang sudah saya buat sudah berhasil
Server

1. Secara default, Postfix sudah terinstal pada Centos 7. Namun tidak ada salahnya kita coba lakukan perintah install postfix untuk memastikan si postfix ini benar benar sudah terinstal pada Centos 7
Jika sudah maka lihat apakah paket tersebut ada, dan berikut versi postfix keberapa.

2. Edit file konfigurasi setingan postfix, yaitu main.cf yang terletak di /etc/postfix/

Cari serta hapus tanda # pada kalimat myhostname, ini digunakan untuk mendefinisikan hostname pada server kalian, disini saya mengaturnya menjadi domain mail server saya. kemudian hapus tanda # juga pada kalimat mydomain, ini digunakan untuk mendefinisikan domain yang telah didaftarkan pada server atau root domain dari server tersebut.

Kemudian cari kalimat myorigin, cukup hapus tanda # saja pada kalimat tersebut. My Origin digunakan untuk mendefinisikan Nama domain yang dikirim dari pos lokal berasal, dan email yang diposkan secara lokal dikirimkan. Secara default, valuenya adalah $mydomain


Lalu cari lagi kalimat inet_interfaces, atur valuenya menjadi all, ini berfungsi untuk mendefinisikan alamat antarmuka jaringan yang digunakan oleh sistem email ini agar dapat menerima semua email pada semua jaringan yang terhubung

Terus cari kalimat mydestination, kemudian tambahkan kalimat yang sudah saya tandai warna kuning dibawah ini. My Destination Ini digunakan untuk mendefinisikan daftar domain yang dikirimkan emailnya. Disitu terdapat $myhostname untuk mendefiniskan hostname mail servernya, localhost.$mydomain, $mydomain untuk mendefinisikan nama domain internet dari sistem email ini , dan yang terakhir localhost yaitu mail server itu sendiri

Kemudian cari serta hapus tanda # pada kalimat mynetworks seperti yang sudah saya tandai pada gambar dibawah ini. My Network ini digunakan untuk mendefinisikan network yang akan diizinkan untuk meremote smtp dengan hak akses yang lebih dari pada network yang tidak didaftarkan. Disini saya memasukkan network yang ada pada server saya yaitu 192.168.43.0/24

Lalu cari kalimat home_mailbox kemudian cukup hapus tanda # saja pada kalimat tersebut. home_mailbox digunakan untuk mendefinisikan mailbox ke dirketori home sebuah user

Dan cari  serta hapus tanda # pada kalimat smtpd_banner. Smptd banner ini hanyalah banner atau tulisan yang akan muncul pada saat client mengakses smtp, disitu saya atur menjadi $myhostname ESMTP, yang berarti nanti akan ditampilkan nama hostname dari server mail dan di belakangnya diikuti dengan tulisa ESMTP

Yang terakhir tambahkan kalimat seperti yang ada gambar bawah ini.
Keterangan :
  • message_size_limit digunakan untuk menentukan ukuran maksimal dalam satuan byte suatu email masuk atau keluar. Disini saya memasukkannya menjadi 10485760 byte kalau dikonversi ke MB menjadi 10MB
  • mailbox_size_limit digunakan untuk mendefinisikan jumlah kotak surat untuk setiap user
  • smtpd_sasl_type = dovecot yaitu Jenis plug-in SASL yang digunakan oleh server SMTP Postfix untuk otentikasi yaitu dengan dovecot
  • smtpd_sasl_path = private/auth yaitu Informasi spesifik implementasi yang dikirim server SMTP Postfix ke implementasi plugin SASL yang dipilih dengan smtpd_sasl_type yaitu pada private/auth
  • smtpd_sasl_auth_enable = yes yaitu untuk mengaktifkan otentikasi SASL di server SMTP Postfix.
  • smtpd_sasl_security_options = noanonymous digunakan untuk mendefinisikan Opsi keamanan SMTP server SMTP Postfix untuk melarang anonim melakukan autentikasi.
  • smtpd_sasl_local_domain = $myhostname merupakan Nama server lokal SASL lokal Postfix SMTP server yaitu sudah ditentukan pada $myhostname
  • smtpd_recipient_restrictions = permit_mynetworks,permit_auth_destination,permit_sasl_authenticated,reject adalah Opsional pembatasan server SMTP Postfix berlaku dalam konteks perintah RCPT TO client


3. Restart service postfix agar konfigurasi berjalan secara optimal

4. Tambahkan service smtp kedalam firewall-cmd agar bisa diakses oleh client nanti

5. Sekarang kita install dovecot untuk akses mail client

6. Edit file konfigurasi dovecot, yaitu dovecot.conf yang terletak di /etc/dovecot/

Cari serta hapus tanda # pada kalimat protocols = imap pop3 lmtp untuk menentukan protokol yang akan digunakan. kemudian hapus tanda # juga pada kalimat listen, disini saya mengatur valuenya menjadi "*" yang berguna untuk mengizinkan semua koneksi di IPv4.

7. Kemudian edit file konfigurasi untuk autentikasi dovecotnya, yaitu 10-auth.conf yang terletak di /etc/dovecot/conf.d/

Cari dan hapus tanda # pada kalimat disable_plaintext_auth dan atur valuenya menjadi no untuk mengaktifkan plaintext autentikasi

Kemudian cari kalimat auth_mechanisme kemudian atur valuenya menjadi plain login untuk mengatur mekanisme autentikasi



8. Edit file konfigurasi untuk mail pada dovecot


Dan yang terakhir cari serta hapus tanda # pada kalimat mail_location, kemudian atur valuenya menjadi maildir:~/Maildir. Ini digunakan untuk mengatur lokasi email pada setiap user menjadi pada ~/Maildir atau pada directory /home/user/Maildir


9. Dan edit file 10-master.conf yang terletak di /etc/dovecot/conf.d/10-master.conf


Cari dan hapus tanda # pada baris unix_listener, kemudian tambahkan user = postfix dan group = postfix dibawahnya untuk menentukan user dan grup yang digunakan untuk autentikasi

10. Edit file konfigurasi ssl dovecot

Nah karena disini kita belum menggunakan ssl, maka dari itu pada kalimat ssl atur valuenya menjadi no

11. Jalankan serta enable service dovecot agar berjalan otomatis saat server di restart

12.  Dan Tambahkan port 110 dan 143 kedalam firewall-cmd agar dapat mengizinkan service imap dan pop3, kemudian jika sudah jangan lupa di reload.

13. Berikut ini saya membuat 2 user yang berbeda yang akan digunakan verifikasi client.

Client
1. Sekarang untuk pengujiannya mari kita buka cmd lalu telnet ke mail server anda dan portnya 25, yaitu port default smtp

Disini saya akan mencoba mengirim suatu file ke akun satunya
Keterangan :
  • mail from merupakan user pengirim email
  • rcpt to merupakan user penerima email
  • data adalah perintah yang digunakan untuk membuka kolom text email yang akan dikirim 
  • "." adalah perintah untuk mengakhiri isi teks emailnya
  • quit digunakan untuk keluar dari telnet
2. Kemudian kita check apakah email tersebut sudah dikirim atau belum dengan cara telnet mail servernya dengan port 110

Dan kita check tersebut apakah emailnya sudah masuk atau belum.
Keterangan : 

  • user merupakan nama usernya
  • pass merupakan password dari user tersebut
  • stat digunakan untuk mengecek email masuk
  • retr "nomorberapa yang setelah stat" untuk membuka/membaca email masuk
ok cukup sekian materi kali ini akan dilanjutkan pada postingan selanjutnya
Wassalamualaikum wr.wb.


EmoticonEmoticon