Google Cloud bekerja sama dengan Mailgun untuk menyediakan layanan email yang memiliki API terprogram, retensi log, personalisasi email, analisis, dan validasi email.
Petunjuk berikut menunjukkan cara mengonfigurasi Mailgun sebagai relai email dengan Postfix.
Sebelum memulai
Daftar dan buat akun Mailgun baru di Google Cloud Marketplace.
Dapatkan kredensial Anda. Petunjuk ini mengharuskan Anda mengetahui nama pengguna, sandi, dan nama host SMTP Mailgun Anda. Dapatkan nama pengguna dan sandi dari panel kontrol Mailgun, di bagian Domains.
Bergantung pada cara domain dikonfigurasi di Mailgun, nama host SMTP adalah
smtp.mailgun.org
atausmtp.eu.mailgun.org
.Konfigurasi aturan firewall Anda untuk mengizinkan traffic keluar pada port TCP
2525
.
Mengonfigurasi Mailgun sebagai relai email dengan Postfix
Mengonfigurasi Mailgun sebagai relai email memungkinkan agen transfer email Postfix meneruskan email yang ditujukan untuk pengiriman jarak jauh.
Hubungkan ke instance menggunakan SSH.
gcloud compute ssh [INSTANCE_NAME]
dengan
[INSTANCE_NAME]
adalah nama instance VM tempat Anda ingin mengirim email.Jadilah superuser dan setel umask yang aman.
user@test-instance:~$ sudo su -
root@test-instance:~# umask 077
Instal Agen Transportasi Email Postfix.
Debian
root@test-instance:~# apt update && apt -y install postfix libsasl2-modules
CentOS
root@test-instance:~# yum install postfix cyrus-sasl-plain cyrus-sasl-md5 -y
Saat diminta, pilih konfigurasi
Local Only
dan setujui pilihan default untuk nama domain.Memodifikasi opsi konfigurasi Postfix. Opsi konfigurasi postfix ditetapkan dalam file
main.cf
. Buka file dengan editor teks pilihan Anda.root@test-instance:~# vi /etc/postfix/main.cf
Jika ada, jadikan baris berikut sebagai komentar.
# default_transport = error # relay_transport = error
Tambahkan layanan SMTP Mailgun dengan menambahkan baris berikut ke bagian akhir file.
relayhost = [smtp.mailgun.org]:2525
Untuk menerapkan dukungan SSL/TLS dan mengonfigurasi autentikasi SMTP untuk permintaan ini, tambahkan baris berikut ke bagian akhir file. Modul akses sederhana dan lapisan keamanan (SASL) menangani autentikasi dalam konfigurasi Postfix.
smtp_tls_security_level = encrypt smtp_sasl_auth_enable = yes smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd smtp_sasl_security_options = noanonymous
Simpan perubahan Anda dan tutup file tersebut.
Buat peta sandi SASL.
Buat file sandi baru yang siap untuk input standar.
root@test-instance:~# cat > /etc/postfix/sasl_passwd << EOF
Pada perintah, masukkan detail layanan, dengan mengganti
YOUR_SMTP_LOGIN
danYOUR_SMTP_PASSWORD
dengan kredensial Anda. Lihat bantuan Mailgun untuk mendapatkan petunjuk cara melihat atau mengubah kredensial per domain Anda.> [smtp.mailgun.org]:2525 YOUR_SMTP_LOGIN:YOUR_SMTP_PASSWORD
Tutup dan simpan file dengan mengetik pembatas,
EOF
.> EOF
Gunakan utilitas
postmap
untuk menghasilkan file.db
.root@test-instance:~# postmap /etc/postfix/sasl_passwd
root@test-instance:~# ls -l /etc/postfix/sasl_passwd* -rw------- 1 root root 68 Jun 1 10:50 /etc/postfix/sasl_passwd -rw------- 1 root root 12288 Jun 1 10:51 /etc/postfix/sasl_passwd.db
Selanjutnya, hapus file yang berisi kredensial Anda karena sudah tidak diperlukan lagi.
root@test-instance:~# rm /etc/postfix/sasl_passwd
Tetapkan izin di file
.db
Anda.root@test-instance:~# chmod 600 /etc/postfix/sasl_passwd.db
root@test-instance:~# ls -la /etc/postfix/sasl_passwd.db -rw------- 1 root root 12288 Aug 31 18:51 /etc/postfix/sasl_passwd.db
Terakhir, muat ulang konfigurasi Anda untuk memuat parameter yang diubah.
Debian
root@test-wheezy:~# /etc/init.d/postfix restart
CentOS
[root@test-centos ~]# postfix reload
Uji konfigurasi Anda. Instal paket
mailx
ataumailutils
dan uji konfigurasi Anda.Debian
root@test-wheezy:~# apt -y install mailutils
CentOS
[root@test-centos ~]# yum install mailx -y
Mengirim pesan uji coba
root@test-instance:~# echo 'Test passed.' | mail -s 'Test-Email' EMAIL@EXAMPLE.COM
Buka log sistem Anda untuk melihat baris status yang berisi
status
dan kode respons server yang berhasil di(250)
.Debian
root@test-wheezy:~# tail -n 5 /var/log/syslog
CentOS
[root@test-centos ~]# tail -n 5 /var/log/maillog
Untuk mengetahui contoh dan informasi mendetail tentang topik lainnya, termasuk pelacakan dan pemilihan rute pesan, baca dokumentasi Mailgun.
Pelajari arsitektur referensi, diagram, dan praktik terbaik tentang Google Cloud. Lihat Cloud Architecture Center kami.