Setup External SMTP Relay di Haraka

Seperti yang teman-teman tahu, apabila teman-teman menggunakan provider internet rumahan maka teman-teman tidak akan bisa menggunakan outgoing port 25 dan itu merupakan hal yang normal. Sebagian besar provider internet rumahan memang menutup outgoing port 25, untuk mencegah abuse email yang bersumber dari jaringan lokal ke internet (Port 25 digunakan untuk komunikasi antar email server.).

Walaupun seperti itu, khusus layanan internet untuk perusahaan outgoing port 25 tidak dibatasi sama sekali. Jika dibatasi, teman-teman tinggal request ke provider untuk open outgoing port 25 supaya email server yang ada di jaringan lokal perusahaan bisa kirim email ke internet.

Terus kalau mau kirim email pakai layanan internet rumahan? Atau pakai VPS (Biasanya outgoing port 25 VPS diblok)? Gimana?

Tidak perlu khawatir. Teman-teman bisa menggunakan layanan SMTP Relay yang disediakan oleh banyak provider, salah satunya adalah Excellent (https://www.excellent.co.id/smtp/) 😀 . Apabila teman-teman menggunakan layanan SMTP Relay, maka email dari mail server akan dilempar ke server SMTP Relay provider via port 587 atau 465 (tidak membutuhkan port 25), setelah itu dari server SMTP Relay provider akan dilempar langsung ke tujuan.

Nah, permasalahan ini cukup menghambat saya saat melakukan ujicoba SMTP Haraka (Baca : Setup SMTP Haraka di Ubuntu 18.04). Maklum saya menggunakan layanan internet rumahan, jadi outgoing port 25 tidak di open 😀 . Bagaimana solusinya? Solusinya ya pakai layanan SMTP Relay ….dari Excellent (https://www.excellent.co.id/smtp/) 😀 .

Untuk mengarahkan SMTP Haraka supaya mengarahkan kiriman emailnya ke SMTP Relay, perlu adanya sedikit konfigurasi yang dilakukan. Berikut adalah langkah-langkah untuk mengaktifkan external SMTP Relay pada SMTP Haraka.

Setup External SMTP Relay

  • Pastikan teman-teman sudah membaca dan melakukan langkah-langkah pada tulisan Setup SMTP Haraka di Ubuntu 18.04
  • Siapkan username dan password SMTP relay yang diberikan oleh provider
  • SSH ke server SMTP Haraka
  • Pastikan outcoming port 587 SMTP Haraka open dengan perintah berikut
    # telnet relay.provider.com 587
    Trying x.x.x.x...
    Connected to relay.provider.com.
    Escape character is '^]'.
    ^] 
    quit
  • Edit file /usr/local/haraka/config/plugins dengan text editor dan tambahkan tulisan berikut pada bagian paling bawah
    queue/smtp_forward
  • Buat file baru dengan nama /usr/local/haraka/config/smtp_forward.ini dan isi dengan pola sebagai berikut
    ; host to connect to
     host=relay.provider.com
    
    ; port to connect to
     port=587
    
    ; uncomment to enable TLS to the backend SMTP server
     enable_tls=true
    
    ; SMTP Relay Username & Password
    auth_type=login
    auth_user=username
    auth_pass=password
  • Restart service Haraka dengan perintah berikut
    # systemctl restart haraka

Uji Coba Kirim Email

  • Testing kirim email ke gmail.com menggunakan swaks dengan perintah berikut dari SMTP Haraka.
# swaks -s localhost -t muhammadraihan519@gmail.com -f raihan@colamen.id
=== Trying localhost:25...
=== Connected to localhost.
<-  220 haraka ESMTP Haraka/2.8.25 ready
 -> EHLO haraka
<-  250-haraka Hello Unknown [127.0.0.1]Haraka is at your service.
<-  250-PIPELINING
<-  250-8BITMIME
<-  250-SMTPUTF8
<-  250 SIZE 0
 -> MAIL FROM:<raihan@colamen.id>
<-  250 sender <raihan@colamen.id> OK
 -> RCPT TO:<muhammadraihan519@gmail.com>
<-  250 recipient <muhammadraihan519@gmail.com> OK
 -> DATA
<-  354 go ahead, make my day
 -> Date: Thu, 27 Feb 2020 11:48:41 +0700
 -> To: muhammadraihan519@gmail.com
 -> From: raihan@colamen.id
 -> Subject: test Thu, 27 Feb 2020 11:48:41 +0700
 -> Message-Id: <20200227114841.002815@haraka>
 -> X-Mailer: swaks v20170101.0 jetmore.org/john/code/swaks/
 -> 
 -> This is a test mailing
 -> 
 -> .
<-  250 2.0.0 01R4mihR027560-01R4mihS027560 Message accepted for delivery (1C8A7317-B916-47F2-AFDD-BAB831503D43.1)
 -> QUIT
<-  221 haraka closing connection. Have a jolly good day.
=== Connection closed with remote host.

Leave a Reply

Your email address will not be published. Required fields are marked *