Cara menangani pengiriman email – smtp gagal dari digital ocean

Baru saja migrasi dari server yang saya punya ke digital ocean. Di aplikasi saya sudah saya pasang suatu pengiriman email otomatis pada proses tertentu. Masalahnya adalah pasca migrasi tersebut ternyata pengiriman tersebut gagal dengan pesan berikut :

2018-05-29 08:45:55 Connection: opening to ssl://smtp.gmail.com:465, timeout=300, options=array()
2018-05-29 08:45:55 Connection failed. Error #2: stream_socket_client(): unable to connect to ssl://smtp.gmail.com:465 (Permission denied) [/var/www/html/marabahandev/vendor/phpmailer/phpmailer/src/SMTP.php line 324]
2018-05-29 08:45:55 SMTP ERROR: Failed to connect to server: Permission denied (13)

Saya curiga bahwa ini mungkin ada setup yang salah pada script saya (karena script email tersebut jarang saya gunakan), saya menggunakan php mailer di library aplikasi tersebut. Coba otak -atik berdasarkan forum dan dokumentasinya misalnay mengubah metode dari TLS ke SSL dan port yang digunakan ternyata sama saja.
kita juga perlu melihat pengaturan pada server apakah kita memperbolehkan bahwa user apache boleh mengirimkan email / menggunakan port smtp  dengan cara setup seperti ini :

Lihat permission di server anda apakah httpd bisa mengirimkan email ? dengan script berikut  digunakna pada server Cent OS:
$ getsebool httpd_can_sendmail

jika menunjukkan berikut : httpd_can_sendmail --> off

maka anda perlu menghidupkan nya dengan script berikut :

$ sudo setsebool -P httpd_can_sendmail 1

anda juga perlu pastikan bahwa server anda bisa konek dengan smtp google dengan perintah berikut :

Jika pesan tersebut tidak ada connected atau selalu trying ke ip smtp google artinya server anda tidak bisa terkoneksi dengan smtp google

Tidak bisa juga, ternyata di salah satu forum digital ocean hal ini terjadi karena adanya blokir dari pihak DO sendiri terhadap port smtp.

Saya coba kontak ke support kemudian memperoleh balasan berikut hiks…  😥

Thank you for contacting DigitalOcean.

Stopping spam is a constant fight, so we have implemented some restrictions on newer accounts. To qualify for the ability to send out email, we do require accounts to wait 60 days before we can look into removing the restriction. Once your account has reached 60 days of stable use, please do reach back out to us so we can look into this for you.

We appreciate your understanding on this matter.

Regards,
Platform Support Specialist

Jadi anda mesti melakukan permintaan manual dengan mengirimkan tiket ke support dan perlu waktu tunggu 2 bulan (whoaaa) agar bisa membuktikan bahwa server droplet anda bukan sarang spam hehe…

 

Referensi :

https://stackoverflow.com/questions/33951036/smtp-error-failed-to-connect-to-server-permission-denied-13
https://www.digitalocean.com/community/questions/cannot-connect-to-smtp-gmail-com-port-587-connection-timed-out

 

 

Leave a Comment

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