Ein Postfix-Mail­ser­ver unter Ubuntu 24.04 übernimmt den Versand und Empfang von E-Mails. Dovecot stellt dazu den IMAP(S)- und POP3-Zugriff auf die Post­fä­cher bereit, während Roundcube als Webmail-Ober­flä­che dient, damit Sie Ihre E-Mails direkt im Browser lesen und schreiben können. In dieser Schritt-für-Schritt-Anleitung erfahren Sie, wie Sie alle drei Kom­po­nen­ten auf Ubuntu 24.04 in­stal­lie­ren und zu einem funk­ti­ons­fä­hi­gen Mail­ser­ver zu­sam­men­füh­ren.

Schritt 1: An­for­de­run­gen prüfen

Bevor Sie damit beginnen, einen eigenen Mail­ser­ver zu betreiben, müssen einige grund­le­gen­de An­for­de­run­gen erfüllt sein. Zunächst benötigen Sie einen Server mit Ubuntu 24.04 LTS, Root- oder sudo-Zugriff und einer festen öf­fent­li­chen IP-Adresse. Für einen sauber er­reich­ba­ren Mail­ser­ver ist außerdem eine Domain vonnöten. Ein Hostname, der später auch für TLS und Mail­pro­gram­me verwendet wird, ver­ein­facht das Aufsetzen eines Mail­ser­vers unter Linux Ubuntu ebenfalls. Für einen pro­duk­ti­ven Einsatz sollten zu­sätz­lich DNS-Einträge, ein gültiges TLS-Zer­ti­fi­kat sowie geöffnete Ports für SMTP, Sub­mis­si­on, IMAP(S) und HTTPS ein­ge­plant werden.

Pro­fes­sio­nel­ler Mail-Server mit voller Kontrolle
E-Mail-Server von IONOS
  • Höchste Si­cher­heits­stan­dards
  • Au­to­ma­ti­sche Ver­schlüs­se­lung mit SSL/TLS
  • ISO 27001 zer­ti­fi­zier­te und geo­red­un­dan­te Re­chen­zen­tren
  • IMAP & SMTP

Schritt 2: System ak­tua­li­sie­ren und Hostnamen setzen

Ak­tua­li­sie­ren Sie zunächst Ihr System, damit alle Pakete auf einem sauberen und aktuellen Stand sind. Gerade bei Mail­ser­vern ist dieser Schritt sehr wichtig, da Si­cher­heits­up­dates hier eine große Rolle spielen. Setzen Sie an­schlie­ßend den voll­stän­di­gen Hostnamen Ihres Servers auf den Namen, unter dem der Mail­ser­ver später er­reich­bar sein soll. Im Beispiel wird dafür mail.example.com verwendet; ersetzen Sie diesen Wert überall durch Ihre eigene Domain.

sudo apt update
sudo apt upgrade -y
sudo hostnamectl set-hostname mail.example.com
echo "mail.example.com" | sudo tee /etc/mailname
bash

Prüfen Sie danach, ob der Hostname korrekt über­nom­men wurde:

hostname -f
cat /etc/mailname
bash

Der Befehl hostname -f sollte den voll­stän­di­gen Namen des Servers ausgeben. Falls Ihr Server bereits produktiv genutzt wird, sollten Sie den Hostnamen bewusst wählen und bei­be­hal­ten, da dieser in mehreren Mail- und TLS-Ein­stel­lun­gen verwendet wird.

Bild: Terminalausgabe von hostname
Nach korrekter Ein­stel­lung gibt der Befehl „hostname -f“ den Ser­ver­na­men aus.

Schritt 3: Postfix in­stal­lie­ren

Im nächsten Schritt erfolgt die In­stal­la­ti­on von Postfix unter Ubuntu. Dies ist der ei­gent­li­che Mail Transfer Agent (MTA). Während der In­stal­la­ti­on erscheint ein Kon­fi­gu­ra­ti­ons­dia­log. Starten Sie die In­stal­la­ti­on mit folgendem Befehl:

sudo apt install postfix -y
bash
Bild: Postfix-Konfiguration: Assistent
Nachdem Sie die In­stal­la­ti­on von Postfix begonnen haben, startet der In­stal­la­ti­ons­as­sis­tent.

Für dieses Grund­set­up wählen Sie am besten Internet Site und tragen als System-Mailname Ihre Domain ein. Ansonsten können Sie die Stan­dard­wer­te zunächst über­neh­men und die Fein­ein­stel­lun­gen an­schlie­ßend vornehmen.

Bild: Postfix-Konfiguration: Internet Site wählen
Wählen Sie bei der Postfix-Kon­fi­gu­ra­ti­on den Kon­fi­gu­ra­ti­ons­typ „Internet Site“ aus.

Wenn Sie sich beim ersten Durchlauf unsicher waren oder den Sys­tem­na­men nach­träg­lich ändern möchten, können Sie die Kon­fi­gu­ra­ti­on jederzeit mit folgendem Ter­mi­nal­be­fehl verändern:

sudo dpkg-reconfigure postfix
bash

Schritt 4: Postfix auf Maildir umstellen

Damit Dovecot später auf die Post­fä­cher zugreifen kann, müssen Sie festlegen, wie E-Mails auf dem Server ge­spei­chert werden. Dafür wird das so­ge­nann­te Maildir-Format verwendet.

Im Maildir-Format erhält jede Be­nut­ze­rin und jeder Benutzer im eigenen Home-Ver­zeich­nis einen Ordner namens Maildir. In diesem Ordner werden die E-Mails über­sicht­lich in einzelnen Dateien ge­spei­chert. Das ist besonders wichtig für IMAP(S) (also zum Beispiel auch Roundcube), da mehrere Geräte gleich­zei­tig auf das Postfach zugreifen können.

Setzen Sie die ent­spre­chen­de Ein­stel­lung in Postfix mit folgendem Befehl und starten Sie den Dienst an­schlie­ßend neu:

sudo postconf -e 'home_mailbox = Maildir/'
sudo systemctl restart postfix
bash

Damit legen Sie fest, dass Postfix neue E-Mails au­to­ma­tisch im Ordner Maildir des je­wei­li­gen Users ablegt. An­schlie­ßend sollten Sie über­prü­fen, ob die Ein­stel­lung korrekt über­nom­men wurde:

postconf home_mailbox
bash

Wenn alles richtig gesetzt ist, wird Ihnen home_mailbox = Maildir/ angezeigt. Diese kurze Kontrolle ist sinnvoll, damit Sie Kon­fi­gu­ra­ti­ons­feh­ler sofort erkennen und später keine Probleme bei der Zu­stel­lung oder beim Zugriff über Dovecot bekommen.

Bild: Postconf-Einstellungen
Nach er­folg­rei­chem Setup wird als Home-Mailbox „Maildir/“ angezeigt.

Schritt 5: Dovecot in­stal­lie­ren

In­stal­lie­ren Sie nun Dovecot. Dieser Dienst sorgt dafür, dass Be­nut­ze­rin­nen und Benutzer ihre E-Mails zum Beispiel über Mail­pro­gram­me oder über Roundcube im Browser abrufen können. Für ein einfaches Setup benötigen Sie die Grund­kom­po­nen­te sowie IMAP. POP3 können Sie zu­sätz­lich in­stal­lie­ren, was heute aber meist nicht mehr notwendig ist, da IMAP im Vergleich zu POP3 moderner ist und E-Mails auf dem Server belässt. So bleiben Ihre Nach­rich­ten auf mehreren Geräten synchron.

In­stal­lie­ren Sie Dovecot mit folgendem Befehl:

sudo apt install dovecot-core dovecot-imapd dovecot-pop3d -y
bash

Ak­ti­vie­ren und starten Sie den Dienst an­schlie­ßend direkt:

sudo systemctl enable --now dovecot
bash

Damit stellen Sie sicher, dass Dovecot sofort läuft und auch nach einem Neustart au­to­ma­tisch gestartet wird. Über­prü­fen Sie danach den Status:

sudo systemctl status dovecot
bash

Wenn alles korrekt funk­tio­niert, sehen Sie den Status „active (running)“.

Bild: Status: Dovecot
Sobald Dovecot in­stal­liert und gestartet wurde, sollte beim Status „Active (running)“ angezeigt werden.

Schritt 6: Dovecot für Maildir kon­fi­gu­rie­ren

Als Nächstes sagen Sie Dovecot, wo die Post­fä­cher liegen. Für unser einfaches Setup mit lokalen Be­nut­zer­kon­ten verwenden Sie ebenfalls Maildir im Home-Ver­zeich­nis. Dovecot nutzt stan­dard­mä­ßig eine Kon­fi­gu­ra­ti­ons­struk­tur mit ein­ge­bun­de­nen Dateien unter /etc/dovecot/conf.d/, weshalb gezielte Än­de­run­gen in den einzelnen Dateien besonders über­sicht­lich sind.

Öffnen Sie zunächst die Datei 10-mail.conf:

sudo nano /etc/dovecot/conf.d/10-mail.conf
bash

Suchen Sie die Zeile mit mail_location und setzen Sie sie auf folgenden Wert:

mail_location = maildir:~/Maildir
Bild: Anzeige der 10-mail.conf-Datei
Setzen Sie in der Kon­fi­gu­ra­ti­ons­da­tei „mail_location“ auf „maildir:~/Maildir“.

Speichern Sie die Datei und starten Sie Dovecot neu:

sudo systemctl restart dovecot
bash

Mit der gerade ge­tä­tig­ten Ein­stel­lung greifen Postfix und Dovecot auf dieselbe Mailbox-Struktur zu, was für ein stabiles Zu­sam­men­spiel ent­schei­dend ist. Wenn Sie später kom­ple­xe­re Setups mit vir­tu­el­len Be­nut­ze­rin­nen und Benutzern planen, würden Sie hier andere Pfade und Be­nut­zer­da­ten­ban­ken verwenden; für den Einstieg ist die Home-Ver­zeich­nis-Variante aber deutlich leichter nach­voll­zieh­bar.

Hinweis

Dovecot stellt auf Ubuntu stan­dard­mä­ßig bereits ver­schlüs­sel­te Ver­bin­dun­gen (IMAPS auf Port 993) bereit. Dabei wird in der Regel ein au­to­ma­tisch erzeugtes, selbst­si­gnier­tes Zer­ti­fi­kat verwendet (ssl-cert). Für erste Tests funk­tio­niert dies pro­blem­los. Mail­pro­gram­me und auch Roundcube zeigen jedoch häufig eine Zer­ti­fi­kats­war­nung an, da das Zer­ti­fi­kat nicht als ver­trau­ens­wür­dig ein­ge­stuft wird. Für den pro­duk­ti­ven Einsatz sollten Sie daher ein gültiges TLS-Zer­ti­fi­kat in der Dovecot-Kon­fi­gu­ra­ti­on (/etc/dovecot/conf.d/10-ssl.conf) hin­ter­le­gen.

Schritt 7: Dovecot-Au­then­ti­fi­zie­rung für Postfix freigeben

Damit sich User später auch per SMTP au­then­ti­fi­zie­ren können, muss Postfix die Au­then­ti­fi­zie­rung über Dovecot nutzen dürfen. Hierfür benötigen Sie eine Unix-Socket-Ver­bin­dung zwischen beiden Diensten. Dazu passen Sie die Datei namens 10-master.conf an und legen dort einen Listener unter /var/spool/postfix/private/auth an. Dieser Schritt ist es­sen­zi­ell, da Postfix ohne diese Ver­bin­dung zwar Mails annehmen könnte, aber keine saubere SMTP-Anmeldung für Be­nut­ze­rin­nen und Benutzer be­reit­stellt. Öffnen Sie zunächst die Datei:

sudo nano /etc/dovecot/conf.d/10-master.conf
bash

Ergänzen oder ent­kom­men­tie­ren Sie im Block service auth den folgenden Abschnitt:

service auth {
    unix_listener /var/spool/postfix/private/auth {
        mode = 0660
        user = postfix
        group = postfix
    }
}
txt

Öffnen Sie danach die Datei 10-auth.conf, damit sich auch typische Mail­pro­gram­me pro­blem­los anmelden können.

sudo nano /etc/dovecot/conf.d/10-auth.conf
bash

Es wird empfohlen, neben plain auch login zu ak­ti­vie­ren, weil einige Clients dieses Verfahren weiterhin erwarten. Setzen Sie dort daher folgende Zeile:

auth_mechanisms = plain login
bash
Bild: Anzeige der 10-auth.conf-Datei
Setzen Sie in der Kon­fi­gu­ra­ti­ons­da­tei „auth_me­cha­nisms“ auf „plain“ und „login“.

Starten Sie Dovecot an­schlie­ßend neu, damit die Än­de­run­gen aktiv werden. Wenn sich hier bei­spiels­wei­se Tipp­feh­ler ein­ge­schli­chen haben, meldet der Befehl das sofort:

sudo systemctl restart dovecot
bash

Schritt 8: SMTP-Au­then­ti­fi­zie­rung in Postfix ak­ti­vie­ren

Damit Be­nut­ze­rin­nen und Benutzer E-Mails versenden können, müssen sie sich am Ubuntu-Mail­ser­ver anmelden. In diesem Schritt richten Sie Postfix so ein, dass es die Anmeldung über Dovecot nutzt.

Die folgenden Befehle setzen alle not­wen­di­gen Optionen direkt in der Postfix-Kon­fi­gu­ra­ti­on:

sudo postconf -e 'smtpd_sasl_type = dovecot'
sudo postconf -e 'smtpd_sasl_path = private/auth'
sudo postconf -e 'smtpd_sasl_local_domain ='
sudo postconf -e 'smtpd_sasl_security_options = noanonymous'
sudo postconf -e 'broken_sasl_auth_clients = yes'
sudo postconf -e 'smtpd_sasl_auth_enable = yes'
sudo postconf -e 'smtpd_relay_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination'
bash

Mit den obigen Befehlen passiert Folgendes:

  • Postfix nutzt Dovecot für die Be­nut­zer­an­mel­dung
  • Anonyme Zugriffe werden blockiert
  • Nur au­then­ti­fi­zier­te Be­nut­ze­rin­nen und Benutzer dürfen E-Mails versenden
  • Ihr Server wird davor geschützt, als offenes Relay miss­braucht zu werden

Starten Sie an­schlie­ßend Postfix neu, damit die Än­de­run­gen aktiv werden:

sudo systemctl restart postfix
bash

Nun können sich User korrekt anmelden und E-Mails versenden; gleich­zei­tig bleibt Ihr Server aber vor un­er­laub­ter Nutzung geschützt.

Damit sich Mail­pro­gram­me korrekt über den Sub­mis­si­on-Port (587) anmelden können, sollte dieser Dienst ebenfalls in der Postfix-Kon­fi­gu­ra­ti­on aktiviert sein. Öffnen Sie dazu die Datei /etc/postfix/master.cf:

sudo nano /etc/postfix/master.cf
bash

Suchen Sie nach dem Abschnitt sub­mis­si­on und stellen Sie sicher, dass dieser nicht aus­kom­men­tiert ist; falls die Zeile also mit einem # beginnt, entfernen Sie dieses Zeichen. Speichern Sie die Datei und starten Sie Postfix an­schlie­ßend neu:

sudo systemctl restart postfix
bash

Über­prü­fen Sie danach, ob der Port 587 korrekt aktiv ist:

ss -tulpn | grep :587
bash

Schritt 9: TLS für Postfix vor­be­rei­ten

Damit Pass­wör­ter und E-Mails nicht un­ver­schlüs­selt über­tra­gen werden, sollten Sie Ihren Mail­ser­ver mit TLS absichern. Ohne Ver­schlüs­se­lung könnten An­mel­de­da­ten theo­re­tisch mit­ge­le­sen werden, weshalb dieser Schritt von zentraler Bedeutung ist.

Für ein gültiges Zer­ti­fi­kat verwenden Sie am besten Let’s Encrypt. In­stal­lie­ren Sie dazu Certbot und fordern Sie ein Zer­ti­fi­kat im Stan­da­lo­ne-Modus an (Port 80 muss dabei frei und von außen er­reich­bar sein):

sudo apt install certbot -y
sudo certbot certonly --standalone -d mail.example.com \
    --agree-tos -m [email protected] --non-interactive
bash

Die Dateien liegen danach unter /etc/letsencrypt/live/mail.example.com/ als privkey.pem und fullchain.pem. Certbot richtet au­to­ma­tisch einen systemd-Timer ein, der das Zer­ti­fi­kat vor Ablauf (alle 90 Tage) erneuert.

Postfix kann so­ge­nann­te STARTTLS-Ver­bin­dun­gen anbieten. Das bedeutet: Die Ver­bin­dung startet un­ver­schlüs­selt und wird dann au­to­ma­tisch auf eine ver­schlüs­sel­te Ver­bin­dung um­ge­stellt. Setzen Sie die grund­le­gen­den TLS-Ein­stel­lun­gen mit folgenden Befehlen:

sudo postconf -e 'smtp_tls_security_level = may'
sudo postconf -e 'smtpd_tls_security_level = may'
sudo postconf -e 'smtp_tls_note_starttls_offer = yes'
sudo postconf -e 'smtpd_tls_chain_files = /etc/letsencrypt/live/mail.example.com/privkey.pem,/etc/letsencrypt/live/mail.example.com/fullchain.pem'
sudo postconf -e 'smtpd_tls_loglevel = 1'
sudo postconf -e 'smtpd_tls_received_header = yes'
sudo postconf -e 'myhostname = mail.example.com'
bash

Ersetzen Sie dabei mail.example.com durch Ihren eigenen Hostnamen und starten Sie an­schlie­ßend Postfix neu:

sudo systemctl restart postfix
bash

Mit dieser Kon­fi­gu­ra­ti­on un­ter­stützt Ihr Mail­ser­ver ver­schlüs­sel­te, ver­trau­ens­wür­di­ge Ver­bin­dun­gen, die auch von Mail­pro­gram­men ohne Zer­ti­fi­kats­war­nung ak­zep­tiert werden.

Hinweis

Für einen pro­duk­ti­ven Betrieb sollten Sie zu­sätz­lich veraltete TLS-Pro­to­kol­le de­ak­ti­vie­ren, um moderne Si­cher­heits­stan­dards zu erfüllen. Hier ist es wichtig, dass Postfix nur noch Ver­bin­dun­gen ab TLS 1.2 ak­zep­tiert. Für erste Tests in einer Lern­um­ge­bung ist das Fehlen dieser Ein­stel­lung ver­schmerz­bar, im pro­duk­ti­ven Einsatz sollte sie aber unbedingt gesetzt sein.

Schritt 10: Testuser anlegen und Maildir in­itia­li­sie­ren

Für einen ersten Funk­ti­ons­test legen Sie am besten einen lokalen User an. Da dieses Ba­sis­set­up mit lokalen Linux-Konten arbeitet, erhält jede angelegte Be­nut­ze­rin oder jeder angelegte Benutzer au­to­ma­tisch ein eigenes Postfach im Home-Ver­zeich­nis. Das ist sehr praktisch, weil Sie auf diese Weise weder virtuelle User noch eine zu­sätz­li­che Be­nut­zer­da­ten­bank ein­rich­ten müssen.

sudo adduser mailuser
sudo mkdir -p /home/mailuser/Maildir
sudo chown -R mailuser:mailuser /home/mailuser/Maildir
bash

Sie können später weitere Konten auf dieselbe Weise anlegen. Für kleine Test- oder Lern­um­ge­bun­gen reicht das völlig aus. In größeren oder pro­duk­ti­ven In­stal­la­tio­nen arbeitet man statt­des­sen häufig mit vir­tu­el­len Mailusern, zentralen Mail­ver­zeich­nis­sen und zu­sätz­li­chen Kom­po­nen­ten wie DKIM, Spam­fil­tern und Policy-Regeln.

Schritt 11: Apache, PHP und Roundcube in­stal­lie­ren

Damit Sie Ihre E-Mails bequem im Browser verwalten können, in­stal­lie­ren Sie nun Roundcube. Dabei handelt es sich um eine Web­ober­flä­che, über die Sie E-Mails lesen, schreiben und or­ga­ni­sie­ren können. Damit Roundcube funk­tio­niert, benötigen Sie zu­sätz­lich einen Webserver (Apache), PHP und eine Datenbank (MariaDB oder MySQL).

In­stal­lie­ren Sie zunächst alle be­nö­tig­ten Kom­po­nen­ten, um die tech­ni­sche Grundlage für die Web­ober­flä­che zu schaffen:

sudo apt install apache2 mariadb-server php php-mysql php-intl php-mbstring php-xml php-zip libapache2-mod-php -y
bash

In­stal­lie­ren Sie an­schlie­ßend Roundcube:

sudo apt install roundcube roundcube-mysql -y
bash

Während der In­stal­la­ti­on erscheint in der Regel ein Dialog zur Da­ten­bank­ein­rich­tung. Be­stä­ti­gen Sie diesen einfach, damit die Datenbank au­to­ma­tisch erstellt und kon­fi­gu­riert wird.

Bild: Konfigurationsassistent von Roundcube
Be­stä­ti­gen Sie den In­stal­la­ti­ons­dia­log, um die Datenbank bei Roundcube au­to­ma­tisch zu erstellen.

Damit Roundcube über den Browser er­reich­bar ist, müssen Sie die mit­ge­lie­fer­te Apache-Kon­fi­gu­ra­ti­on noch ak­ti­vie­ren:

sudo a2enconf roundcube
sudo systemctl reload apache2
bash

Nach der In­stal­la­ti­on ist Roundcube grund­sätz­lich ein­satz­be­reit und kann über http://IhreServerIP/roundcube im Browser auf­ge­ru­fen werden.

Schritt 12: Roundcube mit dem Ubuntu-Mail­ser­ver verbinden

Nach der In­stal­la­ti­on liegt die zentrale Roundcube-Kon­fi­gu­ra­ti­on in der Regel unter /etc/roundcube/. Dort tragen Sie ein, wie Roundcube sich mit dem Mail­ser­ver verbinden soll. Da Dovecot IMAP be­reit­stellt und Postfix unter Ubuntu für au­then­ti­fi­zier­ten Versand zuständig ist, verwendet Roundcube für den Empfang IMAP und für den Versand SMTP mit denselben Zu­gangs­da­ten des Users. So melden sich Nut­ze­rin­nen und Nutzer in der Web­ober­flä­che einfach mit ihrem Mailkonto an.

Öffnen Sie zunächst die Kon­fi­gu­ra­ti­ons­da­tei:

sudo nano /etc/roundcube/config.inc.php
bash

Achten Sie darauf, dass die wich­tigs­ten Werte fol­gen­der­ma­ßen gesetzt sind:

$config['imap_host'] = 'ssl://mail.example.com:993';
$config['smtp_host'] = 'tls://mail.example.com:587';
$config['smtp_user'] = '%u';
$config['smtp_pass'] = '%p';
php

Speichern Sie die Datei und starten Sie Apache neu. Wenn Sie noch kein funk­tio­nie­ren­des TLS-Zer­ti­fi­kat ein­ge­rich­tet haben, können Sie für einen ersten Test zunächst un­ver­schlüs­sel­te oder lokal an­ge­pass­te Werte verwenden. Für echte User sollte Roundcube aber nur per HTTPS und gegen ver­schlüs­sel­te IMAP-/SMTP-Dienste betrieben werden.

sudo systemctl restart apache2
bash
Hinweis

Wenn Apache nicht startet und die Meldung „Address already in use“ erscheint, ist Port 80 meist bereits durch einen anderen Dienst belegt. Prüfen Sie in diesem Fall mit ss -tulpn | grep :80, welcher Prozess den Port verwendet. Häufig handelt es sich um Nginx, einen laufenden Container oder eine bereits ge­star­te­te Webserver-Instanz.

Schritt 13: Wichtige Ports freigeben

Damit der Server von außen er­reich­bar ist, müssen die re­le­van­ten Ports in der Firewall und in der Hosting-Umgebung frei­ge­schal­tet sein. Für Mail­diens­te sind vor allem SMTP auf Port 25, Sub­mis­si­on auf Port 587, SMTPS auf Port 465, IMAPS auf Port 993 und für die Web­ober­flä­che HTTPS auf Port 443 wichtig. Wenn Sie ufw verwenden, können Sie die wich­tigs­ten Regeln direkt auf der Konsole setzen. Ohne frei­ge­ge­be­ne Ports wirken Mail­ser­ver und Webmail oft „kaputt“, obwohl die lokale Kon­fi­gu­ra­ti­on ei­gent­lich korrekt ist.

Bevor Sie die Firewall ak­ti­vie­ren, sollten Sie unbedingt den SSH-Zugriff freigeben, damit Sie die Ver­bin­dung zu Ihrem Server nicht verlieren:

sudo ufw allow OpenSSH
bash

Nun können Sie die Ports freigeben:

sudo ufw allow 25/tcp
sudo ufw allow 587/tcp
sudo ufw allow 465/tcp
sudo ufw allow 993/tcp
sudo ufw allow 443/tcp
sudo ufw enable
bash

Kon­trol­lie­ren Sie an­schlie­ßend den Status der Firewall.

sudo ufw status
bash
Bild: Status der Firewall
Stellen Sie sicher, dass die Ports 25, 587, 465, 993 und 443 offen sind.

Wenn Ihr Server zu­sätz­lich bei einem Hoster oder in einer Cloud läuft, müssen Sie dieselben Ports oft auch dort noch einmal frei­schal­ten.

Schritt 14: Dienste testen

Zum Abschluss sollten Sie prüfen, ob alle wichtigen Dienste korrekt laufen und Ihr Mail­ser­ver er­reich­bar ist. So stellen Sie sicher, dass Ihre Ein­rich­tung funk­tio­niert und Sie früh­zei­tig mögliche Fehler erkennen. Ein einfacher Test für den Mail­ver­sand ist die Ver­bin­dung zum SMTP-Port (Port 25). Verwenden Sie dazu openssl:

openssl s_client -starttls smtp -connect mail.example.com:25
bash

Sobald die Ver­bin­dung her­ge­stellt ist, geben Sie folgenden Befehl ein:

ehlo mail.example.com
bash

Wenn alles korrekt ein­ge­rich­tet ist, sehen Sie in der Antwort unter anderem Einträge wie:

  • 250-STARTTLS: Ver­schlüs­se­lung wird un­ter­stützt
  • 250-AUTH LOGIN PLAIN: Anmeldung ist möglich

Zu­sätz­lich sollten Sie prüfen, ob alle Dienste laufen:

sudo systemctl status postfix
sudo systemctl status dovecot
sudo systemctl status apache2
bash

Alle Dienste sollten den Status „active (running)“ anzeigen.

Wenn etwas nicht funk­tio­niert, helfen die Log­da­tei­en bei der Feh­ler­su­che. Dort sehen Sie genau, wo Probleme auftreten.

sudo tail -f /var/log/mail.log
bash

Mit diesem Befehl können Sie die Log­ein­trä­ge live mit­ver­fol­gen, während Sie Tests durch­füh­ren. So erkennen Sie Fehler sofort und können gezielt nach­bes­sern.

Fazit

Mit Postfix unter Ubuntu 24.04, Dovecot und Roundcube haben Sie ein voll­stän­di­ges E-Mail-System ein­ge­rich­tet. Postfix übernimmt den Versand und Empfang der E-Mails, Dovecot stellt den Zugriff auf die Post­fä­cher bereit und Roundcube er­mög­licht Ihnen die Nutzung bequem im Browser. So erhalten Sie ein über­sicht­li­ches und gut ver­ständ­li­ches Grund­set­up, das sich besonders für erste Tests und kleinere Um­ge­bun­gen eignet.

Das gezeigte Ubuntu 24.04-Postfix-Dovecot-Setup ist ideal, um die Funk­ti­ons­wei­se eines Mail­ser­vers Schritt für Schritt nach­zu­voll­zie­hen. Da Sie mit lokalen Usern arbeiten, bleibt die Kon­fi­gu­ra­ti­on ver­gleichs­wei­se einfach und trans­pa­rent.

Für den pro­duk­ti­ven Einsatz sollten Sie Ihr System jedoch unbedingt erweitern. Dazu gehören unter anderem korrekt kon­fi­gu­rier­te DNS-Einträge (inklusive Reverse DNS), ein gültiges TLS-Zer­ti­fi­kat, Spam- und Si­cher­heits­me­cha­nis­men sowie re­gel­mä­ßi­ge Updates. Besonders wichtig ist es, alle Kom­po­nen­ten, vor allem auch Roundcube, aktuell zu halten, damit bekannte Si­cher­heits­lü­cken ge­schlos­sen werden. Auf diese Weise schaffen Sie die Grundlage für einen sicheren und zu­ver­läs­sig er­reich­ba­ren Mail­ser­ver unter Ubuntu.

Hinweis

Dieses Setup eignet sich als Grundlage für Tests und kleinere Um­ge­bun­gen. Für den pro­duk­ti­ven Mail­be­trieb sind zu­sätz­lich SPF, DKIM, DMARC, Reverse DNS, Spam­fil­ter, Backup-Stra­te­gien und ein Här­tungs­kon­zept er­for­der­lich.

Pro­fes­sio­nel­les E-Mail-Hosting ganz nach Ihrem Bedarf
  • Per­so­na­li­sier­te E-Mail-Adresse
  • Zugriff auf E-Mails immer und überall
  • Höchste Si­cher­heits­stan­dards
Zum Hauptmenü