So installieren und konfigurieren Sie Sendmail unter Debian 10 zum Senden von E-Mails mit einem E-Mail-Server, der die E-Mail-Zustellung weiterleitet oder weiterleitet.
Sendmail ist ein Open-Source-Mail-Transfer-Agent (MTA), der zum Weiterleiten von E-Mails mithilfe von Server- oder Shell-Befehlen verwendet wird. Sie können SMTP auch mit Sendmail konfigurieren.
In diesem Handbuch erfahren Sie, wie Sie Sendmail unter Debian 10 installieren und einrichten. Außerdem werden Sie SMTP einrichten und mit PHP konfigurieren. Diese Einrichtung wurde in Google Cloud getestet
Serverpakete aktualisieren
SSH auf Ihrem Server und aktualisieren Sie die Pakete auf die neueste Version.
sudo apt update sudo apt upgrade
Sendmail installieren
Sendmail ist im Debian-Repository verfügbar, sodass Sie es direkt mit apt install
installieren können Befehl.
sudo apt install sendmail
Hostnamen konfigurieren
Bearbeiten Sie /etc/hosts
Datei und fügen Sie Ihren Hostnamen hinzu.
sudo nano /etc/hosts
Auf der Zeile beginnend mit 127.0.0.1
, fügen Sie die hostname
hinzu bis zum Ende, wie es unten aussieht. Dies sollte in einer einzigen Zeile stehen.
127.0.0.1 localhost hostname
Ersetzen Sie hostname
mit Ihrem Hostnamen .
SMTP konfigurieren
Erstellen Sie ein neues Verzeichnis in /etc/mail
für SMTP-Konfigurationen.
sudo mkdir /etc/mail/authinfo
Richten Sie die richtigen Berechtigungen ein.
sudo chmod -R 700 /etc/mail/authinfo
Erstellen Sie innerhalb des neu erstellten Verzeichnisses eine neue Datei für Ihre SMTP-Authentifizierung.
cd /etc/mail/authinfo sudo 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-Datenbankkarte für die oben erstellte Authentifizierung.
sudo makemap hash smtp-auth < smtp-auth
SMTP konfigurieren
Navigieren Sie zum sendmail-Konfigurationsverzeichnis und bearbeiten Sie den sendmail.mc
Datei.
cd /etc/mail sudo nano sendmail.mc
Fügen Sie die folgenden Konfigurationen direkt nach den MAILER _DEFINITIONS hinzu Linie.
Ersetzen Sie smtp-host
mit Ihrem SMTP-Hostnamen.
define(`SMART_HOST',`[smtp-host]')dnl define(`RELAY_MAILER_ARGS', `TCP $h 587')dnl define(`ESMTP_MAILER_ARGS', `TCP $h 587')dnl define(`confAUTH_OPTIONS', `A p')dnl TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl FEATURE(`authinfo',`hash -o /etc/mail/authinfo/smtp-auth.db')dnl
Die Konfiguration sollte wie im folgenden Screenshot aussehen.
Speichern Sie nun die Datei und beenden Sie den Editor.
Sendmail-Konfiguration neu aufbauen
Sobald die Konfiguration abgeschlossen ist, müssen Sie die Sendmail-Konfiguration mit dem make
neu erstellen Befehl.
cd /etc/mail make
Sobald die Konfiguration neu aufgebaut ist, müssen Sie Sendmail neu starten
Sendmail neu starten
Starten Sie Sendmail mit dem folgenden Befehl neu.
sudo /etc/init.d/sendmail restart
Jetzt können Sie E-Mails über SMTP versenden.
Zusätzliche Konfigurationen
Konfiguration mit PHP
Um Sendmail mit PHP zu verwenden, müssen Sie den Sendmail-Pfad in Ihrem php.ini
angeben Datei.
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 restart or sudo service php8.0-fpm restart
Sendmail-SMTP-Konfiguration ohne Authentifizierung
Falls Sie Ihre Server-IP für SMTP auf die weiße Liste gesetzt haben und E-Mails ohne Authentifizierung senden können, können Sie die folgende Methode befolgen.
Sie müssen den smtp-auth
nicht erstellen Datei, die wir oben erstellt haben.
Sie können den sendmail.mc
direkt bearbeiten Datei und nehmen Sie die folgenden Änderungen vor.
cd /etc/mail sudo nano sendmail.mc
Fügen Sie die folgenden Konfigurationen zur letzten hinzu.
Ersetzen Sie smtp-host
mit Ihrem SMTP-Hostnamen.
define(`SMART_HOST',`smtp-host')dnl define(`RELAY_MAILER', `esmtp')dnl define(`RELAY_MAILER_ARGS', `TCP $h 587')dnl
Speichern Sie die Datei, erstellen Sie die Konfiguration neu und starten Sie Sendmail neu.
cd /etc/mail make sudo /etc/init.d/sendmail restart
Schlussfolgerung
Jetzt haben Sie gelernt, wie Sie Sendmail für die Weiterleitung mit SMTP unter Debian 10 installieren und konfigurieren.
Vielen Dank für Ihre Zeit. Wenn Sie auf ein Problem oder Feedback stoßen, hinterlassen Sie bitte unten einen Kommentar.