sendmail.cf, um den Servernamen aus einer anderen Datei zu lesen?

sendmail.cf, um den Servernamen aus einer anderen Datei zu lesen?

Ich muss meiner Sendmail-Konfigurationsdatei den Namen eines Relay-Servers hinzufügen. Dieser Servername kann jedoch über ein anderes System/eine andere Anwendung konfiguriert werden.

Im Falle einer Änderung muss ich den Servernamen in dieser Datei ändern und Sendmail neu starten.

Außerdem habe ich nicht die Möglichkeit, die Datei sendmail.mc bei jeder Änderung neu zu kompilieren.

Ist es möglich, sendmail anzuweisen, eine weitere Datei für den Servernamen zu lesen/einzufügen. Diese Datei enthält den Namen des im System konfigurierten Servers?

so etwas wie: include("./severname.conf");

Dabei enthält servername.conf den Namen des Servers, zu dem die Weiterleitung erfolgen muss.

Ist es möglich?

Antwort1

Da es sich beim Smarthost um ein Makro handelt, $Sbenötigen Sie eine Befehlsfolge wie diese:

cd /etc/mail
cp sendmail.cf sendmail.cf.old
sed -e 's/^DSold.host.name/DSnew.host.name/' sendmail.cf.old > sendmail.cf 

und starten Sie dann sendmail neu.

Antwort2

Sie können die Standardroute in Mailertable anstelle des Smarthosts verwenden - sieheFUNKTION (Mailertabelle). Es wird konsultiert/verwendetVorSmarthost => es wird den Smarthost überschreiben.

Mailertable-Dateieintrag für Standardroute („einzelner Punkt“ als Schlüssel):

.  relay:smart-host.example.net

Sendmail verwendet die mit dem Programm kompilierte Version der Datei makemap. sendmailNach der Neukompilierung durch ist kein Neustart des Daemons erforderlich makemap.

So testen Sie es:

sendmail -C/etc/mail/sendmail-test.cf -d60.5 -bv [email protected]

-C file- alternative Konfigurationsdatei verwenden
-d60.5- Tracking-Kartensuche aktivieren (einschließlich Mailertable-Karte)

verwandte Informationen