Instal Postfix + SendGrid/Mandrill/SMTP Server Eksternal Lainnya Untuk Mengirim Email di Linux Debian

Wajib Baca

Cara Mudah Download Lagu dari Spotify

Setelah sebelumnya saya memberikan tutorial mudah download lagu dari iTunes/Apple Music; pada kesempatan kali ini saya persembahkan...

10 Tool Online Gratis untuk Memindai Keamanan Website

Salah satu pembicaraan paling tren di dunia IT adalah Keamanan Website. Apakah anda tahu, 96% aplikasi yang...

Apa itu RAID? Panduan & Perbandingan Lengkap Tentang Teknologi RAID!

Apa itu RAID? Menurut Wikipedia, RAID (yang kepanjangannya adalah Redundant Array of Independent Disks), adalah sebuah teknologi di dalam...
Ferdian Alfiantohttps://tuts.web.id
Ferdian Alfianto adalah seorang penggila dunia Internet, Mac Lover; suka menggunakan Wordpress, bereksperimen dengan Linux (terutama Debian dan Ubuntu), mengutak-atik pfSense router, senang bereksperimen dengan LEMP (Linux, Nginx, MariaDB, PHP) dan Redis. Anda bisa kontak saya disini.

Beberapa hari yang lalu, email notifikasi dari server yang masuk ke email, lebih banyak masuk ke spam box. Juga ketika saya mencoba fitur lupa password dari salah satu situs berbasis WordPress, email yang dikirimkan tidak masuk. Salah dua tersebut adalah kelemahan jika email dikirim via server, tidak reliable alias ababil kalo bahasa anak sekarang :)
Untuk itu, SMTP Server Eksternal harus saya gunakan untuk menggantikan sistem email di server web. Banyak pilihan SMTP Server Eksternal, yang cukup punya nama mentereng adalah SendGrid, Mandrill by MailChimp dan Amazon SES (Simple Email Service). Atau anda tinggal googling aja kata kunci “SMTP Server Services” atau bagi yang pemburu layanan gratisan bisa menggunakan kata kunci “Free SMTP Server Service”. Dan berikut adalah tutorial instal Postfix dengan menggunakan SMTP Server untuk mengirimkan email yang lebih reliable.

Disclaimer

  • Tutorial ini sudah dicoba dan berhasil di Linux Debian 8, akan tetapi tidak menutuo kemungkinan bisa berhasil di Debian versi 7 atau varian linux berbasis Debian lainnya, seperti Ubuntu atau KNOPPIX.
  • SMTP Server yang berhasil saya coba adalah SendGrid; tetapi tutorial ini juga bisa digunakan menggunakan SMTP server eksternal lainnya
  • Tutorial ini tidak bisa digunakan menggunakan SMTP server Google (Gmail dan Google Apps), jika ada waktu akan saya tuliskan tutorial terpisah.

Ok next step.

Adonan Yang Diperlukan

Sebelum memulai tutorial ini, anda sudah mempunyai:

  • Server, baik Dedicated Server atau VPS, sudah terinstal Linux Debian 8.
  • Fully Qualified Domain Name (FQDN) sudah di setting di server. Ketik perintah hostname untuk cek.
  • Perbarui package Linux dengan perintah apt-get update && apt-get upgrade
  • Anda sudah mempunyai username & password SMTP server.
  • Pastikan module libsasl2-modules sudah terinstal, jika belum gunakan perintah apt-get install libsasl2-modules

NOTE: Jika server anda menggunakan Ubuntu, tambah sudo untuk mengeksekusi perintah-perintah diatas.

Instal Postfix

Ketik perintah

apt-get install postfix mailutils

untuk memulai instal Postfix.

Pada saat proses instal, akan muncul jendela dialog General type of mail configuration seperti dibawah ini.

Pilih Internet Site.

Kemudian masukkan FQDN seperti dibawah ini, contoh fqdn.example.com

Setelah proses instalasi selesai, buka file konfigurasi Postfix dengan perintah

nano /etc/postfix/main.cf

Pastikan parameter myhostname diisi sesuai dengan FQDN anda

myhostname = fqdn.example.com

Konfigurasi Username & Password SMTP

Username dan password akan disimpan file bernama passwd di direktori /etc/postfix/sasl/. Selanjutnya kita akan membuat file passwd yang berisikan username & password SMTP server yang nantinya akan digunakan oleh Postfix.

Jika Anda Menggunakan SendGrid

Login ke SendGrid, pilih menu Settings -> API Keys. Kemudian klik tombol Create API Key.

Beri nama API Key yang akan dibuat. Dan pada pilihan API Key Permissions, pilih Full Access. Lihat gamabr dibawah.

Kemudian klik tombol Create & View. Pada halaman selanjutnya, akan muncul API Key, copy dan paste API Key tersebut ke notepad.

Selanjutnya kita akan membuat file passwd dengan perintah

nano /etc/postfix/sasl/passwd

dan masukkan API Key yang tadi kita buat, dengan format seperti ini

[smtp.sendgrid.net]:587 apikey:kodeAPIkey

NOTE: apikey adalah username SMTP, biarkan seperti itu. Sedang kodeAPIkey adalah API Key yang tadi kita buat diatas. Sedang 587 adalah port yang dipakai oleh SendGrid.

Kemudian kita akan membuat file hash db untuk Postfix dengan menjalankan perintah

postmap /etc/postfix/sasl/passwd

Jika berhasil, akan muncul file passwd.db di direktori /etc/postfix/sasl/. Bisa cek dengan perintah ls -l /etc/postfix/sasl/

Agar file passwd dan passwd.db lebih aman, kita akan mengatur file tersebut agar hanya root yang bisa membaca dan mengubahnya; dan juga kita akan mengubah kepemilikan file-file tersebut ke root. Gunakan perintah ini:

chown root:root /etc/postfix/sasl/passwd /etc/postfix/sasl/passwd.db
chmod 0600 /etc/postfix/sasl/passwd /etc/postfix/sasl/passwd.db

Selanjutnya, kita akan mengkonfigurasi file /etc/postfix/main.cf, agar Postfix bisa menggunakan SMTP server SendGrid. Ketik perintah

nano /etc/postfix/main.cf

Ubah relayhost sesuai dengan paramater SendGrid

# SMTP host dari SendGrid 
relayhost = [smtp.sendgrid.net]:587

Kemudian di bagian akhir file /etc/postfix/main.cf, tambahkan parameter ini

# aktifkan otentikasi SASL
smtp_sasl_auth_enable = yes
# matikan metode otentikasi anonim 
smtp_sasl_security_options = noanonymous
# lokasi sasl passwd
smtp_sasl_password_maps = hash:/etc/postfix/sasl/passwd
# Aktifkan enkripsi STARTTLS
smtp_use_tls = yes
# Lokasi CA certificates
smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt

Simpan ubahan diatas dan restart Postfix dengan perintah

service postfix restart

atau

/etc/init.d/postfix restart

Selanjutnya test Postfix untuk mengirim email dengan perintah

echo "body email" | mail -s "Ini Judul Email" -a "From: email@anda.com" email@yangdituju.com

NOTE: Ganti email@anda.com dengan sembarang alamat email. Dan ganti email@yangdituju.com dengan alamat email yang akan digunakan untuk menerima email (gunakan email yang valid, agar kita tahu email sudah masuk atau belum).

Jika Anda Menggunakan SMTP Server Lain

Pada prinsipnya konfigurasinya sama, yang perlu anda rubah hanya file /etc/postfix/sasl/passwd agar menyesuaikan dengan alamat SMTP server, port, username dan paswordnya

[mail.ispserver.com]:587 username:password

Dan juga ubah relayhost pada file /etc/postfix/main.cf

relayhost = [mail.ispserver.com]:587

Jangan lupa untuk membuat file hash db dengan perintah

postmap /etc/postfix/sasl_passwd

Dan juga restart Postfix

service postfix restart

atau

/etc/init.d/postfix restart

Selamat mencoba!

3 KOMENTAR

TINGGALKAN KOMENTAR

Silakan masukkan komentar anda!
Silakan masukkan nama Anda di sini

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Artikel Terbaru

Cara Mudah Download Lagu dari Spotify

Setelah sebelumnya saya memberikan tutorial mudah download lagu dari iTunes/Apple Music; pada kesempatan kali ini saya persembahkan...

Mudah Download Lagu dari iTunes/Apple Music

Dalam kondisi normal, tidak memungkinkan bagi kita download lagu yang ada di iTunes atau Apple Music. Untuk itu di artikel ini saya...

Berburu Domain Termurah Sedunia!

Domain termurah, siapa yang tidak suka mendapatkannya? Yes, bahkan penulis blog ini pun suka sekali berburu domain murah :).

8 Pasword Manager Gratis Terbaik 2019

Password manager adalah sebuah aplikasi yang membantu kita membuat password yang baik dan kuat, menyimpannya dengan keamanan berlapis & terenkripsi, baik tersimpan...

10 DNS Server Gratis, Aman, Cepat & Reliable 2019

Berikut adalah beberapa DNS server yang bisa anda pergunakan untuk mempercepat browsing, gratis, aman & reliable.
Protected by Copyscape

Artikel Lain Terkait: