E-Mail Konfiguration · 3 min read · Dec 25, 2025

Konfiguration von SendMail als SmartHost und zum Umschreiben der Absenderadresse

Konfiguration von SendMail als SmartHost und zum Umschreiben der Absenderadresse

Dieses Tutorial erklärt, wie man einen Sendmail-Server konfiguriert, um alle von localhost generierten E-Mails an einen anderen SMTP-Server weiterzuleiten, um E-Mails an entfernte Empfänger zu senden. Außerdem wird erklärt, wie man die Absenderadresse von [email protected] in [email protected] umschreibt.

Beispiel-Szenario: Sie haben einen Produktionsserver, der nicht konfiguriert ist, um E-Mails extern weiterzuleiten, aber es gibt eine Anwendung, die auf diesem Server läuft und ihre Protokolle an die angegebene E-Mail-Adresse bezüglich ihres Status und im Falle von Dienstfehlern sendet. Da Sendmail lokal unter dem Namen localhost.localdomain läuft, versucht es, die E-Mail von [email protected] an den entfernten SMTP-Server weiterzuleiten, was abgelehnt wird, weil localhost.localdomain auf eine ungültige IP-Adresse aufgelöst wird. Um dies zu überwinden, müssen wir die Absenderadresse von [email protected] in [email protected] umschreiben, damit der andere SMTP-Server die E-Mail von [email protected] an [email protected] oder an jede andere Adresse, an die Sie die Dienststatus-E-Mail senden möchten, weiterleitet.

HINWEIS: Bestimmte Teile dieses Tutorials gelten nur für Redhat-basierte Systeme, aber im Allgemeinen gilt das Verfahren für alle Sendmail-Server.

SMARTHOST IP : 10.1.1.50
SMTP HOST IP : 10.1.1.10

Überprüfen der installierten RPMS:

Zuerst sollten die Sendmail-RPMs installiert werden. Standardmäßig wird Sendmail mit der Systeminstallation installiert.

Überprüfen Sie die installierten Sendmail-RPMs:

root@nerdplanet# rpm -q sendmail sendmail-cf

Diese beiden Pakete sollten als installiert aufgelistet sein:

sendmail-8.xx
sendmail-cf-8.xx

Wenn sie noch nicht installiert sind, installieren Sie sie.

Installieren der RPMS

root@nerdplanet# yum install sendmail sendmail-cf

Es sollte sie in Ihrem Linux-System installieren.

Sobald sie installiert sind, müssen Sie sicherstellen, dass der Server gestartet wird und beim Neustart automatisch startet.

root@nerdplanet# chkconfig sendmail on 
root@nerdplanet# service sendmail start

Jetzt ist der Server aktiv und läuft.

Fügen Sie zuerst die IP-Adresse des Remote-Servers und seinen Domainnamen zur /etc/hosts hinzu.

vi /etc/hosts
10.1.1.10    smtp.example.com

Sie müssen den obigen Schritt nicht ausführen, wenn Ihr lokaler DNS den Domainnamen auf die IP-Adresse des SMTP-Servers auflösen kann, der zum Weiterleiten von E-Mails konfiguriert ist.

Bearbeiten der Sendmail-Konfigurationsdatei zum Weiterleiten von E-Mails

vi /etc/mail/sendmail.mc

E-Mails an den Smarthost weiterleiten

dnl # define(`SMART_HOST',`smtp.example.net') 

Suchen Sie die Zeile, die den obigen Eintrag enthält, und ersetzen Sie ihn durch die Adresse Ihres SMTP-Servers.

define(`SMART_HOST',`smtp.example.com')

Dann speichern Sie die Datei.

Zum Umschreiben der Absenderadresse der E-Mails erstellen Sie die Datei genericstable.

vi /etc/mail/genericstable

Geben Sie in der Generics-Tabelle die folgenden Zeilen ein:

root    [email protected]
mohan   [email protected]

Die obigen Zeilen bedeuten, dass alle E-Mails, die von root gesendet werden, als von [email protected] anstelle von [email protected] erscheinen, und wenn eine E-Mail von dem Benutzer mohan gesendet wird, erscheint sie als von [email protected] anstelle von [email protected]

Dann speichern Sie die Datei.

Aktivieren von Funktionen in der Sendmail-Konfigurationsdatei.

vi /etc/mail/sendmail.mc

Fügen Sie diese Zeilen hinzu, um Funktionen zu aktivieren:

FEATURE(masquerade_envelope)dnl
FEATURE(`genericstable')dnl
GENERICS_DOMAIN(`localhost.localdomain')dnl

Führen Sie dann aus:

make -C /etc/mail

Es sollte alle Dateien im Verzeichnis /etc/mail kompilieren und die Änderungen aktualisieren.

Danach starten Sie den Sendmail-Dienst neu.

root@nerdplanet# service sendmail restart

Das ist es, Sie haben Sendmail konfiguriert, um als Smarthost zu fungieren.

Konfiguration Ihres SMTP-Servers zum Akzeptieren von E-Mails von Smarthosts:


HINWEIS: Dieses Verfahren gilt nur, wenn der entfernte Live-SMTP-Server ein Sendmail-Server ist, was in diesem Szenario der Fall ist. Für andere SMTP-Server verweisen Sie auf deren Dokumentation.

Voraussetzungen: Der Live-SMTP-Server verwendet bereits FEATURE (‘access_db’..

Bearbeiten Sie die Zugriffsdatei im Live-SMTP-Server, um E-Mails vom Smarthost zu akzeptieren.

vi /etc/mail/access
connect:10.1.1.50    RELAY
cd /etc/mail

Rebuilden Sie die Access-Datenbankdatei.

/usr/sbin/makemap hash access < access

Starten Sie den Sendmail-Dienst neu.

root@smtp# service sendmail restart

Das ist es; der entfernte SMTP-Server wird E-Mails vom Smarthost akzeptieren.

Ich hoffe, dieses Tutorial ist für jemanden nützlich. Bitte hinterlassen Sie Ihre Kommentare.

Original-Link: Dieses Tutorial ist auch verfügbar unter http://www.nerdplanet.co.uk.

Prost!

Mohan.

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.