External SMTP Relay Terpisah Untuk Multiple Domain Pada Proxmox Mail Gateway

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? 😀

One comment

Leave a Reply

Your email address will not be published.