/etc/aliases: Unterschied zwischen den Versionen
Zeile 3: | Zeile 3: | ||
'''topic''' - Beschreibung | '''topic''' - Beschreibung | ||
== Beschreibung == | == Beschreibung == | ||
Die optionale aliases(5)-Tabelle (alias_maps) leitet E-Mails für lokale Empfänger um. Die Umleitungen werden vom lokalen Postfix-Zustellungsagenten (local(8)) verarbeitet. | |||
Dies unterscheidet sich vom virtuellen (virtual_alias_maps) Aliasing (virtual_alias_maps), das für alle Empfänger gilt: lokal (local(8)), virtuell und entfernt, und das vom cleanup(8)-Daemon implementiert wird. | |||
Normalerweise wird die aliases(5)-Tabelle als Textdatei angegeben, die als Eingabe für den Befehl postalias(1) dient. Das Ergebnis, eine indizierte Datei im dbm- oder db-Format, wird vom Mailsystem für schnelle Suchvorgänge verwendet. Führen Sie den Befehl newaliases aus, um die indizierte Datei nach dem Ändern der Postfix-Aliasdatenbank neu zu erstellen. | |||
Wenn die Tabelle über andere Mittel wie NIS, LDAP oder SQL bereitgestellt wird, werden dieselben Suchvorgänge wie bei normalen indizierten Dateien durchgeführt. | |||
Alternativ kann die Tabelle als eine Zuordnung regulärer Ausdrücke bereitgestellt werden, bei der Muster als reguläre Ausdrücke angegeben werden. In diesem Fall werden die Suchvorgänge auf eine etwas andere Weise durchgeführt, wie unten unter „TABELLEN REGULÄRER AUSDRÜCKE“ beschrieben. | |||
Benutzer können die Zustellung ihrer eigenen E-Mails steuern, indem sie .forward-Dateien in ihrem Home-Verzeichnis einrichten. Die Zeilen in benutzerspezifischen .forward-Dateien haben dieselbe Syntax wie die rechte Seite der aliases(5)-Einträge. | |||
Das Format der Eingabedatei für die Alias-Datenbank ist wie folgt: | |||
* Eine Alias-Definition hat die Form | |||
Name: Wert1, Wert2, ... | |||
* Leere Zeilen und Zeilen, die nur aus Leerzeichen bestehen, werden ignoriert, ebenso wie Zeilen, deren erstes Zeichen, das kein Leerzeichen ist, ein '#' ist. | |||
* Eine logische Zeile beginnt mit Text, der nicht aus Leerzeichen besteht. Eine Zeile, die mit Leerzeichen beginnt, setzt eine logische Zeile fort. | |||
Der Name ist eine lokale Adresse (ohne Domänenteil). Verwenden Sie doppelte Anführungszeichen, wenn der Name Sonderzeichen wie Leerzeichen, „#“, „:“ oder „@“ enthält. | |||
Der Name wird in Kleinbuchstaben umgewandelt, damit bei Datenbankabfragen die Groß-/Kleinschreibung nicht berücksichtigt wird. | |||
Wenn ein Alias für den Besitzernamen existiert, überschreibt dieser die Absenderadresse des Umschlags, sodass Zustellungsdiagnosen an den Besitzernamen und nicht an den Absender der Nachricht gesendet werden (weitere Informationen finden Sie unter owner_request_special, expand_owner_alias und reset_owner_alias). Dies wird normalerweise verwendet, um Zustellungsfehler an den Betreuer einer Mailingliste weiterzuleiten, der besser in der Lage ist, Zustellungsprobleme von Mailinglisten zu lösen, als der Absender der nicht zugestellten E-Mail. | |||
Der Wert enthält eine oder mehrere der folgenden Angaben: | |||
; address | |||
Die E-Mail wird an die Adresse weitergeleitet, die mit dem Standard RFC 822 kompatibel ist. | |||
; /file/name | |||
Mail wird an /file/name angehängt. Weitere Informationen zum Schreiben einer Datei finden Sie in den Abschnitten „EXTERNAL FILE DELIVERY“ und „DELIVERY RIGHTS“ in der Dokumentation local(8). Die Zustellung ist nicht auf reguläre Dateien beschränkt. Um beispielsweise unerwünschte E-Mails zu entsorgen, leiten Sie sie an /dev/null um. | |||
; |command | |||
Mail wird an command weitergeleitet. Befehle, die Sonderzeichen wie Leerzeichen enthalten, sollten in Anführungszeichen gesetzt werden. Weitere Informationen zur Ausführung eines Befehls finden Sie unter „EXTERNAL COMMAND DELIVERY“ und „DELIVERY RIGHTS“ in der local(8)-Dokumentation. | |||
Wenn der Befehl fehlschlägt, wird eine begrenzte Menge an Befehlsausgaben an den Absender zurückgesendet. Die Datei /usr/include/sysexits.h definiert die erwarteten Exit-Statuscodes. Verwenden Sie beispielsweise „|exit 67“, um einen „user unknown“-Fehler zu simulieren, und „|exit 0“, um ein teures Black Hole zu implementieren. | |||
; <nowiki>:include:/file/name</nowiki> | |||
E-Mails werden an die in der benannten Datei aufgeführten Ziele gesendet. Zeilen in :include:-Dateien haben dieselbe Syntax wie die rechte Seite von Alias-Einträgen. | |||
Ein Ziel kann jedes Ziel sein, das in dieser Handbuchseite beschrieben wird. Die Zustellung an „|command“ und /file/name ist jedoch standardmäßig nicht zulässig. Um dies zu aktivieren, bearbeiten Sie die Konfigurationsparameter allow_mail_to_commands und allow_mail_to_files. | |||
== Installation == | == Installation == | ||
<syntaxhighlight lang="bash" highlight="1" line> | <syntaxhighlight lang="bash" highlight="1" line> |
Version vom 14. Dezember 2024, 09:10 Uhr
/etc/aliases - Postfix local alias database format
topic - Beschreibung
Beschreibung
Die optionale aliases(5)-Tabelle (alias_maps) leitet E-Mails für lokale Empfänger um. Die Umleitungen werden vom lokalen Postfix-Zustellungsagenten (local(8)) verarbeitet.
Dies unterscheidet sich vom virtuellen (virtual_alias_maps) Aliasing (virtual_alias_maps), das für alle Empfänger gilt: lokal (local(8)), virtuell und entfernt, und das vom cleanup(8)-Daemon implementiert wird.
Normalerweise wird die aliases(5)-Tabelle als Textdatei angegeben, die als Eingabe für den Befehl postalias(1) dient. Das Ergebnis, eine indizierte Datei im dbm- oder db-Format, wird vom Mailsystem für schnelle Suchvorgänge verwendet. Führen Sie den Befehl newaliases aus, um die indizierte Datei nach dem Ändern der Postfix-Aliasdatenbank neu zu erstellen.
Wenn die Tabelle über andere Mittel wie NIS, LDAP oder SQL bereitgestellt wird, werden dieselben Suchvorgänge wie bei normalen indizierten Dateien durchgeführt.
Alternativ kann die Tabelle als eine Zuordnung regulärer Ausdrücke bereitgestellt werden, bei der Muster als reguläre Ausdrücke angegeben werden. In diesem Fall werden die Suchvorgänge auf eine etwas andere Weise durchgeführt, wie unten unter „TABELLEN REGULÄRER AUSDRÜCKE“ beschrieben.
Benutzer können die Zustellung ihrer eigenen E-Mails steuern, indem sie .forward-Dateien in ihrem Home-Verzeichnis einrichten. Die Zeilen in benutzerspezifischen .forward-Dateien haben dieselbe Syntax wie die rechte Seite der aliases(5)-Einträge.
Das Format der Eingabedatei für die Alias-Datenbank ist wie folgt:
- Eine Alias-Definition hat die Form
Name: Wert1, Wert2, ...
- Leere Zeilen und Zeilen, die nur aus Leerzeichen bestehen, werden ignoriert, ebenso wie Zeilen, deren erstes Zeichen, das kein Leerzeichen ist, ein '#' ist.
- Eine logische Zeile beginnt mit Text, der nicht aus Leerzeichen besteht. Eine Zeile, die mit Leerzeichen beginnt, setzt eine logische Zeile fort.
Der Name ist eine lokale Adresse (ohne Domänenteil). Verwenden Sie doppelte Anführungszeichen, wenn der Name Sonderzeichen wie Leerzeichen, „#“, „:“ oder „@“ enthält. Der Name wird in Kleinbuchstaben umgewandelt, damit bei Datenbankabfragen die Groß-/Kleinschreibung nicht berücksichtigt wird.
Wenn ein Alias für den Besitzernamen existiert, überschreibt dieser die Absenderadresse des Umschlags, sodass Zustellungsdiagnosen an den Besitzernamen und nicht an den Absender der Nachricht gesendet werden (weitere Informationen finden Sie unter owner_request_special, expand_owner_alias und reset_owner_alias). Dies wird normalerweise verwendet, um Zustellungsfehler an den Betreuer einer Mailingliste weiterzuleiten, der besser in der Lage ist, Zustellungsprobleme von Mailinglisten zu lösen, als der Absender der nicht zugestellten E-Mail.
Der Wert enthält eine oder mehrere der folgenden Angaben:
- address
Die E-Mail wird an die Adresse weitergeleitet, die mit dem Standard RFC 822 kompatibel ist.
- /file/name
Mail wird an /file/name angehängt. Weitere Informationen zum Schreiben einer Datei finden Sie in den Abschnitten „EXTERNAL FILE DELIVERY“ und „DELIVERY RIGHTS“ in der Dokumentation local(8). Die Zustellung ist nicht auf reguläre Dateien beschränkt. Um beispielsweise unerwünschte E-Mails zu entsorgen, leiten Sie sie an /dev/null um.
- |command
Mail wird an command weitergeleitet. Befehle, die Sonderzeichen wie Leerzeichen enthalten, sollten in Anführungszeichen gesetzt werden. Weitere Informationen zur Ausführung eines Befehls finden Sie unter „EXTERNAL COMMAND DELIVERY“ und „DELIVERY RIGHTS“ in der local(8)-Dokumentation.
Wenn der Befehl fehlschlägt, wird eine begrenzte Menge an Befehlsausgaben an den Absender zurückgesendet. Die Datei /usr/include/sysexits.h definiert die erwarteten Exit-Statuscodes. Verwenden Sie beispielsweise „|exit 67“, um einen „user unknown“-Fehler zu simulieren, und „|exit 0“, um ein teures Black Hole zu implementieren.
- :include:/file/name
E-Mails werden an die in der benannten Datei aufgeführten Ziele gesendet. Zeilen in :include:-Dateien haben dieselbe Syntax wie die rechte Seite von Alias-Einträgen.
Ein Ziel kann jedes Ziel sein, das in dieser Handbuchseite beschrieben wird. Die Zustellung an „|command“ und /file/name ist jedoch standardmäßig nicht zulässig. Um dies zu aktivieren, bearbeiten Sie die Konfigurationsparameter allow_mail_to_commands und allow_mail_to_files.
Installation
Aufruf
sudo newaliases
Optionen
Parameter
Umgebungsvariablen
Exit-Status
Anwendung
Problembehebung
Konfiguration
Dateien
Anhang
Siehe auch
Dokumentation
Man-Page
Info-Pages
Links
Projekt
Weblinks
TMP
ADDRESS EXTENSION
When alias database search fails, and the recipient localpart contains the optional recipient delimiter (e.g., user+foo), the search is repeated for the unextended address (e.g., user).
The propagate_unmatched_extensions parameter controls whether an unmatched address extension (+foo) is propagated to the result of table lookup.
CASE FOLDING
The local(8) delivery agent always folds the search string to lowercase before database lookup.
REGULAR EXPRESSION TABLES
This section describes how the table lookups change when the table is given in the form of regular expressions. For a description of regular expression lookup table syntax, see regexp_table(5) or pcre_table(5). NOTE: these formats do not use ":" at the end of a pattern.
Each regular expression is applied to the entire search string. Thus, a search string user+foo is not broken up into user and foo.
Regular expressions are applied in the order as specified in the table, until a regular expression is found that matches the search string.
Lookup results are the same as with indexed file lookups. For security reasons there is no support for $1, $2 etc. substring interpolation.
SECURITY
The local(8) delivery agent disallows regular expression substitution of $1 etc. in alias_maps, because that would open a security hole.
The local(8) delivery agent will silently ignore requests to use the proxymap(8) server within alias_maps. Instead it will open the table directly. Before Postfix version 2.2, the local(8) delivery agent will terminate with a fatal error.
CONFIGURATION PARAMETERS
The following main.cf parameters are especially relevant. The text below provides only a parameter summary. See postconf(5) for more details including examples.
alias_database (see 'postconf -d' output)
The alias databases for local(8) delivery that are updated with "newaliases" or with "sendmail -bi".
alias_maps (see 'postconf -d' output)
Optional lookup tables with aliases that apply only to local(8) recipients; this is unlike virtual_alias_maps that apply to all recipients: lo‐ cal(8), virtual, and remote.
allow_mail_to_commands (alias, forward)
Restrict local(8) mail delivery to external commands.
allow_mail_to_files (alias, forward)
Restrict local(8) mail delivery to external files.
expand_owner_alias (no)
When delivering to an alias "aliasname" that has an "owner-aliasname" companion alias, set the envelope sender address to the expansion of the "owner-aliasname" alias.
propagate_unmatched_extensions (canonical, virtual)
What address lookup tables copy an address extension from the lookup key to the lookup result.
owner_request_special (yes)
Enable special treatment for owner-listname entries in the aliases(5) file, and don't split owner-listname and listname-request address local‐ parts when the recipient_delimiter is set to "-".
recipient_delimiter (empty)
The set of characters that can separate an email address localpart, user name, or a .forward file name from its extension.
Available in Postfix version 2.3 and later:
frozen_delivered_to (yes)
Update the local(8) delivery agent's idea of the Delivered-To: address (see prepend_delivered_header) only once, at the start of a delivery at‐ tempt; do not update the Delivered-To: address while expanding aliases or .forward files.
SEE ALSO
local(8), local delivery agent newaliases(1), create/update alias database postalias(1), create/update alias database postconf(5), configuration parameters
README FILES
Use "postconf readme_directory" or "postconf html_directory" to locate this information. DATABASE_README, Postfix lookup table overview
STANDARDS
RFC 822 (ARPA Internet Text Messages)