Sebelumnya, saya sudah pernah menulis tutorial bagai cara setup external SMTP relay pada Proxmox Mail Gateway (PMG), baca : Setup External SMTP Relay di Proxmox Mail Gateway. Pada tulisan tersebut saya menunjukkan bagaimana cara untuk me-relay/melempar kiriman email yang melewati PMG ke external SMTP relay sebelum dikirim ke tujuan.
Konfigurasi pada tulisan tersebut merupakan konfigurasi yang dilakukan jika teman-teman ingin semua domain yang melewati PMG dilempar ke eksternal SMTP relay. Bagaimana jika hanya salah satu domain saja yang akan di-relay? Bagaimana jika domain1.com di-relay ke provider1 sedangkan domain2.com di-relay ke provider2? Tenang, teman-teman tidak perlu khawatir karena hal tersebut sangat memungkinkan dilakukan.
Persiapan
- Melakukan konfigurasi external SMTP relay pada PMG sesuai dengan tulisan saya yang sebelumnya https://colamen.id/setup-external-smtp-relay-di-proxmox-mail-gateway/
- Memahami alur pengiriman email sebelum konfigurasi ini dilakukan. Skema yang saat ini masih diterapkan adalah ketiga domain yang melewati PMG akan di-relay/dilempar ke server external SMTP relay yang sama.
- Memahami alur pengiriman email sesudah konfigurasi ini dilakukan. Skema yang akan diterapkan adalah memisahkan kiriman 2 domain pertama menggunakan SMTP relay yang berbeda serta melangsungkan kiriman domain ketiga ke server tujuan.
Konfigurasi
- Siapkan username dan password SMTP relay baik dari provider pertama maupun provider kedua
- SSH ke server PMG
- Jalankan perintah berikut untuk teks pada file konfigurasi Postfix guna memisahkan jalur SMTP relay per-domain
# echo "sender_dependent_relayhost_maps = hash:/etc/pmg/bysender" >> /etc/postfix/main.cf # echo "sender_dependent_relayhost_maps = hash:/etc/pmg/bysender" >> /var/lib/pmg/templates/main.cf.in
- Edit file /etc/postfix/main.cf dan /var/lib/pmg/templates/main.cf.in dengan text editor dan hapus bagian ini
relayhost = [relay.provider.com]:587
- Edit file /etc/postfix/relay_passwd yang merupakan file konfigurasi username dan password SMTP relay dan tambahkan server, username dan password SMTP relay dengan pola berikut
[relay.provider1.com]:587 user@provider1.com:password [relay.provider2.com]:587 user@provider2.com:password
- Apply perubahan konfigurasi user-pass relay dengan perintah berikut
# postmap /etc/postfix/relay_passwd
- Buat file dan edit /etc/pmg/bysender dan tambahkan domain1 untuk diarahkan ke server SMTP relay provider 1 serta domain2 untuk diarahkan ke server SMTP relay provider 2, sedangkan untuk domain3 tidak perlu ditambahkan karena akan langsung dikirim ke server tujuan. Berikut adalah isi filenya
@domain1.com [relay.provider1.com]:587 @domain2.co.id [relay.provider2.com]:587
Catatan : Teman-teman juga bisa mengarahkan salah satu user saja ke SMTP relay tertentu, dimasukkan saja nama usernya (for domain : @domain.com | for user : user@domain.com).
- Apply perubahan konfigurasi bysender dengan peintah berikut
# postmap /etc/pmg/bysender
- Restart service postfix dengan perintah berikut
# systemctl restart postfix
Setelah itu, semua kiriman email dari domain yang terdaftar pada file bysender akan di-relay/dilempar ke server SMTP relay yang ditentukan. Gimana? Mudah kan? 😀
Wiih, mantabps. Panduannya keren gan