März 9, 2022

So installieren und konfigurieren Sie Sendmail unter Ubuntu

So installieren und konfigurieren Sie Sendmail unter Ubuntu zum Senden von E-Mails über einen E-Mail-Server, der die E-Mail-Zustellung weiterleitet oder weiterleitet.

Sendmail ist ein Opensource Mail Transfer Agent (MTA), der zum Weiterleiten von E-Mails über Server oder Shell-Befehle verwendet wird. Sie können SMTP auch mit Sendmail konfigurieren.

In diesem Handbuch erfahren Sie, wie Sie Sendmail unter Ubuntu installieren und einrichten. Außerdem richten Sie SMTP ein und konfigurieren es mit PHP.

Bestes Hosting für Ihr Unternehmen

Plattform Bewertungen Preise
Cloudways ★★★★★ $10
Kinsta – Google Cloud ★★★★★ $30

Aktualisieren Sie die Serverpakete

SSH in Ihrem Server und aktualisieren Sie die Pakete auf die neueste Version.

sudo apt updatesudo apt upgrade

Sendmail installieren

Sendmail ist im Ubuntu-Repository verfügbar, sodass Sie es direkt mit dem Befehl apt install installieren können.

sudo apt install sendmail

Hostname konfigurieren

Bearbeiten Sie die /etc/hosts-Datei und fügen Sie Ihren Hostnamen hinzu.

sudo nano /etc/hosts

Fügen Sie in der Zeile, die mit 127.0.0.1 beginnt, das hostname am Ende hinzu, wie es unten aussieht. Dies sollte in einer einzigen Zeile erfolgen.

127.0.0.1 localhost hostname

SMTP konfigurieren

Neues Verzeichnis in /etc/mailfür SMTP-Konfigurationen erstellen.

sudo mkdir /etc/mail/authinfo

Korrekte Berechtigungen einrichten.

sudo chmod -R 700 /etc/mail/authinfo

Erstellen Sie eine neue Datei für Ihre SMTP-Authentifizierung im neu erstellten Verzeichnis.

cd /etc/mail/authinfosudo nano smtp-auth

Fügen Sie die folgende Zeile ein und ersetzen Sie die E-Mail-Adresse durch Ihre Login-E-Mail und das Passwort durch Ihr Passwort.

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

Drücken Sie CRTL + X gefolgt von Y und ENTER, um die Datei zu speichern und zu beenden.

Erstellen Sie eine Hash-Datenbankzuordnung für die oben erstellte Authentifizierung.

sudo makemap hash smtp-auth < smtp-auth

SMTP konfigurieren

Navigieren Sie zum sendmail-Konfigurationsverzeichnis und bearbeiten Sie die sendmail.mc-Datei.

cd /etc/mailsudo nano sendmail.mc

Fügen Sie die folgenden Konfigurationen direkt nach der Zeile MAILER _DEFINITIONS hinzu.

Ersetzen Sie smtp-host durch Ihren SMTP-Hostnamen.

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

Die Konfiguration sollte wie im folgenden Screenshot aussehen.

SMTP-Konfiguration

Speichern Sie nun die Datei und beenden Sie den Editor.

Sendmail-Konfiguration neu erstellen

Sobald die Konfiguration abgeschlossen ist, müssen Sie die Sendmail-Konfiguration mit dem Befehl make neu erstellen.

cd /etc/mailmake

Sobald die Konfiguration wiederhergestellt ist, müssen Sie Sendmail

Restart Sendmail

Restart Sendmail mit dem folgenden Befehl neu starten.

sudo /etc/init.d/sendmail restart

Jetzt können Sie E-Mails mit SMTP senden.

Zusätzliche Konfigurationen

Konfiguration mit PHP

Um Sendmail mit PHP zu verwenden, müssen Sie den Sendmail-Pfad in Ihrer php.ini -Datei angeben.

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

Fügen Sie am Ende der Datei Folgendes hinzu.

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

Starten Sie Apache oder PHP-FPM neu, damit die Änderungen wirksam werden.

sudo service apache2 restartorsudo service php8.0-fpm restart

Sendmail SMTP-Konfiguration ohne Auth

Falls Sie Ihre Server-IP für SMTP auf die Whitelist gesetzt haben und E-Mails ohne Authentifizierung senden können, können Sie der folgenden Methode folgen.

Sie müssen die smtp-auth -Datei, die wir oben erstellt haben, nicht erstellen.

Sie können die sendmail.mc-Datei direkt bearbeiten und die folgenden Änderungen vornehmen.

cd /etc/mailsudo nano sendmail.mc

Fügen Sie die folgenden Konfigurationen zur letzten hinzu.

Ersetzen Sie smtp-host durch Ihren SMTP-Hostnamen.

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

Speichern Sie die Datei, erstellen Sie die Konfiguration neu und starten Sie Sendmail neu.

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

Fazit

Jetzt haben Sie gelernt, wie Sie Sendmail mithilfe von SMTP unter Ubuntu installieren und konfigurieren.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.