Configurare Postfix come Relay per Office 365
In molti scenari aziendali, è necessario che un server Linux invii email (notifiche di sistema, report, ecc.) appoggiandosi all’infrastruttura di Office 365. Per farlo in modo sicuro, dobbiamo configurare Postfix affinché utilizzi il protocollo TLS e l’autenticazione SASL.
In questa guida vedremo come impostare il relayhost corretto e gestire le credenziali di accesso.
1. Configurazione di Postfix (main.cf)
Dobbiamo istruire Postfix su quale server utilizzare e come gestire la sicurezza della connessione. Apri il file /etc/postfix/main.cf e aggiungi o modifica le seguenti righe:
# Server di relay di Office 365 sulla porta 587
relayhost = [smtp.office365.com]:587
# Abilitazione autenticazione SASL
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_sasl_mechanism_filter = plain, login
# Obbligatorio: Criptazione TLS per Office 365
smtp_tls_security_level = encrypt
2. Gestione delle Credenziali
Ora dobbiamo creare il file che contiene l’email e la password per l’autenticazione.
Creazione del file delle password
Crea il file /etc/postfix/sasl_passwd:
# Inserisci il server e le tue credenziali nel formato [server]:porta utente:password
[smtp.office365.com]:587 utente@miodominio.it:tua_password_segreta
Protezione e indicizzazione
Per motivi di sicurezza, solo l’utente root deve poter leggere questo file. Successivamente, dobbiamo generare il database per Postfix:
# Impostiamo i permessi restrittivi
chmod 600 /etc/postfix/sasl_passwd
# Generiamo il file .db per Postfix
postmap /etc/postfix/sasl_passwd
3. Applicazione delle modifiche
Per rendere effettive le nuove impostazioni, è necessario ricaricare il servizio Postfix:
# Ricarica la configurazione
sudo systemctl reload postfix
4. Configurazione Multi-utente (Opzionale)
Se hai bisogno di mappare diversi mittenti su diverse credenziali di relay, puoi popolare il file delle password con più voci:
@miodominio.it utente@miodominio.it:password
utente2@miodominio.it utente@miodominio.it:password
@miodominio.com utente@miodominio.com:password