Google Cloud collabora con Mailgun per fornire un servizio email con API programmatica, conservazione dei log, personalizzazione e convalida delle email e dati e analisi.
Le istruzioni riportate di seguito mostrano come configurare Mailgun come relay di posta con Postfix.
Prima di iniziare
Registrati e crea un nuovo account Mailgun su Google Cloud Marketplace.
Ottieni le credenziali. Le istruzioni richiedono di conoscere il nome utente, la password e il nome host SMTP di Mailgun. Recupera il nome utente e la password dal pannello di controllo di Mailgun, nella sezione Domini.
In base alla configurazione del dominio in Mailgun, il nome host SMTP è
smtp.mailgun.orgosmtp.eu.mailgun.org.Configura le regole firewall per consentire il traffico in uscita sulla porta TCP
2525.
Configurazione di Mailgun come relay di posta con Postfix
La configurazione di Mailgun come relay di posta consente all'agente di trasferimento della posta Postfix di inoltrare le email destinate alla consegna remota.
Connettiti all'istanza tramite SSH,
gcloud compute ssh [INSTANCE_NAME]dove
[INSTANCE_NAME]è il nome dell'istanza da cui vuoi inviare email.Diventa un super user e imposta un'umask protetta.
user@test-instance:~$ sudo su -root@test-instance:~# umask 077Installa l'agente di trasporto della posta Postfix.
Debian
root@test-instance:~# apt update && apt -y install postfix libsasl2-modulesCentOS
root@test-instance:~# yum install postfix cyrus-sasl-plain cyrus-sasl-md5 -yQuando richiesto, seleziona la configurazione
Local Onlye accetta le scelte predefinite per i nomi di dominio.Modifica le opzioni di configurazione di Postfix. Le opzioni di configurazione di Postfix sono impostate nel file
main.cf. Apri il file con l'editor di testo che preferisci.root@test-instance:~# vi /etc/postfix/main.cfSe esistono, commenta le seguenti righe.
# default_transport = error # relay_transport = errorAggiungi il servizio SMTP di Mailgun inserendo la seguente riga alla fine del file.
relayhost = [smtp.mailgun.org]:2525Per applicare il supporto SSL/TLS e configurare l'autenticazione SMTP per queste richieste, aggiungi le seguenti righe alla fine del file. Un modulo SASL (Simple Authentication and Security Layer) gestisce l'autenticazione nella configurazione di Postfix.
smtp_tls_security_level = encrypt smtp_sasl_auth_enable = yes smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd smtp_sasl_security_options = noanonymousSalva le modifiche e chiudi il file.
Genera la mappa delle password SASL.
Crea un nuovo file di password pronto per l'input standard.
root@test-instance:~# cat > /etc/postfix/sasl_passwd << EOFQuando richiesto, inserisci i dettagli del servizio sostituendo
YOUR_SMTP_LOGINeYOUR_SMTP_PASSWORDcon le tue credenziali. Consulta la guida di Mailgun per istruzioni su come visualizzare o modificare le credenziali per dominio.> [smtp.mailgun.org]:2525 YOUR_SMTP_LOGIN:YOUR_SMTP_PASSWORDChiudi e salva il file digitando il delimitatore
EOF.> EOF
Utilizza l'utilità
postmapper generare un file.db.root@test-instance:~# postmap /etc/postfix/sasl_passwdroot@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
Dopodiché puoi rimuovere il file contenente le tue credenziali in quanto non più necessario.
root@test-instance:~# rm /etc/postfix/sasl_passwdImposta le autorizzazioni per il file
.db.root@test-instance:~# chmod 600 /etc/postfix/sasl_passwd.dbroot@test-instance:~# ls -la /etc/postfix/sasl_passwd.db -rw------- 1 root root 12288 Aug 31 18:51 /etc/postfix/sasl_passwd.db
Infine, ricarica la configurazione per caricare i parametri modificati.
Debian
root@test-wheezy:~# /etc/init.d/postfix restartCentOS
[root@test-centos ~]# postfix reloadTesta la configurazione. Installa il pacchetto
mailxomailutilse testa la configurazione.Debian
root@test-wheezy:~# apt -y install mailutilsCentOS
[root@test-centos ~]# yum install mailx -yInvia un messaggio di prova.
root@test-instance:~# echo 'Test passed.' | mail -s 'Test-Email' EMAIL@EXAMPLE.COMCerca nei log di sistema una riga di stato contenente
statuse il codice di risposta del server corretta(250).Debian
root@test-wheezy:~# tail -n 5 /var/log/syslogCentOS
[root@test-centos ~]# tail -n 5 /var/log/maillog
Per esempi dettagliati e informazioni su altri argomenti, tra cui monitoraggio e routing dei messaggi, consulta la documentazione di Mailgun.
Esplora architetture di riferimento, diagrammi e best practice su Google Cloud. Consulta il nostro Cloud Architecture Center.