Mail senden ist ein MTA-Server (Mail Transfer Agent), der zum Übertragen von E-Mails zwischen verschiedenen Hosts verwendet wird. Sendmail verwendet das SMTP-Protokoll (Simple Mail Transfer Protocol). Die meisten Systemadministratoren zogen es vor, den Sendmail-Server als MTA gegenüber anderen MTAs zu verwenden. Dieses Tutorial hilft Ihnen bei der Installation von Sendmail auf einem Debian 10 (Buster) Linux-System.
1. Installieren Sie Sendmail unter Debian 10
Wenn Sie Sendmail nicht installiert haben, verwenden Sie den folgenden Befehl, um Sendmail mit anderen erforderlichen Paketen mit dem apt-Paketmanager zu installieren.
sudo apt update sudo apt install sendmail sendmail-cf m4
2. Sendmail konfigurieren
Führen Sie nach der Paketinstallation die sendmailconfig aus Befehl, um die Grundkonfiguration abzuschließen.
sudo sendmailconfig
Wählen Sie für alle Optionen „J aus ‘ und drücken Sie die Eingabetaste. Warten Sie auf den Befehl finish.
Ihr Server ist zum Versenden von E-Mails bereit. Sie können die Linux-Befehlszeile oder das PHP-Skript verwenden, um E-Mails zu senden.
3. Empfangen Sie eingehende E-Mails
Um die eingehenden E-Mails zu empfangen, müssen Sie die Datei /etc/mail/sendmail.mc bearbeiten und die folgende Zeile kommentieren, um den Empfang einer E-Mail von überall zu ermöglichen. Um eine Zeile in sendmail.mc zu kommentieren, geben Sie einfach dnl ein Schlüsselwort am Anfang der Zeile.
dnl DAEMON_OPTIONS(`Family=inet, Name=MTA-v4, Port=smtp, Addr=127.0.0.1')dnl dnl DAEMON_OPTIONS(`Family=inet, Name=MSP-v4, Port=submission, M=Ea, Addr=127.0.0.1')dnl
Fügen Sie dann Ihre Domänennamen zur Datei /etc/mail/local-host-names hinzu.
cat /etc/mail/local-host-names tecadmin.net mail.tecadmin.net localhost localhost.localdomain
Verwenden Sie jetzt m4, einen Makroprozessor, um die Sendmail-Konfigurationsdateien zu kompilieren. m4 ist streambasiert, das heißt, es versteht nichts von Zeilen.
sudo m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
Starten Sie den Sendmail-Dienst neu
sudo systemctl restart sendmail
Ihr System ist bereit für eingehende E-Mails.
4. Domänenbasiertes E-Mail-Routing konfigurieren
Wie wir oben gelesen haben, wird diese virtusertable-Datei für Aliasing verwendet, wodurch mehrere virtuelle Domains auf einer Maschine gehostet werden können.
- 1. Alle E-Mails, die an die Domain @example.com adressiert sind, wurden an [email protected]
@example.org [email protected]
zugestellt - 2. Alle an [email protected] adressierten E-Mails werden an den lokalen Benutzer jack.
[email protected] jack
weitergeleitet - 3. Alle an @mydomain.com adressierten E-Mails werden an die Domain @otherdomain.com mit den entsprechenden Nutzernamen weitergeleitet.
@example.net %[email protected]
- 4. Alle E-Mails, die an @otherdomain.com adressiert sind, werden von meinem Mailserver zurückgewiesen, wobei der Absender mit der Nachricht
@otherdomain.com error:nouser User unknown
bestätigt wird
Nachdem Sie alle Änderungen in virtusertable vorgenommen haben, führen Sie den folgenden Befehl aus, um eine aktualisierte virtusertable.db-Datei zu erstellen, die die neue Konfiguration enthält.
sudo makemap hash /etc/mail/virtusertable < /etc/mail/virtusertable
Stellen Sie außerdem sicher, dass der folgende Eintrag in der Datei sendmail.mc hinzugefügt wird.
FEATURE(`virtusertable')
Eintrag hinzufügen falls nicht vorhanden und Konfigurationsdatei kompilieren
sudo m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
Starten Sie nun den Sendmail-Dienst neu
sudo systemctl restart sendmail
Vielen Dank für das Lesen dieses Artikels. Ich hoffe, dieser Artikel wird Ihnen helfen, Sendmail auf einem Debian 9 (Stretch)-System zu konfigurieren.
Verweise:
http://www.sendmail.com/
http://www.sendmail.com/sm/open_source/docs/m4/intro_m4.html