So konfigurieren Sie einen Mailserver auf einer Virtual Machine

Um Port 25 auf Ihrer Virtual Machine (VM) zu öffnen, gehen Sie zu VPS Manager > wählen Sie den Tab „Mail Bridge“ > klicken Sie auf die Schaltfläche „Add Mail Bridge“.

Sobald der PTR-Eintrag gesetzt und Port 25 aktiviert ist, können Sie Ihren bevorzugten SMTP-Server einrichten. Nachfolgend finden Sie Beispiele für Postfix, Exim und Sendmail. Verwenden Sie die VM-IP, die in Ihrem VPS Manager angezeigt wird, und stellen Sie sicher, dass Ihr Domainname für den PTR-Eintrag mit Ihrer Absenderdomain übereinstimmt (z. B. mail.example.com).

Installation und Konfiguration von Postfix

# für Debian/Ubuntu

sudo apt update

sudo apt install postfix mailutils -y



# für Almalinux/Rocky/Cloudlinux/EL

# RPM-basierte Distributionen prüfen, um zu überprüfen

# falls Postfix installiert ist

rpm -qa | grep postfix

# falls dies nicht der Fall ist, führen Sie den folgenden Befehl aus, um Postfix zu installieren

sudo dnf install postfix



Wenn Postfix installiert ist, können Sie den Dienst starten und sicherstellen, dass er nach einem Neustart Ihres Servers automatisch gestartet wird:

sudo systemctl start postfix

sudo systemctl enable postfix

Anschließend können Sie den Dienst konfigurieren. Alle für den Dienst benötigten Optionen befinden sich im Verzeichnis /etc/postfix, und die Hauptkonfigurationsdatei ist /etc/postfix/main.cf

Führen Sie den Befehl sudo nano /etc/postfix/main.cf aus, um die Bearbeitung der Hauptkonfigurationsdatei zu starten, und fügen Sie diese Zeilen hinzu oder aktualisieren Sie sie:

inet_interfaces = all

# myhostname gibt den Hostnamen des Mailservers an

myhostname = mail.example.com

# mydomain gibt die Domain an, die E-Mails tatsächlich verarbeitet

domain = example.com

# mail_spool_directory gibt das Verzeichnis an, in dem Mailbox-Dateien abgelegt werden

mail_spool_directory = /var/mail

myorigin = /etc/mailname

mydestination = $myhostname, localhost.$mydomain, localhost

relayhost =

inet_protocols = all

smtp_banner = $myhostname ESMTP



Starten Sie Postfix neu, um die Änderungen anzuwenden:

sudo systemctl restart postfix



Testen Sie den E-Mail-Versand:

echo "Test message" | mail -s "Test Email" user@recipient.com

Installation und Konfiguration von Exim 4

# für Ubuntu/Debian

sudo apt update

sudo apt install exim4 -y



Der folgende Befehl zeigt eine Assistenten-Benutzeroberfläche zur Konfiguration der Software an. Damit können Benutzer entscheiden, ob Exim seine Konfiguration auf mehrere Dateien aufteilen oder in einer Datei speichern soll:

sudo dpkg-reconfigure exim4-config

Wenn die erste Option verwendet wird, wird die Konfiguration in den Unterverzeichnissen /etc/exim4/conf.d gespeichert. Wenn eine einzelne Konfigurationsdatei gewählt wird, ist es /etc/exim4/exim4.conf

Wenn alle Konfigurationen abgeschlossen sind, führen Sie systemctl restart exim4aus, damit die Änderungen wirksam werden.

Bearbeiten Sie /etc/exim4/update-exim4.conf.conf, um sicherzustellen, dass Folgendes gesetzt ist:

# dc_local_interfaces gibt die IP Ihres Maildienstes an (z. B. 203.0.113.10)

dc_local_interfaces='203.0.113.10'

# dc_readhost gibt Ihren System-Mailnamen an

dc_readhost='example.com'

# dc_other_hostnames gibt den System-Hostnamen an

dc_other_hostnames='mail.example.com'



Starten Sie Exim neu, um die Änderungen anzuwenden:

sudo systemctl restart exim4


Testen Sie die E-Mail-Zustellung, indem Sie den folgenden Befehl ausführen:

echo "Mail test" | mail -s "Exim Test" user@recipient.com

Installation und Konfiguration von Sendmail

# für Ubuntu/Debian

sudo apt update

sudo apt install sendmail sendmail-bin -y

# für Almalinux/Cloudlinux/RHEL

yum install sendmail sendmail-cf mailutils


Die Hauptkonfigurationsdatei von Sendmail ist /etc/mail/sendmail.cf. Vermeiden Sie es, diese Datei direkt zu bearbeiten. Wenn die Konfiguration bearbeitet werden muss, bearbeiten Sie stattdessen die Datei /etc/mail/sendmail.mc, sichern Sie die ursprüngliche Konfigurationsdatei und verwenden Sie eine der folgenden Alternativen, um eine neue Konfigurationsdatei zu erzeugen:

1) Verwenden Sie das enthaltene Makefile /etc/mail, um eine neue Konfiguration zu erstellen:

make all -C /etc/mail/

 

Alle erzeugten Dateien in /etc/mail werden bei Bedarf neu generiert.

2) Alternativ können Sie den Makroprozessor m4 verwenden, um eine neue /etc/mail/sendmail.cf zu erstellen. Der Makroprozessor m4 ist standardmäßig nicht installiert. Bevor Sie ihn zum Erstellen von /etc/mail/sendmail.cf verwenden, installieren Sie das Paket m4als root:

# für Almalinux/Cloudlinux/RHEL

yum install m4


# für Ubuntu/Debian

apt install m4


Die folgenden Sendmail-Konfigurationsdateien befinden sich im Verzeichnis /etc/mail/:

  • access- gibt an, welche Systeme Sendmail für ausgehende E-Mails verwenden können

  • domaintable- Domainnamen-Zuordnung

  • local-host-names - Aliasse für den Server-Host

  • mailertable- Anweisungen, die das Routing für bestimmte Domains überschreiben

  • virtusertable- gibt eine domainspezifische Form der Aliasbildung an, die es ermöglicht, mehrere virtuelle Domains auf dem Rechner zu hosten.


Nachfolgend sehen Sie Beispiele dafür, wie die Konfigurationsdateien bearbeitet werden können:

# Bearbeiten der Server-Host-Aliasse:

echo "mail.example.com" > /etc/mail/local-host-names


# Bindung an die Mail-IP durch Bearbeiten von /etc/mail/sendmail.mc:
DAEMON_OPTIONS(`Family=inet, Name=MTA-v4, Addr=203.0.113.10')dnl


# Neuerstellen der Konfiguration:
sudo m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf


# Testen:

echo "Hello from Sendmail" | mail -s "Sendmail test" user@recipient.com

Mehrere der oben genannten Konfigurationsdateien müssen ihre Informationen in Datenbankdateien speichern, bevor Änderungen wirksam werden können. Um Änderungen an den Konfigurationsdateien zu übernehmen, führen Sie den Befehl makemap hash /etc/mail/<name> < /etc/mail/<name>als root aus. Dabei steht <name> für den Namen der zu aktualisierenden Konfiguration.

Starten Sie den Sendmail-Prozess neu, indem Sie den Befehl systemctl restart sendmail ausführen.

Eine gültige E-Mail-Adresse ist erforderlich