Marzo 9, 2022

Come installare e configurare Sendmail su Ubuntu

Come installare e configurare Sendmail su Ubuntu per l’invio di e-mail utilizzando un server di posta elettronica che instrada o inoltra la consegna della posta.

Sendmail è un agente di trasferimento di posta opensource (MTA) che viene utilizzato per instradare la posta elettronica utilizzando il server o utilizzando i comandi della shell. È inoltre possibile configurare SMTP utilizzando Sendmail.

In questa guida imparerai come installare e configurare Sendmail su Ubuntu. Inoltre si imposta SMTP e configurarlo con PHP.

Miglior Hosting per il tuo Business

la Piattaforma Recensioni Prezzi
Cloudways ★★★★★ $10
Kinsta – Google Cloud ★★★★★ $30

Server di Aggiornamento di Pacchetti

SSH all’interno del tuo server e aggiornare i pacchetti alla versione più recente.

sudo apt updatesudo apt upgrade

Installa Sendmail

Sendmail è disponibile nel repository di Ubuntu, quindi puoi installare direttamente usando il comando apt install.

sudo apt install sendmail

Configura nome host

Modifica il file /etc/hosts e aggiungi il tuo nome host.

sudo nano /etc/hosts

Sulla riga che inizia con 127.0.0.1, aggiungi hostname alla fine come appare di seguito. Questo dovrebbe essere su una singola riga.

127.0.0.1 localhost hostname

Configura SMTP

Crea una nuova directory all’interno di /etc/mail per le configurazioni SMTP.

sudo mkdir /etc/mail/authinfo

Imposta le autorizzazioni corrette.

sudo chmod -R 700 /etc/mail/authinfo

Crea un nuovo file per l’autenticazione SMTP all’interno della directory appena creata.

cd /etc/mail/authinfosudo nano smtp-auth

Incolla la riga seguente e sostituisci l’indirizzo email con l’email di accesso e la password con la password.

AuthInfo: "U:root" "I:email-address" "P:password"

Premere CRTL + X seguito da Y e ENTER per salvare e uscire dal file.

Crea una mappa di database hash per l’autenticazione creata sopra.

sudo makemap hash smtp-auth < smtp-auth

Configura SMTP

Vai alla directory di configurazione di sendmail e modifica il file sendmail.mc.

cd /etc/mailsudo nano sendmail.mc

Aggiungi le seguenti configurazioni subito dopo la riga MAILER _DEFINITIONS.

Sostituisci smtp-host con il tuo nome host SMTP.

define(`SMART_HOST',`')dnldefine(`RELAY_MAILER_ARGS', `TCP $h 587')dnldefine(`ESMTP_MAILER_ARGS', `TCP $h 587')dnldefine(`confAUTH_OPTIONS', `A p')dnlTRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnldefine(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnlFEATURE(`authinfo',`hash -o /etc/mail/authinfo/smtp-auth.db')dnl

La configurazione dovrebbe avere lo stesso aspetto dello screenshot qui sotto.

Configurazione SMTP

Ora salva il file e esci dall’editor.

Ricostruisci la configurazione di Sendmail

Una volta completata la configurazione, devi ricostruire la configurazione di Sendmail usando il comando make.

cd /etc/mailmake

Una volta ricostruita la configurazione è necessario riavviare Sendmail

Riavviare Sendmail

Riavviare Sendmail utilizzando il seguente comando.

sudo /etc/init.d/sendmail restart

Ora è possibile inviare e-mail utilizzando SMTP.

Configurazioni aggiuntive

Configurazione con PHP

Per utilizzare Sendmail con PHP è necessario inserire il percorso di sendmail nel file php.ini.

sudo nano /etc/php/version/fpm-or-apache2/php.ini

In fondo al file aggiungi quanto segue.

sendmail_path= /usr/sbin/sendmail -t -i

Riavvia Apache o PHP-FPM affinché le modifiche abbiano effetto.

sudo service apache2 restartorsudo service php8.0-fpm restart

Configurazione SMTP di Sendmail senza autenticazione

In caso di whitelisting dell’IP del server per SMTP e di invio di e-mail senza autenticazione, è possibile seguire il seguente metodo.

Non è necessario creare il file smtp-auth che abbiamo creato sopra.

È possibile modificare direttamente il file sendmail.mc e apportare le seguenti modifiche.

cd /etc/mailsudo nano sendmail.mc

Aggiungi le seguenti configurazioni all’ultima.

Sostituisci smtp-host con il tuo nome host SMTP.

define(`SMART_HOST',`smtp-host')dnldefine(`RELAY_MAILER', `esmtp')dnldefine(`RELAY_MAILER_ARGS', `TCP $h 587')dnl

Salvare il file, ricostruire la configurazione e riavviare Sendmail.

cd /etc/mailmakesudo /etc/init.d/sendmail restart

Conclusione

Ora hai imparato come installare e configurare Sendmail per inoltrare usando SMTP su Ubuntu.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.