Il problema

Vuoi gestire un server Sendmail e per varie ragioni non puoi o non vuoi usare Postfix, Exim o Qmail. Tuttavia, Sendmail non deve consegnare la posta elettronica, ma solo inoltrarla a un smarthost.

Tutto questo funziona, ma: Sendmail non può consegnare la posta senza una risoluzione dei nomi funzionante. Questo è particolarmente fastidioso perché è superfluo quando si usa uno smarthost.

Se si richiamano le mail non consegnate con mailq -Ac si vedranno voci con deferred e hostname lookup.

La causa

La causa esatta non è (esattamente) nota. Sendmail cerca di risolvere o controllare i nomi di host o di dominio in vari punti.

Una soluzione

Creare un file /etc/mail/service.switch con il seguente contenuto:

/etc/mail/service.switch:hosts files
aliases files

Ora aggiungi la seguente riga al tuo codice sendmail.mc:

/etc/mail/sendmail.mc:define(`confSERVICE_SWITCH_FILE',`/etc/mail/service.switch')dnl

Non dimenticare di ricostruire il file sendmail.cf chiamando make, e poi riavviare o almeno ricaricare Sendmail.

Linux knowledge

Questi articoli sono stati scritti dal fondatore di Checkmk molti anni fa.
Tuttavia, sono ancora validi e quindi li conserviamo sul nostro sito web.
Da allora Mathias ha sviluppato un software di monitoraggio chiamato Checkmk.

Scopri di più