Postfix Grundkonfiguration: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
| (26 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
| + | =Vorarbeiten= | ||
| + | *mail.itXX.int | ||
| + | *Maschine klonen und nach Plan anpassen | ||
=vorarbeiten= | =vorarbeiten= | ||
| Zeile 50: | Zeile 53: | ||
# Hostname dieses Mailservers | # Hostname dieses Mailservers | ||
| − | myhostname = | + | myhostname = mail.it113.int |
# Pfad zur Aliase-Datei, die E-Mail-Aliasnamen speichert | # Pfad zur Aliase-Datei, die E-Mail-Aliasnamen speichert | ||
| Zeile 60: | Zeile 63: | ||
# Lokale Domains, für die dieser Server E-Mails annimmt | # Lokale Domains, für die dieser Server E-Mails annimmt | ||
| − | mydestination = $myhostname, | + | mydestination = $myhostname, mail.it113.int, localhost.it113.int, , localhost |
# Standard-Relay-Host (leer, d.h. keine Weiterleitung an einen anderen Server) | # Standard-Relay-Host (leer, d.h. keine Weiterleitung an einen anderen Server) | ||
| Zeile 85: | Zeile 88: | ||
home_mailbox=Maildir/ | home_mailbox=Maildir/ | ||
mailbox_command = | mailbox_command = | ||
| + | ==Dovecot== | ||
| + | Wir müssen auch Dovecot sagen wo die Mails liegen. | ||
| + | |||
| + | Dazu ändern wie in wenig die Konfiguration | ||
| + | |||
| + | *vi /etc/dovecot/conf.d/10-mail.conf | ||
| + | #mail_location = mbox:~/mail:INBOX=/var/mail/%u | ||
| + | mail_location = maildir:~/Maildir | ||
| + | *systemctl restart dovecot | ||
| + | *systemctl restart postfix | ||
=auswahl der postfix kommandos= | =auswahl der postfix kommandos= | ||
| Zeile 93: | Zeile 106: | ||
*postfix check | *postfix check | ||
=logging= | =logging= | ||
| − | *journalctl - | + | *journalctl -f -u postfix@-.service |
<pre> | <pre> | ||
Mar 14 12:51:38 ns.it113.int systemd[1]: Starting postfix.service - Postfix Mail Transport Agent... | Mar 14 12:51:38 ns.it113.int systemd[1]: Starting postfix.service - Postfix Mail Transport Agent... | ||
| Zeile 109: | Zeile 122: | ||
=installieren von mailutis= | =installieren von mailutis= | ||
*apt install mailutils | *apt install mailutils | ||
| + | |||
| + | =Erste Mail verschicken= | ||
| + | *echo Hallo Welt | mail martha | ||
| + | |||
| + | =Kleines Tutorial= | ||
| + | *[[Mailutils]] | ||
=lokales lesen der mails= | =lokales lesen der mails= | ||
| − | + | *su - martha | |
| + | *mail | ||
<pre> | <pre> | ||
| − | "/ | + | "/home/martha/Maildir": 1 message 1 new |
| − | > | + | >N 1 root Fri Mar 14 12:32 12/402 |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | + | ? | |
| − | ? | + | Return-Path: <root@mail.it113.int> |
| + | X-Original-To: martha | ||
| + | Delivered-To: martha@mail.it113.int | ||
| + | Received: by mail.it113.int (Postfix, from userid 0) | ||
| + | id AD215E0056; Fri, 14 Mar 2025 13:32:26 +0100 (CET) | ||
| + | To: martha@mail.it113.int | ||
| + | User-Agent: mail (GNU Mailutils 3.15) | ||
| + | Date: Fri, 14 Mar 2025 13:32:26 +0100 | ||
| + | Message-Id: <20250314123226.AD215E0056@mail.it113.int> | ||
| + | From: root <root@mail.it113.int> | ||
| + | |||
| + | Hallo Welt | ||
| + | ? | ||
</pre> | </pre> | ||
| + | |||
=sasl= | =sasl= | ||
;Wir nutzen dovecot für SASL | ;Wir nutzen dovecot für SASL | ||
| Zeile 139: | Zeile 157: | ||
<pre> | <pre> | ||
service auth { | service auth { | ||
| − | + | ... | |
# Postfix smtp-auth | # Postfix smtp-auth | ||
unix_listener /var/spool/postfix/private/auth { | unix_listener /var/spool/postfix/private/auth { | ||
| Zeile 161: | Zeile 179: | ||
*systemctl restart postfix | *systemctl restart postfix | ||
*systemctl restart dovecot | *systemctl restart dovecot | ||
| + | =Test von einem anderen Client= | ||
| + | *apt install mailutils postfix | ||
| + | Teste ob | ||
| + | *echo doofie | mail -s doof martha@mail.it1XX.int | ||
| + | geht | ||
| − | + | Teste ob | |
| − | * | + | *echo doofie | mail -s doof martha@it1XX.int |
| − | + | geht | |
| − | |||
| − | |||
| − | = | + | =Wir fügen die Maildomain it1XX.int hinzu= |
| − | + | *cat /etc/postfix/main.cf | |
| − | + | mydestination = $myhostname, mail.it113.int, localhost.it113.int, it113.int, localhost | |
| − | + | *postfix reload | |
| − | + | erneut testen | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
Aktuelle Version vom 19. März 2025, 10:54 Uhr
Vorarbeiten
- mail.itXX.int
- Maschine klonen und nach Plan anpassen
vorarbeiten
- mkdir -p /etc/skel/Maildir/{cur,new,tmp}
- echo export MAIL=\~/Maildir >> /etc/skel/.bashrc
installation
- apt install postfix dovecot-core dovecot-imapd
spätere grundkonfiguration
- dpkg-reconfigure -p low postfix
wir wählen Internet-Site
/etc/postfix/main.cf
# Siehe /usr/share/postfix/main.cf.dist für eine kommentierte, vollständigere Version
# Debian-spezifisch: Wenn ein Dateiname angegeben wird, wird die erste Zeile dieser Datei
# als Name verwendet. Der Debian-Standard ist /etc/mailname.
#myorigin = /etc/mailname
# Begrüßungsbanner für SMTP-Verbindungen
smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
# Deaktiviert Biff, das sonst Benachrichtigungen über neue Mails an lokale Benutzer sendet
biff = no
# Das Anhängen der Domain an lokale E-Mail-Adressen ist Aufgabe des Mail-Clients (MUA)
append_dot_mydomain = no
# Zeit, nach der eine verzögerte Zustellwarnung gesendet wird (auskommentiert)
#delay_warning_time = 4h
# Deaktiviert das README-Verzeichnis für Benutzer
readme_directory = no
# Siehe http://www.postfix.org/COMPATIBILITY_README.html -- Standard ist 3.6 bei neuen Installationen
compatibility_level = 3.6
# TLS-Parameter (Zertifikate für verschlüsselte Verbindungen)
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_tls_security_level=may # TLS wird unterstützt, aber nicht erzwungen
# TLS für ausgehende SMTP-Verbindungen
smtp_tls_CApath=/etc/ssl/certs
smtp_tls_security_level=may # TLS wird für ausgehende Verbindungen unterstützt, aber nicht erzwungen
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
# Regeln für das Relaying (Weiterleiten) von E-Mails
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
# Hostname dieses Mailservers
myhostname = mail.it113.int
# Pfad zur Aliase-Datei, die E-Mail-Aliasnamen speichert
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
# Ursprungsdomain für ausgehende Mails
myorigin = /etc/mailname
# Lokale Domains, für die dieser Server E-Mails annimmt
mydestination = $myhostname, mail.it113.int, localhost.it113.int, , localhost
# Standard-Relay-Host (leer, d.h. keine Weiterleitung an einen anderen Server)
relayhost =
# Netzwerke, die ohne Authentifizierung E-Mails über diesen Server senden dürfen
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
# Maximale Postfachgröße (0 bedeutet unbegrenzt)
mailbox_size_limit = 0
# Trennzeichen für Adressvarianten (z.B. user+info@example.com)
recipient_delimiter = +
# Auf welchen Netzwerk-Schnittstellen Postfix lauscht (hier: alle)
inet_interfaces = all
# Unterstützte Internetprotokolle (IPv4 und IPv6)
inet_protocols = all
Maildirformat
- Wir fügen an
home_mailbox=Maildir/ mailbox_command =
Dovecot
Wir müssen auch Dovecot sagen wo die Mails liegen.
Dazu ändern wie in wenig die Konfiguration
- vi /etc/dovecot/conf.d/10-mail.conf
#mail_location = mbox:~/mail:INBOX=/var/mail/%u mail_location = maildir:~/Maildir
- systemctl restart dovecot
- systemctl restart postfix
auswahl der postfix kommandos
- postfix status
- postfix start
- postfix stop
- postfix reload
- postfix check
logging
- journalctl -f -u postfix@-.service
Mar 14 12:51:38 ns.it113.int systemd[1]: Starting postfix.service - Postfix Mail Transport Agent... Mar 14 12:51:38 ns.it113.int systemd[1]: Finished postfix.service - Postfix Mail Transport Agent. Mar 14 12:56:38 ns.it113.int systemd[1]: postfix.service: Deactivated successfully. Mar 14 12:56:38 ns.it113.int systemd[1]: Stopped postfix.service - Postfix Mail Transport Agent. Mar 14 12:56:38 ns.it113.int systemd[1]: Stopping postfix.service - Postfix Mail Transport Agent... Mar 14 12:56:39 ns.it113.int systemd[1]: Starting postfix.service - Postfix Mail Transport Agent... Mar 14 12:56:39 ns.it113.int systemd[1]: Finished postfix.service - Postfix Mail Transport Agent.
Wir legen 2 User an
- useradd -m -s /bin/bash martha
- useradd -m -s /bin/bash leroy
installieren von mailutis
- apt install mailutils
Erste Mail verschicken
- echo Hallo Welt | mail martha
Kleines Tutorial
lokales lesen der mails
- su - martha
"/home/martha/Maildir": 1 message 1 new >N 1 root Fri Mar 14 12:32 12/402 ? Return-Path: <root@mail.it113.int> X-Original-To: martha Delivered-To: martha@mail.it113.int Received: by mail.it113.int (Postfix, from userid 0) id AD215E0056; Fri, 14 Mar 2025 13:32:26 +0100 (CET) To: martha@mail.it113.int User-Agent: mail (GNU Mailutils 3.15) Date: Fri, 14 Mar 2025 13:32:26 +0100 Message-Id: <20250314123226.AD215E0056@mail.it113.int> From: root <root@mail.it113.int> Hallo Welt ?
sasl
- Wir nutzen dovecot für SASL
- vi /etc/dovecot/conf.d/10-master.conf
service auth {
...
# Postfix smtp-auth
unix_listener /var/spool/postfix/private/auth {
mode = 0660
user = postfix
group = postfix
}
...
}
- vi /etc/dovecot/conf.d/10-auth.conf
auth_mechanisms = plain login
Postfix Änderung
- vi /etc/postfix/main.cf
smtpd_sasl_type = dovecot smtpd_sasl_path = private/auth smtpd_sasl_auth_enable = yes
Dienste neustarten
- systemctl restart postfix
- systemctl restart dovecot
Test von einem anderen Client
- apt install mailutils postfix
Teste ob
- echo doofie | mail -s doof martha@mail.it1XX.int
geht
Teste ob
- echo doofie | mail -s doof martha@it1XX.int
geht
Wir fügen die Maildomain it1XX.int hinzu
- cat /etc/postfix/main.cf
mydestination = $myhostname, mail.it113.int, localhost.it113.int, it113.int, localhost
- postfix reload
erneut testen