Postfix virtual table: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „== virtual (Virtuelle Mailbox-Zustellung) == * Ordnet E-Mail-Adressen virtuellen Mailboxen zu * Wird für virtuelle Domains genutzt * Ermöglicht die Tre…“)
 
 
Zeile 9: Zeile 9:
 
*vi /etc/postfix/virtual   
 
*vi /etc/postfix/virtual   
 
   <pre>
 
   <pre>
   user@example.com user1
+
   marketing@it1XX.int max@it1XX.int
   sales@example.com user2
+
   support@it1XX.int julia@it1XX.int
 
   </pre>   
 
   </pre>   
 
;Nach jeder Änderung die Tabelle aktualisieren:   
 
;Nach jeder Änderung die Tabelle aktualisieren:   
Zeile 23: Zeile 23:
 
=== Postfix neu laden ===   
 
=== Postfix neu laden ===   
 
;Änderungen übernehmen:   
 
;Änderungen übernehmen:   
*postfix reload
+
*postfix reload
 +
 
 +
== Virtuelle Mailbox für '''service@it1XX.int''' == 
 +
* Eine virtuelle Mailbox für '''service@it1XX.int''' wird eingerichtet, sodass die Mails unter '''/var/mail/service/''' gespeichert werden. 
 +
 
 +
=== Virtuelle Mailbox-Tabelle erstellen === 
 +
;Datei erstellen oder bearbeiten: 
 +
*vi /etc/postfix/virtual_mailbox_maps 
 +
  <pre>
 +
  archive@it1XX.int    /var/mail/archive/
 +
  reports@it1XX.int    /var/mail/reports/
 +
  </pre> 
 +
;Nach jeder Änderung die Tabelle aktualisieren: 
 +
*postmap /etc/postfix/virtual_mailbox_maps 
 +
 
 +
=== In /etc/postfix/main.cf eintragen === 
 +
;Datei bearbeiten: 
 +
*vi /etc/postfix/main.cf 
 +
;Folgende Zeile hinzufügen oder anpassen: 
 +
virtual_mailbox_maps = hash:/etc/postfix/virtual_mailbox_maps 
 +
 
 +
=== Verzeichnis für die Mailbox erstellen === 
 +
*mkdir -p /var/mail/archive/ 
 +
*mkdir -p /var/mail/reports/ 
 +
*chown -R vmail:vmail /var/mail/archive/ /var/mail/reports/ 
 +
*chmod -R 770 /var/mail/archive/ /var/mail/reports/ 
 +
 
 +
=== Postfix neu starten === 
 +
*systemctl restart postfix 
 +
 
 +
== Catch-All für nicht definierte Adressen == 
 +
* Leitet alle E-Mails, die nicht explizit definiert sind, an '''martha@it1XX.int''' weiter. 
 +
 
 +
=== Virtual-Alias-Tabelle für Catch-All erstellen === 
 +
;Datei bearbeiten oder erstellen: 
 +
*vi /etc/postfix/virtual_alias_maps 
 +
  <pre>
 +
  @it1XX.int    catchall@it1XX.int
 +
  </pre> 
 +
;Nach jeder Änderung die Tabelle aktualisieren: 
 +
*postmap /etc/postfix/virtual_alias_maps 
 +
 
 +
=== In /etc/postfix/main.cf eintragen === 
 +
;Datei bearbeiten: 
 +
*vi /etc/postfix/main.cf 
 +
;Folgende Zeile hinzufügen oder anpassen: 
 +
virtual_alias_maps = hash:/etc/postfix/virtual_alias_maps 
 +
 
 +
=== Postfix neu starten === 
 +
*systemctl restart postfix 
 +
 
 +
== Test der Konfiguration == 
 +
=== Virtuelle Mailbox testen === 
 +
*Sende eine Testmail an '''archive@it1XX.int''': 
 +
  <pre>
 +
  echo "Testmail an Archive" | mail -s "Test" archive@it1XX.int
 +
  </pre> 
 +
*Überprüfe die Mail-Logs: 
 +
  <pre>
 +
  tail -f /var/log/mail.log
 +
  </pre> 
 +
 
 +
=== Catch-All testen === 
 +
*Sende eine Testmail an eine nicht existierende Adresse, z. B. '''nichtda@it1XX.int''': 
 +
  <pre>
 +
  echo "Testmail an nicht definierte Adresse" | mail -s "Catch-All Test" nichtda@it1XX.int
 +
  </pre> 
 +
*Überprüfe die Weiterleitung an '''catchall@it1XX.int''' im Log: 
 +
  <pre>
 +
  tail -f /var/log/mail.log
 +
  </pre>

Aktuelle Version vom 20. März 2025, 05:50 Uhr

virtual (Virtuelle Mailbox-Zustellung)

  • Ordnet E-Mail-Adressen virtuellen Mailboxen zu
  • Wird für virtuelle Domains genutzt
  • Ermöglicht die Trennung von Mail-Adressen und Systembenutzern
  • Erfordert einen Maildir- oder mbox-Speicherort für die Zustellung

Beispiel: Virtual-Alias-Tabelle erstellen

Datei erstellen
  • vi /etc/postfix/virtual
  marketing@it1XX.int max@it1XX.int
  support@it1XX.int julia@it1XX.int
  
Nach jeder Änderung die Tabelle aktualisieren
  • postmap /etc/postfix/virtual

In /etc/postfix/main.cf eintragen

Datei bearbeiten
  • vi /etc/postfix/main.cf
Folgende Zeile hinzufügen oder anpassen
virtual_alias_maps = hash:/etc/postfix/virtual  

Postfix neu laden

Änderungen übernehmen
  • postfix reload

Virtuelle Mailbox für service@it1XX.int

  • Eine virtuelle Mailbox für service@it1XX.int wird eingerichtet, sodass die Mails unter /var/mail/service/ gespeichert werden.

Virtuelle Mailbox-Tabelle erstellen

Datei erstellen oder bearbeiten
  • vi /etc/postfix/virtual_mailbox_maps
  archive@it1XX.int    /var/mail/archive/
  reports@it1XX.int    /var/mail/reports/
  
Nach jeder Änderung die Tabelle aktualisieren
  • postmap /etc/postfix/virtual_mailbox_maps

In /etc/postfix/main.cf eintragen

Datei bearbeiten
  • vi /etc/postfix/main.cf
Folgende Zeile hinzufügen oder anpassen
virtual_mailbox_maps = hash:/etc/postfix/virtual_mailbox_maps  

Verzeichnis für die Mailbox erstellen

  • mkdir -p /var/mail/archive/
  • mkdir -p /var/mail/reports/
  • chown -R vmail:vmail /var/mail/archive/ /var/mail/reports/
  • chmod -R 770 /var/mail/archive/ /var/mail/reports/

Postfix neu starten

  • systemctl restart postfix

Catch-All für nicht definierte Adressen

  • Leitet alle E-Mails, die nicht explizit definiert sind, an martha@it1XX.int weiter.

Virtual-Alias-Tabelle für Catch-All erstellen

Datei bearbeiten oder erstellen
  • vi /etc/postfix/virtual_alias_maps
  @it1XX.int    catchall@it1XX.int
  
Nach jeder Änderung die Tabelle aktualisieren
  • postmap /etc/postfix/virtual_alias_maps

In /etc/postfix/main.cf eintragen

Datei bearbeiten
  • vi /etc/postfix/main.cf
Folgende Zeile hinzufügen oder anpassen
virtual_alias_maps = hash:/etc/postfix/virtual_alias_maps  

Postfix neu starten

  • systemctl restart postfix

Test der Konfiguration

Virtuelle Mailbox testen

  • Sende eine Testmail an archive@it1XX.int:
  echo "Testmail an Archive" | mail -s "Test" archive@it1XX.int
  
  • Überprüfe die Mail-Logs:
  tail -f /var/log/mail.log
  

Catch-All testen

  • Sende eine Testmail an eine nicht existierende Adresse, z. B. nichtda@it1XX.int:
  echo "Testmail an nicht definierte Adresse" | mail -s "Catch-All Test" nichtda@it1XX.int
  
  • Überprüfe die Weiterleitung an catchall@it1XX.int im Log:
  tail -f /var/log/mail.log