Postfix relay domains: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
(Die Seite wurde neu angelegt: „== relay_domains (Erlaubte Relay-Domains) == * Definiert, für welche Domains Postfix Mails an externe Server weiterleiten darf * Wird genutzt, wenn Postfi…“) |
|||
| (Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
| − | == relay_domains ( | + | == relay_domains (Zuständigkeit für externe Ziel-Domains) == |
| − | * Definiert, für | + | * Definiert Domains, für die Postfix E-Mails von überall (Internet) annimmt, um sie an ein Zielsystem (z. B. internen Exchange) weiterzuleiten |
| − | * Wird genutzt, wenn Postfix als | + | * Wird genutzt, wenn Postfix als Gateway, Spam-Filter oder Backup-MX vor dem eigentlichen Mailserver agiert |
| − | * Muss mit | + | * Verhindert "Relay access denied" für diese spezifischen Ziel-Domains |
| + | * Muss zwingend mit relay_recipient_maps kombiniert werden, um Backscatter-Spam an ungültige Adressen zu vermeiden | ||
| − | === Beispiel: Relay-Domains-Tabelle erstellen === | + | === Beispiel: Relay-Domains-Tabelle erstellen === |
| − | ;Datei erstellen: | + | ;Datei erstellen: |
| − | *vi /etc/postfix/relay_domains | + | *vi /etc/postfix/relay_domains |
| − | + | <pre> | |
| − | + | example.com | |
| − | + | trusted-domain.com | |
| − | + | </pre> | |
| − | ; | + | ;Tabelle für Postfix indizieren: |
| − | *postmap /etc/postfix/relay_domains | + | *postmap /etc/postfix/relay_domains |
| − | === In /etc/postfix/main.cf | + | === In /etc/postfix/main.cf konfigurieren === |
| − | ;Datei bearbeiten: | + | ;Datei bearbeiten: |
| − | *vi /etc/postfix/main.cf | + | *vi /etc/postfix/main.cf |
| − | ; | + | ;Parameter setzen: |
| − | relay_domains = hash:/etc/postfix/relay_domains | + | relay_domains = hash:/etc/postfix/relay_domains |
| + | # Wichtig zur Vermeidung von Backscatter: | ||
| + | relay_recipient_maps = hash:/etc/postfix/relay_recipients | ||
| − | === Postfix neu laden === | + | === Postfix neu laden === |
| − | ; | + | ;Konfiguration aktivieren: |
*postfix reload | *postfix reload | ||
| + | |||
| + | == Backscatter-Spam == | ||
| + | * Unerwünschtes Nebenprodukt von Spam-Wellen mit gefälschten Absenderadressen | ||
| + | * Ablauf: Ein Spammer verschickt Mails mit gefälschtem Absender (z. B. opfer@example.com) → Postfix nimmt die Mail an → stellt fest, dass der Empfänger nicht existiert → schickt eine Unzustellbarkeits-Benachrichtigung (NDR/Bounce) zurück → das Bounce geht an den gefälschten Absender | ||
| + | * Das Opfer erhält massenhaft Fehlermeldungen für Mails, die es nie verschickt hat | ||
| + | * Der eigene Mailserver landet dadurch auf Blacklists | ||
| + | |||
| + | === Warum relay_domains besonders anfällig ist === | ||
| + | * Postfix arbeitet bei Relay-Mails in zwei Phasen: | ||
| + | ;Phase 1 – SMTP-Session: Mail wird angenommen, kein Empfänger-Check | ||
| + | ;Phase 2 – Queue-Verarbeitung: Weiterleitung schlägt fehl → Bounce an den (gefälschten) Absender | ||
| + | * Ohne relay_recipient_maps akzeptiert Postfix in Phase 1 jede beliebige Empfängeradresse der Relay-Domain – auch nicht existierende | ||
| + | |||
| + | === Lösung: relay_recipient_maps === | ||
| + | * Der Empfänger-Check findet bereits in Phase 1 (SMTP-Session) statt | ||
| + | * Bei unbekannter Adresse antwortet Postfix sofort mit <code>550 User unknown</code> direkt an den sendenden Server | ||
| + | * Es wird keine Bounce-Mail erzeugt – kein Backscatter | ||
| + | |||
| + | ;Drei gängige Varianten: | ||
| + | |||
| + | ;1. Statische Hash-Tabelle: | ||
| + | * Alle gültigen Adressen werden manuell gepflegt | ||
| + | * Geeignet für kleine Umgebungen und Lab-Setups | ||
| + | <pre> | ||
| + | benutzer1@example.com OK | ||
| + | benutzer2@example.com OK | ||
| + | </pre> | ||
| + | *postmap /etc/postfix/relay_recipients | ||
| + | relay_recipient_maps = hash:/etc/postfix/relay_recipients | ||
| + | |||
| + | ;2. LDAP/AD-Abfrage: | ||
| + | * Postfix fragt direkt beim Active Directory oder LDAP-Server nach | ||
| + | * Pflegt sich selbst bei Personaländerungen – empfohlen für Umgebungen mit Exchange | ||
| + | relay_recipient_maps = ldap:/etc/postfix/ldap-relay-recipients.cf | ||
| + | |||
| + | ;3. Callout-Verification: | ||
| + | * Postfix fragt den Zielserver (z. B. Exchange) per SMTP, ob die Adresse existiert | ||
| + | * Kein extra Mapping nötig | ||
| + | * Voraussetzung: Der Zielserver muss ungültige Adressen mit 550 ablehnen | ||
| + | smtpd_recipient_restrictions = reject_unverified_recipient | ||
| + | |||
| + | {{Hinweis|Im Lab-Setup mit wenigen fiktiven Adressen ist die statische Hash-Tabelle ausreichend. In der Praxis mit Exchange oder großen Umgebungen ist die LDAP-Abfrage die wartungsfreundlichste Lösung.}} | ||
Aktuelle Version vom 6. Juni 2026, 12:10 Uhr
relay_domains (Zuständigkeit für externe Ziel-Domains)
- Definiert Domains, für die Postfix E-Mails von überall (Internet) annimmt, um sie an ein Zielsystem (z. B. internen Exchange) weiterzuleiten
- Wird genutzt, wenn Postfix als Gateway, Spam-Filter oder Backup-MX vor dem eigentlichen Mailserver agiert
- Verhindert "Relay access denied" für diese spezifischen Ziel-Domains
- Muss zwingend mit relay_recipient_maps kombiniert werden, um Backscatter-Spam an ungültige Adressen zu vermeiden
Beispiel: Relay-Domains-Tabelle erstellen
- Datei erstellen
- vi /etc/postfix/relay_domains
example.com trusted-domain.com
- Tabelle für Postfix indizieren
- postmap /etc/postfix/relay_domains
In /etc/postfix/main.cf konfigurieren
- Datei bearbeiten
- vi /etc/postfix/main.cf
- Parameter setzen
relay_domains = hash:/etc/postfix/relay_domains # Wichtig zur Vermeidung von Backscatter: relay_recipient_maps = hash:/etc/postfix/relay_recipients
Postfix neu laden
- Konfiguration aktivieren
- postfix reload
Backscatter-Spam
- Unerwünschtes Nebenprodukt von Spam-Wellen mit gefälschten Absenderadressen
- Ablauf: Ein Spammer verschickt Mails mit gefälschtem Absender (z. B. opfer@example.com) → Postfix nimmt die Mail an → stellt fest, dass der Empfänger nicht existiert → schickt eine Unzustellbarkeits-Benachrichtigung (NDR/Bounce) zurück → das Bounce geht an den gefälschten Absender
- Das Opfer erhält massenhaft Fehlermeldungen für Mails, die es nie verschickt hat
- Der eigene Mailserver landet dadurch auf Blacklists
Warum relay_domains besonders anfällig ist
- Postfix arbeitet bei Relay-Mails in zwei Phasen:
- Phase 1 – SMTP-Session
- Mail wird angenommen, kein Empfänger-Check
- Phase 2 – Queue-Verarbeitung
- Weiterleitung schlägt fehl → Bounce an den (gefälschten) Absender
- Ohne relay_recipient_maps akzeptiert Postfix in Phase 1 jede beliebige Empfängeradresse der Relay-Domain – auch nicht existierende
Lösung: relay_recipient_maps
- Der Empfänger-Check findet bereits in Phase 1 (SMTP-Session) statt
- Bei unbekannter Adresse antwortet Postfix sofort mit
550 User unknowndirekt an den sendenden Server - Es wird keine Bounce-Mail erzeugt – kein Backscatter
- Drei gängige Varianten
- 1. Statische Hash-Tabelle
- Alle gültigen Adressen werden manuell gepflegt
- Geeignet für kleine Umgebungen und Lab-Setups
benutzer1@example.com OK benutzer2@example.com OK
- postmap /etc/postfix/relay_recipients
relay_recipient_maps = hash:/etc/postfix/relay_recipients
- 2. LDAP/AD-Abfrage
- Postfix fragt direkt beim Active Directory oder LDAP-Server nach
- Pflegt sich selbst bei Personaländerungen – empfohlen für Umgebungen mit Exchange
relay_recipient_maps = ldap:/etc/postfix/ldap-relay-recipients.cf
- 3. Callout-Verification
- Postfix fragt den Zielserver (z. B. Exchange) per SMTP, ob die Adresse existiert
- Kein extra Mapping nötig
- Voraussetzung: Der Zielserver muss ungültige Adressen mit 550 ablehnen
smtpd_recipient_restrictions = reject_unverified_recipient