Bei anderen Diensten (z. B. httpd, Supervisor, Yum usw.) ist es möglich, der Konfiguration etwas hinzuzufügen, ohne die Hauptkonfigurationsdateien zu ändern (indem Dateien z. B. in , /etc/httpd/conf.d
, /etc/supervisor/conf.d
, yum.repos.d
usw. abgelegt werden).
Ich frage mich, ob ein ähnliches Setup für Postfix möglich ist.
Ich habe ein Setup-Skript für eine weitgehend eigenständige Webanwendung, das die Einrichtung eines virtuellen Postfachs erfordert. Ich möchte lieber nicht direkt an den primären Postfix-Dateien herumfummeln. Stattdessen würde ich viel lieber nur Dateien hinzufügen, die Postfix dann zur Konfiguration einliest.
Ich kann jedoch nichts finden, wo dies besprochen wird, und es scheint, dass die integrierte Konfiguration erwartet, dass alle Konfigurationen im selben Verzeichnis vorhanden sind.
Ich verstehe, dass ich, wenn ich das zum Laufen bringen könnte, wahrscheinlich trotzdem Postmap auf den zusätzlichen Dateien ausführen müsste, um sie in .db-Dateien zu konvertieren. Das ist in Ordnung.
Antwort1
Allgemein,alleKonfigurationsparameter, die für Postfix definiert sind (sieheMann 5 Postconf) sollte in einer und nur einer Datei abgelegt werden, $etcdir/postfix/main.cf
. Postfix hat also in seiner Konfigurationssyntax nicht eine Art von Include this file/directory
wie andere Software wie Apache httpd, sudo und andere.
Glücklicherweise können Sie immer externe Quelle verwenden füreinige Parameterwie Liste der virtuellen Domänen, Liste der virtuellen Benutzer oder wo sich das Postfach des Benutzers befindet. Tatsächlich ist es ungewöhnlich, diese Konfiguration in fest zu codieren main.cf
. Die gängige Praxis besteht darin, diese Art von Informationen auszulagern anTabelle, die Postfix unterstützt, wie etwa Hash-Datei, SQL-Tabelle oder LDAP.
Beispielkonfiguration inmain.cf
virtual_mailbox_domains = hash:/etc/postfix/vdomain
virtual_mailbox_maps = hash:/etc/postfix/vmailbox
...another configuration...