postfix (Befehl)

Aus Foxwiki
Version vom 8. September 2024, 10:04 Uhr von Dirkwagner (Diskussion | Beiträge) (Textersetzung - „Exit-Status“ durch „Rückgabewert“)

postfix - Postfix-Kontrollprogramm

Beschreibung

  • Dieser Befehl ist dem Superuser vorbehalten.
  • Verwenden Sie zum Versenden von E-Mails den Postfix-Befehl sendmail(1)
  • Der postfix(1)-Befehl steuert den Betrieb des Postfix-Mailsystems
    • Startet oder stoppt den master(8)-Daemon, führt eine Zustandsprüfung durch und andere Wartungsarbeiten
  • Standardmäßig richtet der postfix(1)-Befehl eine standardisierte Umgebung ein und führt das Shell-Skript postfix-script aus, um die eigentliche Arbeit zu erledigen
  • Wenn jedoch die Unterstützung für mehrere Postfix-Instanzen konfiguriert ist, führt postfix(1) den mit der multi_instance_wrapper-Konfiguration angegebenen Befehl aus
  • Dieser Befehl führt den Befehl für jede zutreffende Postfix-Instanz aus

Installation

Syntax

# postfix [-Dv] [-c Konfigurationsverzeichnis] ​​Befehl

Parameter

Die folgenden main.cf-Konfigurationsparameter werden als gleichnamige Umgebungsvariablen exportiert:

Konfigurationsparameter Beschreibung
config_directory postconf -d Der Standardspeicherort der Postfix-Konfigurationsdateien main.cf und master.cf.
Befehlsverzeichnis Ausgabe von postconf -d Der Speicherort aller Postfix-Verwaltungsbefehle.
daemon_directory postconf -d Das Verzeichnis mit Postfix-Unterstützungsprogrammen und Daemon-Programmen.
html_directory postconf -d Der Speicherort von Postfix-HTML-Dateien, die beschreiben, wie ein bestimmtes Postfix-Subsystem oder -Feature erstellt, konfiguriert oder betrieben wird.
mail_owner (postfix) Das UNIX-Systemkonto, dem die Postfix-Warteschlange und die meisten Postfix-Daemon-Prozesse gehören.
mailq_path postconf -d Sendmail-Kompatibilitätsfunktion, die angibt, wo der Postfix-Befehl mailq(1) installiert ist.
manpage_directory postconf -d Wo die Postfix-Manpages installiert sind.
newaliases_path postconf -d Sendmail-Kompatibilitätsfunktion, die den Speicherort des Befehls newaliases(1) angibt.
queue_directory postconf -d Der Speicherort des Postfix-Queue-Verzeichnisses der obersten Ebene.
readme_directory postconf -d Der Speicherort von Postfix-README-Dateien, die beschreiben, wie ein bestimmtes Postfix-Subsystem oder -Feature erstellt, konfiguriert oder betrieben wird.
sendmail_path postconf -d Eine Sendmail-Kompatibilitätsfunktion, die den Speicherort des Postfix-Befehls sendmail(1) angibt.
setgid_group (postdrop) Der Gruppenbesitz von set-gid Postfix-Befehlen und von gruppenbeschreibbaren Postfix-Verzeichnissen.
data_directory Ausgabe von postconf -d Das Verzeichnis mit Postfix-schreibbaren Datendateien (zum Beispiel: Caches, Pseudo-Zufallszahlen).
Kompatibilitätsstufe (0) Ein Sicherheitsnetz, das bewirkt, dass Postfix nach einem Upgrade auf eine neuere Postfix-Version mit abwärtskompatiblen Standardeinstellungen ausgeführt wird.
meta_directory postconf -d Der Speicherort von nicht ausführbaren Dateien, die von mehreren Postfix-Instanzen gemeinsam genutzt werden, z.
  • B.
  • postfix-files, dynamicmaps.cf und die Vorlagendateien für mehrere Instanzen main.cf.proto und master.cf.proto.
shlib_directory postconf -d Der Speicherort dynamisch verknüpfter Postfix-Bibliotheken (libpostfix-*.so) und der Standardspeicherort von Postfix-Datenbank-Plugins (postfix-*.so) die einen relativen Pfadnamen in der Datei dynamicmaps.cf haben.
openssl_path (openssl) Der Speicherort des OpenSSL-Befehlszeilenprogramms openssl(1).

=== Weitere Konfigurationsparameter )))

import_environment postconf -d Die Liste der Umgebungsparameter, die ein privilegierter Postfix-Prozess aus einem Nicht-Postfix-Elternprozess oder einer Name=Wert-Umgebung importiert überschreibt.
syslog_facility (Mail) Die Syslog-Funktion der Postfix-Protokollierung.
syslog_name postconf -d Ein Präfix, das dem Prozessnamen in Syslog-Einträgen vorangestellt wird, sodass beispielsweise „smtpd“ zu „prefix/smtpd“ wird.
multi_instance_directories (leer) - diese Verzeichnisse gehören zu weiteren Postfix-Instanzen, die die Ausführbare Postfix-Dateien und -Dokumentation mit der Standard-Postfix-Instanz, die zusammen mit der Standardinstanz gestartet, gestoppt usw. werden Postfix-Instanz.
multi_instance_wrapper (leer) Der Pfadname eines Multi-Instanzen-Manager-Befehls, den der postfix(1)-Befehl aufruft, wenn der multi_instance_directories-Parameterwert ist nicht leer.
multi_instance_group (leer) Der optionale Instanzgruppenname dieser Postfix-Instanz.
multi_instance_name (leer) Der optionale Instanzname dieser Postfix-Instanz.
multi_instance_enable (nein) Lassen Sie zu, dass diese Postfix-Instanz von einem Multi-Instanz-Manager gestartet, gestoppt usw.
  • wird.
maillog_file (leer) Der Name einer optionalen Protokolldatei, die vom Postfix-Dienst postlogd(8) geschrieben wird.
maillog_file_compressor (gzip) Das Programm, das nach dem Rotieren von $maillog_file mit "postfix logrotate" ausgeführt werden soll.
maillog_file_prefixes (/var, /dev/stdout) Eine Liste zulässiger Präfixe für einen maillog_file-Wert.
maillog_file_rotate_suffix(%Y%m%d-%H%M%S) Das Format des Suffixes, das an $maillog_file angehängt werden soll, während die Datei mit "postfix logrotate" gedreht wird.
postlog_service_name (postlog) Der Name des postlogd(8)-Diensteintrags in master.cf.

Optionen

Befehle

  • Geben Sie name=value an, um bestimmte main.cf-Konfigurationsparameter zu überschreiben und zu aktualisieren. Verwenden Sie dies zum Beispiel, um den mail_owner zu ändern oder gid_group-Einstellung für ein bereits installiertes Postfix-System.
Befehl Beschreibung
check Aktivieren Sie Warnen bei fehlerhaftem Verzeichnis-/Dateibesitz oder -berechtigungen und erstellen Sie fehlende Verzeichnisse.
start Startet das Mailsystem Postfix. Dadurch wird auch die oben beschriebene Konfigurationsprüfung durchgeführt.
start-fg Wie start, aber lassen Sie den master(8)-Daemon im Vordergrund laufen und aktivieren Sie den "init"-Modus von master(8), wenn er als PID 1 ausgeführt wird.
  • Dieser Befehl wiederholt erfordert, dass die Unterstützung mehrerer Instanzen deaktiviert ist (dh der Wert des Parameters multi_instance_directories muss leer sein).
  • Wenn Sie Postfix in einem Container ausführen, lesen Sie MAILLOG_README für die Protokollierung auf stdout. Postfix protokolliert standardmäßig in Syslog, was Folgendes erfordert: a) Ausführenning eines syslogd-Prozesses innerhalb des Containers oder b) Mounten des /dev/log-Sockets des Container-Hosts innerhalb des Containers (Beispiel: „docker run -v /dev/log:/dev/log ...") und c) ein eindeutiges Postfix-Präfix "syslog_name", das die Protokollierung von der Postfix-Instanz identifiziert.
stop Beenden Sie das Postfix-Mailsystem ordnungsgemäß. Wenn möglich, dürfen laufende Prozesse zum frühestmöglichen Zeitpunkt beendet werden.
  • Hinweis: Um das Postfix-Mailsystem nach einer Konfigurationsänderung zu aktualisieren, verwenden Sie die Start- und Stoppbefehle nicht nacheinander. Verwenden Sie die reload-Befehl stattdessen.
abort Beendet das Postfix-Mailsystem abrupt. Laufende Prozesse werden sofort zum Stoppen signalisiert.
flush Zustellung erzwingen: versucht, jede Nachricht in der verzögerten Mail-Warteschlange zuzustellen. Normalerweise werden Versuche, verspätete Post zuzustellen, an regulären Posteingängen durchgeführt.tervals, das Intervall verdoppelt sich nach jedem fehlgeschlagenen Versuch.
  • Warnung: Das häufige Leeren unzustellbarer E-Mails führt zu einer schlechten Zustellleistung aller anderen E-Mails.
reload Konfigurationsdateien erneut lesen. Laufende Prozesse werden zum frühestmöglichen Zeitpunkt beendet.
status Zeigt an, ob das Postfix-Mailsystem gerade läuft.
logrotieren Rotieren Sie die mit $maillog_file angegebene Protokolldatei, indem Sie ein Zeitstempel-Suffix anhängen, das gemäß $maillog_file_rotate_suffix formatiert ist, und durch Komprimieren der Datei mit dem mit $maillog_file_compressor angegebenen Befehl. Dadurch werden keine /dev/*-Dateien gedreht.
tls-Unterbefehl Aktivieren Sie opportunistisches TLS im Postfix-SMTP-Client oder -Server und verwalten Sie die privaten TLS-Schlüssel und -Zertifikate des Postfix-SMTP-Servers. Siehe Beitrag fix-tls(1) für die Dokumentation.
Upgrade-Konfiguration [Name=Wert ...] Aktualisieren Sie die Dateien main.cf und master.cf mit Informationen, die Postfix zum Ausführen benötigt: Dienste hinzufügen oder aktualisieren und Konfiguration hinzufügen oder aktualisieren.

Einstellungen der Rationsparameter

  • Geben Sie name=value an, um bestimmte main.cf-Konfigurationsparameter zu überschreiben und zu aktualisieren.
Befehl Beschreibung
-c Konfigurationsverzeichnis Lesen Sie die Konfigurationsdateien main.cf und master.cf im benannten Verzeichnis statt im Standardkonfigurationsverzeichnis. Verwenden Sie dies, um guish zwischen mehreren Postfix-Instanzen auf demselben Host.
  • Bei Postfix 2.6 und höher erzwingt diese Option, dass der postfix(1)-Befehl nur auf der angegebenen Postfix-Instanz ausgeführt wird. Dieses Verhalten ist ingeerbt von postfix(1)-Befehlen, die als Nachkomme des aktuellen Prozesses ausgeführt werden.
-D (nur mit Postfix-Start) Führen Sie jeden Postfix-Daemon unter der Kontrolle eines Debuggers aus, wie über den Konfigurationsparameter debugger_command angegeben.
-v Aktiviert die ausführliche Protokollierung für Debugging-Zwecke. Mehrere -v-Optionen machen die Software immer ausführlicher.

Umgebungsvariablen

Der Befehl postfix(1) exportiert die folgenden Umgebungsvariablen, bevor die postfix-script-Datei ausgeführt wird:

Umgebungsvariable Beschreibung
MAIL_CONFIG Dies wird festgelegt, wenn die Befehlszeilenoption -c vorhanden ist.
  • Bei Postfix 2.6 und höher erzwingt diese Umgebungsvariable, dass der postfix(1)-Befehl nur auf der angegebenen Postfix-Instanz ausgeführt wird. Dies Das Verhalten wird von postfix(1)-Befehlen geerbt, die als Nachkommen des aktuellen Prozesses ausgeführt werden.
MAIL_VERBOSE Dies wird festgelegt, wenn die Befehlszeilenoption -v vorhanden ist.
MAIL_DEBUG Dies wird festgelegt, wenn die Befehlszeilenoption -D vorhanden ist.Wenn der interne Protokollierungsdienst aktiviert ist (indem ein nicht leerer maillog_file-Parameterwert gesetzt wird), exportiert der postfix(1)-Befehl Einstellungen, die vorhanden sind Wird von untergeordneten Prozessen verwendet, bevor sie main.cf oder Befehlszeileneinstellungen verarbeitet haben.
POSTLOG_SERVICE Der Name des öffentlichen Postlog-Dienstendpunkts.
POSTLOG_HOSTNAME Der Hostname, der der internen Protokollierung vorangestellt werden soll.

Rückgabewert

Konfiguration

Dateien

Vor Postfix Version 2.6 befanden sich alle folgenden Dateien in $config_directory. Einige Dateien befinden sich jetzt also in $daemon_directory oder $meta_directory dass sie von mehreren Instanzen gemeinsam genutzt werden können, die dieselbe Postfix-Version ausführen.

Verwenden Sie den Befehl „postconf config_directory“ oder „postconf daemon_directory“, um die Namen in ihre tatsächlichen Werte zu erweitern.

$config_directory/main.cf, Postfix-Konfigurationsparameter $config_directory/master.cf, Postfix-Daemon-Prozesse

$daemon_directory/postfix-script, Verwaltungsbefehle $daemon_directory/post-install, Konfiguration nach der Installation

$meta_directory/dynamicmaps.cf, Plug-in-Datenbankclients $meta_directory/postfix-files, Datei-/Verzeichnisberechtigungen

Anwendung

Sicherheit

Dokumentation

RFC

Man-Pages

Info-Pages

Siehe auch

Befehle: postalias(1), Alias-Datenbank erstellen/aktualisieren/abfragen postcat(1), untersucht die Postfix-Warteschlangendatei postconf(1), Postfix-Konfigurationsprogramm postfix(1), Postfix-Kontrollprogramm postfix-tls(1), Postfix-TLS-Verwaltung postkick(1), Postfix-Daemon auslösen postlock(1), Postfix-kompatibles Sperren postlog(1), Postfix-kompatible Protokollierung postmap(1), Postfix-Nachschlagetabellen-Manager postmulti(1), Postfix-Multi-Instanz-Manager postqueue(1), Steuerung der Postfix-Mail-Warteschlange postsuper(1), Postfix-Verwaltung mailq(1), Sendmail-Kompatibilitätsschnittstelle newaliases(1), Sendmail-Kompatibilitätsschnittstelle sendmail(1), Sendmail-Kompatibilitätsschnittstelle

Postfix-Konfiguration: bounce(5), Vorlagen für Postfix-Bounce-Nachrichten master(5), Postfix-master.cf-Dateisyntax postconf(5), Postfix-main.cf-Dateisyntax postfix-wrapper(5), Postfix-API für mehrere Instanzen

Tabellengesteuerte Mechanismen: access(5), Postfix-SMTP-Zugriffskontrolltabelle aliases(5), Postfix-Alias-Datenbank canonical(5), Umschreiben der Postfix-Eingabeadresse generic(5), Umschreiben der Postfix-Ausgabeadresse header_checks(5), body_checks(5), Postfix-Inhaltsprüfung relocated(5), Benutzer, die umgezogen sind transport(5), Postfix-Routing-Tabelle virtual(5), virtuelles Postfix-Aliasing

Tabellensuchmechanismen: cidr_table(5), CIDR-Muster mit Wert verknüpfen ldap_table(5), Postfix-LDAP-Client lmdb_table(5), Postfix LMDB-Datenbanktreiber memcache_table(5), Postfix-Memcache-Client mysql_table(5), Postfix-MYSQL-Client nisplus_table(5), Postfix-NIS+-Client pcre_table(5), PCRE-Muster mit Wert verknüpfen pgsql_table(5), Postfix-PostgreSQL-Client regexp_table(5), Assoziiere das POSIX-Regular expressionp-Muster mit dem Wert socketmap_table(5), Postfix-Socketmap-Client sqlite_table(5), Postfix-SQLite-Datenbanktreiber tcp_table(5), Postfix-Client-Server-Tabellensuche

Daemon-Prozesse: anvil(8), Postfix-Verbindung/Ratenbegrenzung Bounce(8), Defer(8), Trace(8), Lieferstatusberichte cleanup(8), kanonisieren und Nachricht in die Warteschlange einreihen discard(8), Postfix-Zustellagent verwerfen dnsblog(8), DNS Allow/Denylist Logger error(8), Postfix-Fehlerzustellungsagent flush(8), Postfix schneller ETRN-Dienst local(8), lokaler Zustellungsagent von Postfix master(8), Postfix-Master-Daemon oqmgr(8), alter Postfix-Warteschlangenmanager Pickup(8), Postfix lokale Postabholung pipe(8), E-Mail an Nicht-Postfix-Befehl ausliefern postlogd(8), interner Logging-Dienst von Postfix postscreen(8), Postfix-Zombieblocker proxymap(8), Proxy-Server für Postfix-Nachschlagetabellen qmgr(8), Postfix-Warteschlangenmanager qmqpd(8), Postfix-QMQP-Server scache(8), Cache-Manager für Postfix-Verbindungen showq(8), listet die Postfix-Mail-Warteschlange auf smtp(8), lmtp(8), Postfix SMTP+LMTP-Client smtpd(8), Postfix-SMTP-Server spawn(8), Nicht-Postfix-Server ausführen tlsmgr(8), Postfix-TLS-Cache und Randomness-Manager tlsproxy(8), Postfix-TLS-Proxyserver trivial-rewrite(8), Umschreiben von Postfix-Adressen verify(8), Postfix-Adressverifizierung virtual(8), virtueller Zustellungsagent von Postfix

Sonstiges: syslogd(8), Systemprotokollierung

README FILES

Verwenden Sie "postconf readme_directory" oder "postconf html_directory", um diese Informationen zu finden. ÜBERSICHT, Überblick über Postfix-Befehle und -Prozesse BASIC_CONFIGURATION_README, Postfix-Grundkonfiguration ADDRESS_REWRITING_README, Umschreiben von Postfix-Adressen SMTPD_ACCESS_README, SMTP-Relay/Zugriffskontrolle CONTENT_INSPECTION_README, Postfix-Inhaltsprüfung QSHAPE_README, Postfix-Warteschlangenanalyse

Links

Projekt

Weblinks

Manpage

SYNOPSIS

postfix [-Dv] [-c config_dir] command

DESCRIPTION

This command is reserved for the superuser.

  • To submit mail, use the Postfix sendmail(1) command.

The postfix(1) command controls the operation of the Postfix mail system: start or stop the master(8) daemon, do a health check, and other mainte‐ nance.

By default, the postfix(1) command sets up a standardized environment and runs the postfix-script shell script to do the actual work.

However, when support for multiple Postfix instances is configured, postfix(1) executes the command specified with the multi_instance_wrapper config‐ uration parameter. This command will execute the command for each applicable Postfix instance.

The following commands are implemented:

check Warn about bad directory/file ownership or permissions, and create missing directories.

start Start the Postfix mail system.

  • This also runs the configuration check described above.

start-fg

      Like start, but keep the master(8) daemon running in the foreground, and enable master(8) "init" mode when running as PID 1.  This command re‐
      quires that multi-instance support is disabled (i.e. 
  • the multi_instance_directories parameter value must be empty).
      When running Postfix inside a container, see MAILLOG_README for logging to stdout. 
  • Postfix logs to syslog by default, which requires a) run‐
      ning a syslogd process inside the container, or b) mounting the container host's /dev/log socket inside the container (example: "docker run -v
      /dev/log:/dev/log ..."), and c) a distinct Postfix "syslog_name" prefix that identifies logging from the Postfix instance.

stop Stop the Postfix mail system in an orderly fashion.

  • If possible, running processes are allowed to terminate at their earliest convenience.
      Note: in order to refresh the Postfix mail system after a configuration change, do not use the start and stop commands in succession. 
  • Use the
      reload command instead.

abort Stop the Postfix mail system abruptly.

  • Running processes are signaled to stop immediately.

flush Force delivery: attempt to deliver every message in the deferred mail queue.

  • Normally, attempts to deliver delayed mail happen at regular in‐
      tervals, the interval doubling after each failed attempt.
      Warning: flushing undeliverable mail frequently will result in poor delivery performance of all other mail.

reload Re-read configuration files.

  • Running processes terminate at their earliest convenience.

status Indicate if the Postfix mail system is currently running.

set-permissions [name=value ...]

      Set the ownership and permissions of Postfix related files and directories, as specified in the postfix-files file.
      Specify name=value to override and update specific main.cf configuration parameters. 
  • Use this, for example, to change the mail_owner or set‐
      gid_group setting for an already installed Postfix system.
      This feature is available in Postfix 2.1 and later.  With Postfix 2.0 and earlier, use "$config_directory/post-install set-permissions".

logrotate

      Rotate  the logfile specified with $maillog_file, by appending a time-stamp suffix that is formatted according to $maillog_file_rotate_suffix,
      and by compressing the file with the command specified with $maillog_file_compressor.  This will not rotate /dev/* files.
      This feature is available in Postfix 3.4 and later.

tls subcommand

      Enable opportunistic TLS in the Postfix SMTP client or server, and manage Postfix SMTP server TLS private keys and  certificates.   See  post‐
      fix-tls(1) for documentation.
      This feature is available in Postfix 3.1 and later.

upgrade-configuration [name=value ...]

      Update the main.cf and master.cf files with information that Postfix needs in order to run: add or update services, and add or update configu‐
      ration parameter settings.
      Specify name=value to override and update specific main.cf configuration parameters.
      This feature is available in Postfix 2.1 and later.  With Postfix 2.0 and earlier, use "$config_directory/post-install upgrade-configuration".

The following options are implemented:

-c config_dir

      Read the main.cf and master.cf configuration files in the named directory instead of the default configuration directory.  Use this to distin‐
      guish between multiple Postfix instances on the same host.
      With Postfix 2.6 and later, this option forces the postfix(1) command to operate on the specified Postfix instance only.  This behavior is in‐
      herited by postfix(1) commands that run as a descendant of the current process.

-D (with postfix start only)

      Run each Postfix daemon under control of a debugger as specified via the debugger_command configuration parameter.

-v Enable verbose logging for debugging purposes.

  • Multiple -v options make the software increasingly verbose.

ENVIRONMENT

The postfix(1) command exports the following environment variables before executing the postfix-script file:

MAIL_CONFIG

      This is set when the -c command-line option is present.
      With Postfix 2.6 and later, this environment variable forces the postfix(1) command to operate on the specified Postfix instance  only.   This
      behavior is inherited by postfix(1) commands that run as a descendant of the current process.

MAIL_VERBOSE

      This is set when the -v command-line option is present.

MAIL_DEBUG

      This is set when the -D command-line option is present.

When the internal logging service is enabled (by setting a non-empty maillog_file parameter value) the postfix(1) command exports settings that are used by child processes before they have processed main.cf or command-line settings.

POSTLOG_SERVICE

      The name of the public postlog service endpoint.

POSTLOG_HOSTNAME

      The hostname to prepend to internal logging.

CONFIGURATION PARAMETERS

The following main.cf configuration parameters are exported as environment variables with the same names:

config_directory (see 'postconf -d' output)

      The default location of the Postfix main.cf and master.cf configuration files.

command_directory (see 'postconf -d' output)

      The location of all postfix administrative commands.

daemon_directory (see 'postconf -d' output)

      The directory with Postfix support programs and daemon programs.

html_directory (see 'postconf -d' output)

      The location of Postfix HTML files that describe how to build, configure or operate a specific Postfix subsystem or feature.

mail_owner (postfix)

      The UNIX system account that owns the Postfix queue and most Postfix daemon processes.

mailq_path (see 'postconf -d' output)

      Sendmail compatibility feature that specifies where the Postfix mailq(1) command is installed.

manpage_directory (see 'postconf -d' output)

      Where the Postfix manual pages are installed.

newaliases_path (see 'postconf -d' output)

      Sendmail compatibility feature that specifies the location of the newaliases(1) command.

queue_directory (see 'postconf -d' output)

      The location of the Postfix top-level queue directory.

readme_directory (see 'postconf -d' output)

      The location of Postfix README files that describe how to build, configure or operate a specific Postfix subsystem or feature.

sendmail_path (see 'postconf -d' output)

      A Sendmail compatibility feature that specifies the location of the Postfix sendmail(1) command.

setgid_group (postdrop)

      The group ownership of set-gid Postfix commands and of group-writable Postfix directories.

Available in Postfix version 2.5 and later:

data_directory (see 'postconf -d' output)

      The directory with Postfix-writable data files (for example: caches, pseudo-random numbers).

Available in Postfix version 3.0 and later:

compatibility_level (0)

      A safety net that causes Postfix to run with backwards-compatible default settings after an upgrade to a newer Postfix version.

meta_directory (see 'postconf -d' output)

      The location of non-executable files that are shared among  multiple  Postfix  instances,  such  as  postfix-files,  dynamicmaps.cf,  and  the
      multi-instance template files main.cf.proto and master.cf.proto.

shlib_directory (see 'postconf -d' output)

      The  location  of  Postfix dynamically-linked libraries (libpostfix-*.so), and the default location of Postfix database plugins (postfix-*.so)
      that have a relative pathname in the dynamicmaps.cf file.

Available in Postfix version 3.1 and later:

openssl_path (openssl)

      The location of the OpenSSL command line program openssl(1).

Other configuration parameters:

import_environment (see 'postconf -d' output)

      The list of environment parameters that a privileged Postfix process will import from a non-Postfix parent process, or name=value  environment
      overrides.

syslog_facility (mail)

      The syslog facility of Postfix logging.

syslog_name (see 'postconf -d' output)

      A prefix that is prepended to the process name in syslog records, so that, for example, "smtpd" becomes "prefix/smtpd".

Available in Postfix version 2.6 and later:

multi_instance_directories (empty)

      An  optional  list  of  non-default Postfix configuration directories; these directories belong to additional Postfix instances that share the
      Postfix executable files and documentation with the default Postfix instance, and that are started, stopped, etc., together with  the  default
      Postfix instance.

multi_instance_wrapper (empty)

      The  pathname  of  a multi-instance manager command that the postfix(1) command invokes when the multi_instance_directories parameter value is
      non-empty.

multi_instance_group (empty)

      The optional instance group name of this Postfix instance.

multi_instance_name (empty)

      The optional instance name of this Postfix instance.

multi_instance_enable (no)

      Allow this Postfix instance to be started, stopped, etc., by a multi-instance manager.

Available in Postfix version 3.4 and later:

maillog_file (empty)

      The name of an optional logfile that is written by the Postfix postlogd(8) service.

maillog_file_compressor (gzip)

      The program to run after rotating $maillog_file with "postfix logrotate".

maillog_file_prefixes (/var, /dev/stdout)

      A list of allowed prefixes for a maillog_file value.

maillog_file_rotate_suffix (%Y%m%d-%H%M%S)

      The format of the suffix to append to $maillog_file while rotating the file with "postfix logrotate".

postlog_service_name (postlog)

      The name of the postlogd(8) service entry in master.cf.

FILES

Prior to Postfix version 2.6, all of the following files were in $config_directory.

  • Some files are now in $daemon_directory or $meta_directory so

that they can be shared among multiple instances that run the same Postfix version.

Use the command "postconf config_directory" or "postconf daemon_directory" to expand the names into their actual values.

$config_directory/main.cf, Postfix configuration parameters $config_directory/master.cf, Postfix daemon processes $daemon_directory/postfix-script, administrative commands $daemon_directory/post-install, post-installation configuration $meta_directory/dynamicmaps.cf, plug-in database clients $meta_directory/postfix-files, file/directory permissions

SEE ALSO

Commands: postalias(1), create/update/query alias database postcat(1), examine Postfix queue file postconf(1), Postfix configuration utility postfix(1), Postfix control program postfix-tls(1), Postfix TLS management postkick(1), trigger Postfix daemon postlock(1), Postfix-compatible locking postlog(1), Postfix-compatible logging postmap(1), Postfix lookup table manager postmulti(1), Postfix multi-instance manager postqueue(1), Postfix mail queue control postsuper(1), Postfix housekeeping mailq(1), Sendmail compatibility interface newaliases(1), Sendmail compatibility interface sendmail(1), Sendmail compatibility interface

Postfix configuration: bounce(5), Postfix bounce message templates master(5), Postfix master.cf file syntax postconf(5), Postfix main.cf file syntax postfix-wrapper(5), Postfix multi-instance API

Table-driven mechanisms: access(5), Postfix SMTP access control table aliases(5), Postfix alias database canonical(5), Postfix input address rewriting generic(5), Postfix output address rewriting header_checks(5), body_checks(5), Postfix content inspection relocated(5), Users that have moved transport(5), Postfix routing table virtual(5), Postfix virtual aliasing

Table lookup mechanisms: cidr_table(5), Associate CIDR pattern with value ldap_table(5), Postfix LDAP client lmdb_table(5), Postfix LMDB database driver memcache_table(5), Postfix memcache client mysql_table(5), Postfix MYSQL client nisplus_table(5), Postfix NIS+ client pcre_table(5), Associate PCRE pattern with value pgsql_table(5), Postfix PostgreSQL client regexp_table(5), Associate POSIX regexp pattern with value socketmap_table(5), Postfix socketmap client sqlite_table(5), Postfix SQLite database driver tcp_table(5), Postfix client-server table lookup

Daemon processes: anvil(8), Postfix connection/rate limiting bounce(8), defer(8), trace(8), Delivery status reports cleanup(8), canonicalize and enqueue message discard(8), Postfix discard delivery agent dnsblog(8), DNS allow/denylist logger error(8), Postfix error delivery agent flush(8), Postfix fast ETRN service local(8), Postfix local delivery agent master(8), Postfix master daemon oqmgr(8), old Postfix queue manager pickup(8), Postfix local mail pickup pipe(8), deliver mail to non-Postfix command postlogd(8), Postfix internal logging service postscreen(8), Postfix zombie blocker proxymap(8), Postfix lookup table proxy server qmgr(8), Postfix queue manager qmqpd(8), Postfix QMQP server scache(8), Postfix connection cache manager showq(8), list Postfix mail queue smtp(8), lmtp(8), Postfix SMTP+LMTP client smtpd(8), Postfix SMTP server spawn(8), run non-Postfix server tlsmgr(8), Postfix TLS cache and randomness manager tlsproxy(8), Postfix TLS proxy server trivial-rewrite(8), Postfix address rewriting verify(8), Postfix address verification virtual(8), Postfix virtual delivery agent

Other: syslogd(8), system logging

README FILES

Use "postconf readme_directory" or "postconf html_directory" to locate this information. OVERVIEW, overview of Postfix commands and processes BASIC_CONFIGURATION_README, Postfix basic configuration ADDRESS_REWRITING_README, Postfix address rewriting SMTPD_ACCESS_README, SMTP relay/access control CONTENT_INSPECTION_README, Postfix content inspection QSHAPE_README, Postfix queue analysis


TMP

Beschreibung

  • Dieser Befehl ist dem Superuser vorbehalten.
  • Verwenden Sie zum Versenden von E-Mails den Postfix-Befehl sendmail(1)
  • Der postfix(1)-Befehl steuert den Betrieb des Postfix-Mailsystems
    • Startet oder stoppt den master(8)-Daemon, führt eine Zustandsprüfung durch und andere Wartungsarbeiten
  • Standardmäßig richtet der postfix(1)-Befehl eine standardisierte Umgebung ein und führt das Shell-Skript postfix-script aus, um die eigentliche Arbeit zu erledigen
  • Wenn jedoch die Unterstützung für mehrere Postfix-Instanzen konfiguriert ist, führt postfix(1) den mit der multi_instance_wrapper-Konfiguration angegebenen Befehl aus
  • Dieser Befehl führt den Befehl für jede zutreffende Postfix-Instanz aus

Installation

Syntax

# postfix [-Dv] [-c Konfigurationsverzeichnis] ​​Befehl

Parameter

Die folgenden main.cf-Konfigurationsparameter werden als gleichnamige Umgebungsvariablen exportiert:

Parameter Beschreibung Beschreibung
config_directory postconf -d Der Standardspeicherort der Postfix-Konfigurationsdateien main.cf und master.cf.
Befehlsverzeichnis Ausgabe von postconf -d Der Speicherort aller Postfix-Verwaltungsbefehle.
daemon_directory postconf -d Das Verzeichnis mit Postfix-Unterstützungsprogrammen und Daemon-Programmen.
html_directory postconf -d Der Speicherort von Postfix-HTML-Dateien, die beschreiben, wie ein bestimmtes Postfix-Subsystem oder -Feature erstellt, konfiguriert oder betrieben wird.
mail_owner (postfix) Das UNIX-Systemkonto, dem die Postfix-Warteschlange und die meisten Postfix-Daemon-Prozesse gehören.
mailq_path postconf -d Sendmail-Kompatibilitätsfunktion, die angibt, wo der Postfix-Befehl mailq(1) installiert ist.
manpage_directory postconf -d Wo die Postfix-Manpages installiert sind.
newaliases_path postconf -d Sendmail-Kompatibilitätsfunktion, die den Speicherort des Befehls newaliases(1) angibt.
queue_directory postconf -d Der Speicherort des Postfix-Queue-Verzeichnisses der obersten Ebene.
readme_directory postconf -d Der Speicherort von Postfix-README-Dateien, die beschreiben, wie ein bestimmtes Postfix-Subsystem oder -Feature erstellt, konfiguriert oder betrieben wird.
sendmail_path postconf -d Eine Sendmail-Kompatibilitätsfunktion, die den Speicherort des Postfix-Befehls sendmail(1) angibt.
setgid_group (postdrop) Der Gruppenbesitz von set-gid Postfix-Befehlen und von gruppenbeschreibbaren Postfix-Verzeichnissen.
data_directory Ausgabe von postconf -d Das Verzeichnis mit Postfix-schreibbaren Datendateien (zum Beispiel: Caches, Pseudo-Zufallszahlen).
Kompatibilitätsstufe (0) Ein Sicherheitsnetz, das bewirkt, dass Postfix nach einem Upgrade auf eine neuere Postfix-Version mit abwärtskompatiblen Standardeinstellungen ausgeführt wird.
meta_directory postconf -d Der Speicherort von nicht ausführbaren Dateien, die von mehreren Postfix-Instanzen gemeinsam genutzt werden, z. B.  postfix-files, dynamicmaps.cf und die Vorlagendateien für mehrere Instanzen main.cf.proto und master.cf.proto.
shlib_directory postconf -d Der Speicherort dynamisch verknüpfter Postfix-Bibliotheken (libpostfix-*.so) und der Standardspeicherort von Postfix-Datenbank-Plugins (postfix-*.so) die einen relativen Pfadnamen in der Datei dynamicmaps.cf haben.
openssl_path (openssl) Der Speicherort des OpenSSL-Befehlszeilenprogramms openssl(1).

=== Weitere Konfigurationsparameter )))

Parameter Beschreibung Beschreibung
import_environment postconf -d Die Liste der Umgebungsparameter, die ein privilegierter Postfix-Prozess aus einem Nicht-Postfix-Elternprozess oder einer Name=Wert-Umgebung importiert überschreibt.
syslog_facility (Mail) Die Syslog-Funktion der Postfix-Protokollierung.
syslog_name postconf -d Ein Präfix, das dem Prozessnamen in Syslog-Einträgen vorangestellt wird, sodass beispielsweise „smtpd“ zu „prefix/smtpd“ wird.
multi_instance_directories (leer) - diese Verzeichnisse gehören zu weiteren Postfix-Instanzen, die die Ausführbare Postfix-Dateien und -Dokumentation mit der Standard-Postfix-Instanz, die zusammen mit der Standardinstanz gestartet, gestoppt usw. werden Postfix-Instanz.
multi_instance_wrapper (leer) Der Pfadname eines Multi-Instanzen-Manager-Befehls, den der postfix(1)-Befehl aufruft, wenn der multi_instance_directories-Parameterwert ist nicht leer.
multi_instance_group (leer) Der optionale Instanzgruppenname dieser Postfix-Instanz.
multi_instance_name (leer) Der optionale Instanzname dieser Postfix-Instanz.
multi_instance_enable (nein) Lassen Sie zu, dass diese Postfix-Instanz von einem Multi-Instanz-Manager gestartet, gestoppt usw. wird.
maillog_file (leer) Der Name einer optionalen Protokolldatei, die vom Postfix-Dienst postlogd(8) geschrieben wird.
maillog_file_compressor (gzip) Das Programm, das nach dem Rotieren von $maillog_file mit "postfix logrotate" ausgeführt werden soll.
maillog_file_prefixes (/var, /dev/stdout) Eine Liste zulässiger Präfixe für einen maillog_file-Wert.
maillog_file_rotate_suffix(%Y%m%d-%H%M%S) Das Format des Suffixes, das an $maillog_file angehängt werden soll, während die Datei mit "postfix logrotate" gedreht wird.
postlog_service_name (postlog) Der Name des postlogd(8)-Diensteintrags in master.cf.

Optionen

Befehle

  • Geben Sie name=value an, um bestimmte main.cf-Konfigurationsparameter zu überschreiben und zu aktualisieren. Verwenden Sie dies zum Beispiel, um den mail_owner zu ändern oder gid_group-Einstellung für ein bereits installiertes Postfix-System.
Befehl Beschreibung
check Aktivieren Sie Warnen bei fehlerhaftem Verzeichnis-/Dateibesitz oder -berechtigungen und erstellen Sie fehlende Verzeichnisse.
start Startet das Mailsystem Postfix. Dadurch wird auch die oben beschriebene Konfigurationsprüfung durchgeführt.
start-fg Wie start, aber lassen Sie den master(8)-Daemon im Vordergrund laufen und aktivieren Sie den "init"-Modus von master(8), wenn er als PID 1 ausgeführt wird.
  • Dieser Befehl wiederholt erfordert, dass die Unterstützung mehrerer Instanzen deaktiviert ist (dh der Wert des Parameters multi_instance_directories muss leer sein).
  • Wenn Sie Postfix in einem Container ausführen, lesen Sie MAILLOG_README für die Protokollierung auf stdout. Postfix protokolliert standardmäßig in Syslog, was Folgendes erfordert: a) Ausführenning eines syslogd-Prozesses innerhalb des Containers oder b) Mounten des /dev/log-Sockets des Container-Hosts innerhalb des Containers (Beispiel: „docker run -v /dev/log:/dev/log ...") und c) ein eindeutiges Postfix-Präfix "syslog_name", das die Protokollierung von der Postfix-Instanz identifiziert.
stop Beenden Sie das Postfix-Mailsystem ordnungsgemäß. Wenn möglich, dürfen laufende Prozesse zum frühestmöglichen Zeitpunkt beendet werden.
  • Hinweis: Um das Postfix-Mailsystem nach einer Konfigurationsänderung zu aktualisieren, verwenden Sie die Start- und Stoppbefehle nicht nacheinander. Verwenden Sie die reload-Befehl stattdessen.
abort Beendet das Postfix-Mailsystem abrupt. Laufende Prozesse werden sofort zum Stoppen signalisiert.
flush Zustellung erzwingen: versucht, jede Nachricht in der verzögerten Mail-Warteschlange zuzustellen. Normalerweise werden Versuche, verspätete Post zuzustellen, an regulären Posteingängen durchgeführt.tervals, das Intervall verdoppelt sich nach jedem fehlgeschlagenen Versuch.
  • Warnung: Das häufige Leeren unzustellbarer E-Mails führt zu einer schlechten Zustellleistung aller anderen E-Mails.
reload Konfigurationsdateien erneut lesen. Laufende Prozesse werden zum frühestmöglichen Zeitpunkt beendet.
status Zeigt an, ob das Postfix-Mailsystem gerade läuft.
logrotieren Rotieren Sie die mit $maillog_file angegebene Protokolldatei, indem Sie ein Zeitstempel-Suffix anhängen, das gemäß $maillog_file_rotate_suffix formatiert ist, und durch Komprimieren der Datei mit dem mit $maillog_file_compressor angegebenen Befehl. Dadurch werden keine /dev/*-Dateien gedreht.
tls-Unterbefehl Aktivieren Sie opportunistisches TLS im Postfix-SMTP-Client oder -Server und verwalten Sie die privaten TLS-Schlüssel und -Zertifikate des Postfix-SMTP-Servers. Siehe Beitrag fix-tls(1) für die Dokumentation.
Upgrade-Konfiguration [Name=Wert ...] Aktualisieren Sie die Dateien main.cf und master.cf mit Informationen, die Postfix zum Ausführen benötigt: Dienste hinzufügen oder aktualisieren und Konfiguration hinzufügen oder aktualisieren.

Einstellungen der Rationsparameter

  • Geben Sie name=value an, um bestimmte main.cf-Konfigurationsparameter zu überschreiben und zu aktualisieren.
Befehl Beschreibung
-c Konfigurationsverzeichnis Lesen Sie die Konfigurationsdateien main.cf und master.cf im benannten Verzeichnis statt im Standardkonfigurationsverzeichnis. Verwenden Sie dies, um guish zwischen mehreren Postfix-Instanzen auf demselben Host.
  • Bei Postfix 2.6 und höher erzwingt diese Option, dass der postfix(1)-Befehl nur auf der angegebenen Postfix-Instanz ausgeführt wird. Dieses Verhalten ist ingeerbt von postfix(1)-Befehlen, die als Nachkomme des aktuellen Prozesses ausgeführt werden.
-D (nur mit Postfix-Start) Führen Sie jeden Postfix-Daemon unter der Kontrolle eines Debuggers aus, wie über den Konfigurationsparameter debugger_command angegeben.
-v Aktiviert die ausführliche Protokollierung für Debugging-Zwecke. Mehrere -v-Optionen machen die Software immer ausführlicher.

Umgebungsvariablen

Der Befehl postfix(1) exportiert die folgenden Umgebungsvariablen, bevor die postfix-script-Datei ausgeführt wird:

Umgebungsvariable Beschreibung
MAIL_CONFIG Dies wird festgelegt, wenn die Befehlszeilenoption -c vorhanden ist.
  • Bei Postfix 2.6 und höher erzwingt diese Umgebungsvariable, dass der postfix(1)-Befehl nur auf der angegebenen Postfix-Instanz ausgeführt wird. Dies Das Verhalten wird von postfix(1)-Befehlen geerbt, die als Nachkommen des aktuellen Prozesses ausgeführt werden.
MAIL_VERBOSE Dies wird festgelegt, wenn die Befehlszeilenoption -v vorhanden ist.
MAIL_DEBUG Dies wird festgelegt, wenn die Befehlszeilenoption -D vorhanden ist.Wenn der interne Protokollierungsdienst aktiviert ist (indem ein nicht leerer maillog_file-Parameterwert gesetzt wird), exportiert der postfix(1)-Befehl Einstellungen, die vorhanden sind Wird von untergeordneten Prozessen verwendet, bevor sie main.cf oder Befehlszeileneinstellungen verarbeitet haben.
POSTLOG_SERVICE Der Name des öffentlichen Postlog-Dienstendpunkts.
POSTLOG_HOSTNAME Der Hostname, der der internen Protokollierung vorangestellt werden soll.

Rückgabewert

Konfiguration

Dateien

  • Vor Postfix Version 2.6 befanden sich alle folgenden Dateien in $config_directory.
  • Einige Dateien befinden sich jetzt also in $daemon_directory oder $meta_directory dass sie von mehreren Instanzen gemeinsam genutzt werden können, die dieselbe Postfix-Version ausführen.
  • Verwenden Sie den Befehl „postconf config_directory“ oder „postconf daemon_directory“, um die Namen in ihre tatsächlichen Werte zu erweitern.
$config_directory/main.cf, Postfix-Konfigurationsparameter $config_directory/master.cf, Postfix-Daemon-Prozesse 
$daemon_directory/postfix-script, Verwaltungsbefehle $daemon_directory/post-install, Konfiguration nach der Installation 
$meta_directory/dynamicmaps.cf, Plug-in-Datenbankclients $meta_directory/postfix-files, Datei-/Verzeichnisberechtigungen

Anwendung

Sicherheit

Dokumentation

RFC

Man-Pages

Info-Pages

Siehe auch

Befehle: postalias(1), Alias-Datenbank erstellen/aktualisieren/abfragen postcat(1), untersucht die Postfix-Warteschlangendatei postconf(1), Postfix-Konfigurationsprogramm postfix(1), Postfix-Kontrollprogramm postfix-tls(1), Postfix-TLS-Verwaltung postkick(1), Postfix-Daemon auslösen postlock(1), Postfix-kompatibles Sperren postlog(1), Postfix-kompatible Protokollierung postmap(1), Postfix-Nachschlagetabellen-Manager postmulti(1), Postfix-Multi-Instanz-Manager postqueue(1), Steuerung der Postfix-Mail-Warteschlange postsuper(1), Postfix-Verwaltung mailq(1), Sendmail-Kompatibilitätsschnittstelle newaliases(1), Sendmail-Kompatibilitätsschnittstelle sendmail(1), Sendmail-Kompatibilitätsschnittstelle

Postfix-Konfiguration: bounce(5), Vorlagen für Postfix-Bounce-Nachrichten master(5), Postfix-master.cf-Dateisyntax postconf(5), Postfix-main.cf-Dateisyntax postfix-wrapper(5), Postfix-API für mehrere Instanzen

Tabellengesteuerte Mechanismen: access(5), Postfix-SMTP-Zugriffskontrolltabelle aliases(5), Postfix-Alias-Datenbank canonical(5), Umschreiben der Postfix-Eingabeadresse generic(5), Umschreiben der Postfix-Ausgabeadresse header_checks(5), body_checks(5), Postfix-Inhaltsprüfung relocated(5), Benutzer, die umgezogen sind transport(5), Postfix-Routing-Tabelle virtual(5), virtuelles Postfix-Aliasing

Tabellensuchmechanismen: cidr_table(5), CIDR-Muster mit Wert verknüpfen ldap_table(5), Postfix-LDAP-Client lmdb_table(5), Postfix LMDB-Datenbanktreiber memcache_table(5), Postfix-Memcache-Client mysql_table(5), Postfix-MYSQL-Client nisplus_table(5), Postfix-NIS+-Client pcre_table(5), PCRE-Muster mit Wert verknüpfen pgsql_table(5), Postfix-PostgreSQL-Client regexp_table(5), Assoziiere das POSIX-Regular expressionp-Muster mit dem Wert socketmap_table(5), Postfix-Socketmap-Client sqlite_table(5), Postfix-SQLite-Datenbanktreiber tcp_table(5), Postfix-Client-Server-Tabellensuche

Daemon-Prozesse: anvil(8), Postfix-Verbindung/Ratenbegrenzung Bounce(8), Defer(8), Trace(8), Lieferstatusberichte cleanup(8), kanonisieren und Nachricht in die Warteschlange einreihen discard(8), Postfix-Zustellagent verwerfen dnsblog(8), DNS Allow/Denylist Logger error(8), Postfix-Fehlerzustellungsagent flush(8), Postfix schneller ETRN-Dienst local(8), lokaler Zustellungsagent von Postfix master(8), Postfix-Master-Daemon oqmgr(8), alter Postfix-Warteschlangenmanager Pickup(8), Postfix lokale Postabholung pipe(8), E-Mail an Nicht-Postfix-Befehl ausliefern postlogd(8), interner Logging-Dienst von Postfix postscreen(8), Postfix-Zombieblocker proxymap(8), Proxy-Server für Postfix-Nachschlagetabellen qmgr(8), Postfix-Warteschlangenmanager qmqpd(8), Postfix-QMQP-Server scache(8), Cache-Manager für Postfix-Verbindungen showq(8), listet die Postfix-Mail-Warteschlange auf smtp(8), lmtp(8), Postfix SMTP+LMTP-Client smtpd(8), Postfix-SMTP-Server spawn(8), Nicht-Postfix-Server ausführen tlsmgr(8), Postfix-TLS-Cache und Randomness-Manager tlsproxy(8), Postfix-TLS-Proxyserver trivial-rewrite(8), Umschreiben von Postfix-Adressen verify(8), Postfix-Adressverifizierung virtual(8), virtueller Zustellungsagent von Postfix

Sonstiges: syslogd(8), Systemprotokollierung

README FILES

Verwenden Sie "postconf readme_directory" oder "postconf html_directory", um diese Informationen zu finden. ÜBERSICHT, Überblick über Postfix-Befehle und -Prozesse BASIC_CONFIGURATION_README, Postfix-Grundkonfiguration ADDRESS_REWRITING_README, Umschreiben von Postfix-Adressen SMTPD_ACCESS_README, SMTP-Relay/Zugriffskontrolle CONTENT_INSPECTION_README, Postfix-Inhaltsprüfung QSHAPE_README, Postfix-Warteschlangenanalyse

Links

Projekt

Weblinks

Manpage

SYNOPSIS

postfix [-Dv] [-c config_dir] command

DESCRIPTION

This command is reserved for the superuser.

  • To submit mail, use the Postfix sendmail(1) command.

The postfix(1) command controls the operation of the Postfix mail system: start or stop the master(8) daemon, do a health check, and other mainte‐ nance.

By default, the postfix(1) command sets up a standardized environment and runs the postfix-script shell script to do the actual work.

However, when support for multiple Postfix instances is configured, postfix(1) executes the command specified with the multi_instance_wrapper config‐ uration parameter. This command will execute the command for each applicable Postfix instance.

The following commands are implemented:

check Warn about bad directory/file ownership or permissions, and create missing directories.

start Start the Postfix mail system.

  • This also runs the configuration check described above.

start-fg

      Like start, but keep the master(8) daemon running in the foreground, and enable master(8) "init" mode when running as PID 1.  This command re‐
      quires that multi-instance support is disabled (i.e. 
  • the multi_instance_directories parameter value must be empty).
      When running Postfix inside a container, see MAILLOG_README for logging to stdout. 
  • Postfix logs to syslog by default, which requires a) run‐
      ning a syslogd process inside the container, or b) mounting the container host's /dev/log socket inside the container (example: "docker run -v
      /dev/log:/dev/log ..."), and c) a distinct Postfix "syslog_name" prefix that identifies logging from the Postfix instance.

stop Stop the Postfix mail system in an orderly fashion.

  • If possible, running processes are allowed to terminate at their earliest convenience.
      Note: in order to refresh the Postfix mail system after a configuration change, do not use the start and stop commands in succession. 
  • Use the
      reload command instead.

abort Stop the Postfix mail system abruptly.

  • Running processes are signaled to stop immediately.

flush Force delivery: attempt to deliver every message in the deferred mail queue.

  • Normally, attempts to deliver delayed mail happen at regular in‐
      tervals, the interval doubling after each failed attempt.
      Warning: flushing undeliverable mail frequently will result in poor delivery performance of all other mail.

reload Re-read configuration files.

  • Running processes terminate at their earliest convenience.

status Indicate if the Postfix mail system is currently running.

set-permissions [name=value ...]

      Set the ownership and permissions of Postfix related files and directories, as specified in the postfix-files file.
      Specify name=value to override and update specific main.cf configuration parameters. 
  • Use this, for example, to change the mail_owner or set‐
      gid_group setting for an already installed Postfix system.
      This feature is available in Postfix 2.1 and later.  With Postfix 2.0 and earlier, use "$config_directory/post-install set-permissions".

logrotate

      Rotate  the logfile specified with $maillog_file, by appending a time-stamp suffix that is formatted according to $maillog_file_rotate_suffix,
      and by compressing the file with the command specified with $maillog_file_compressor.  This will not rotate /dev/* files.
      This feature is available in Postfix 3.4 and later.

tls subcommand

      Enable opportunistic TLS in the Postfix SMTP client or server, and manage Postfix SMTP server TLS private keys and  certificates.   See  post‐
      fix-tls(1) for documentation.
      This feature is available in Postfix 3.1 and later.

upgrade-configuration [name=value ...]

      Update the main.cf and master.cf files with information that Postfix needs in order to run: add or update services, and add or update configu‐
      ration parameter settings.
      Specify name=value to override and update specific main.cf configuration parameters.
      This feature is available in Postfix 2.1 and later.  With Postfix 2.0 and earlier, use "$config_directory/post-install upgrade-configuration".

The following options are implemented:

-c config_dir

      Read the main.cf and master.cf configuration files in the named directory instead of the default configuration directory.  Use this to distin‐
      guish between multiple Postfix instances on the same host.
      With Postfix 2.6 and later, this option forces the postfix(1) command to operate on the specified Postfix instance only.  This behavior is in‐
      herited by postfix(1) commands that run as a descendant of the current process.

-D (with postfix start only)

      Run each Postfix daemon under control of a debugger as specified via the debugger_command configuration parameter.

-v Enable verbose logging for debugging purposes.

  • Multiple -v options make the software increasingly verbose.

ENVIRONMENT

The postfix(1) command exports the following environment variables before executing the postfix-script file:

MAIL_CONFIG

      This is set when the -c command-line option is present.
      With Postfix 2.6 and later, this environment variable forces the postfix(1) command to operate on the specified Postfix instance  only.   This
      behavior is inherited by postfix(1) commands that run as a descendant of the current process.

MAIL_VERBOSE

      This is set when the -v command-line option is present.

MAIL_DEBUG

      This is set when the -D command-line option is present.

When the internal logging service is enabled (by setting a non-empty maillog_file parameter value) the postfix(1) command exports settings that are used by child processes before they have processed main.cf or command-line settings.

POSTLOG_SERVICE

      The name of the public postlog service endpoint.

POSTLOG_HOSTNAME

      The hostname to prepend to internal logging.

CONFIGURATION PARAMETERS

The following main.cf configuration parameters are exported as environment variables with the same names:

config_directory (see 'postconf -d' output)

      The default location of the Postfix main.cf and master.cf configuration files.

command_directory (see 'postconf -d' output)

      The location of all postfix administrative commands.

daemon_directory (see 'postconf -d' output)

      The directory with Postfix support programs and daemon programs.

html_directory (see 'postconf -d' output)

      The location of Postfix HTML files that describe how to build, configure or operate a specific Postfix subsystem or feature.

mail_owner (postfix)

      The UNIX system account that owns the Postfix queue and most Postfix daemon processes.

mailq_path (see 'postconf -d' output)

      Sendmail compatibility feature that specifies where the Postfix mailq(1) command is installed.

manpage_directory (see 'postconf -d' output)

      Where the Postfix manual pages are installed.

newaliases_path (see 'postconf -d' output)

      Sendmail compatibility feature that specifies the location of the newaliases(1) command.

queue_directory (see 'postconf -d' output)

      The location of the Postfix top-level queue directory.

readme_directory (see 'postconf -d' output)

      The location of Postfix README files that describe how to build, configure or operate a specific Postfix subsystem or feature.

sendmail_path (see 'postconf -d' output)

      A Sendmail compatibility feature that specifies the location of the Postfix sendmail(1) command.

setgid_group (postdrop)

      The group ownership of set-gid Postfix commands and of group-writable Postfix directories.

Available in Postfix version 2.5 and later:

data_directory (see 'postconf -d' output)

      The directory with Postfix-writable data files (for example: caches, pseudo-random numbers).

Available in Postfix version 3.0 and later:

compatibility_level (0)

      A safety net that causes Postfix to run with backwards-compatible default settings after an upgrade to a newer Postfix version.

meta_directory (see 'postconf -d' output)

      The location of non-executable files that are shared among  multiple  Postfix  instances,  such  as  postfix-files,  dynamicmaps.cf,  and  the
      multi-instance template files main.cf.proto and master.cf.proto.

shlib_directory (see 'postconf -d' output)

      The  location  of  Postfix dynamically-linked libraries (libpostfix-*.so), and the default location of Postfix database plugins (postfix-*.so)
      that have a relative pathname in the dynamicmaps.cf file.

Available in Postfix version 3.1 and later:

openssl_path (openssl)

      The location of the OpenSSL command line program openssl(1).

Other configuration parameters:

import_environment (see 'postconf -d' output)

      The list of environment parameters that a privileged Postfix process will import from a non-Postfix parent process, or name=value  environment
      overrides.

syslog_facility (mail)

      The syslog facility of Postfix logging.

syslog_name (see 'postconf -d' output)

      A prefix that is prepended to the process name in syslog records, so that, for example, "smtpd" becomes "prefix/smtpd".

Available in Postfix version 2.6 and later:

multi_instance_directories (empty)

      An  optional  list  of  non-default Postfix configuration directories; these directories belong to additional Postfix instances that share the
      Postfix executable files and documentation with the default Postfix instance, and that are started, stopped, etc., together with  the  default
      Postfix instance.

multi_instance_wrapper (empty)

      The  pathname  of  a multi-instance manager command that the postfix(1) command invokes when the multi_instance_directories parameter value is
      non-empty.

multi_instance_group (empty)

      The optional instance group name of this Postfix instance.

multi_instance_name (empty)

      The optional instance name of this Postfix instance.

multi_instance_enable (no)

      Allow this Postfix instance to be started, stopped, etc., by a multi-instance manager.

Available in Postfix version 3.4 and later:

maillog_file (empty)

      The name of an optional logfile that is written by the Postfix postlogd(8) service.

maillog_file_compressor (gzip)

      The program to run after rotating $maillog_file with "postfix logrotate".

maillog_file_prefixes (/var, /dev/stdout)

      A list of allowed prefixes for a maillog_file value.

maillog_file_rotate_suffix (%Y%m%d-%H%M%S)

      The format of the suffix to append to $maillog_file while rotating the file with "postfix logrotate".

postlog_service_name (postlog)

      The name of the postlogd(8) service entry in master.cf.

FILES

Prior to Postfix version 2.6, all of the following files were in $config_directory.

  • Some files are now in $daemon_directory or $meta_directory so

that they can be shared among multiple instances that run the same Postfix version.

Use the command "postconf config_directory" or "postconf daemon_directory" to expand the names into their actual values.

$config_directory/main.cf, Postfix configuration parameters $config_directory/master.cf, Postfix daemon processes $daemon_directory/postfix-script, administrative commands $daemon_directory/post-install, post-installation configuration $meta_directory/dynamicmaps.cf, plug-in database clients $meta_directory/postfix-files, file/directory permissions

SEE ALSO

Commands: postalias(1), create/update/query alias database postcat(1), examine Postfix queue file postconf(1), Postfix configuration utility postfix(1), Postfix control program postfix-tls(1), Postfix TLS management postkick(1), trigger Postfix daemon postlock(1), Postfix-compatible locking postlog(1), Postfix-compatible logging postmap(1), Postfix lookup table manager postmulti(1), Postfix multi-instance manager postqueue(1), Postfix mail queue control postsuper(1), Postfix housekeeping mailq(1), Sendmail compatibility interface newaliases(1), Sendmail compatibility interface sendmail(1), Sendmail compatibility interface

Postfix configuration: bounce(5), Postfix bounce message templates master(5), Postfix master.cf file syntax postconf(5), Postfix main.cf file syntax postfix-wrapper(5), Postfix multi-instance API

Table-driven mechanisms: access(5), Postfix SMTP access control table aliases(5), Postfix alias database canonical(5), Postfix input address rewriting generic(5), Postfix output address rewriting header_checks(5), body_checks(5), Postfix content inspection relocated(5), Users that have moved transport(5), Postfix routing table virtual(5), Postfix virtual aliasing

Table lookup mechanisms: cidr_table(5), Associate CIDR pattern with value ldap_table(5), Postfix LDAP client lmdb_table(5), Postfix LMDB database driver memcache_table(5), Postfix memcache client mysql_table(5), Postfix MYSQL client nisplus_table(5), Postfix NIS+ client pcre_table(5), Associate PCRE pattern with value pgsql_table(5), Postfix PostgreSQL client regexp_table(5), Associate POSIX regexp pattern with value socketmap_table(5), Postfix socketmap client sqlite_table(5), Postfix SQLite database driver tcp_table(5), Postfix client-server table lookup

Daemon processes: anvil(8), Postfix connection/rate limiting bounce(8), defer(8), trace(8), Delivery status reports cleanup(8), canonicalize and enqueue message discard(8), Postfix discard delivery agent dnsblog(8), DNS allow/denylist logger error(8), Postfix error delivery agent flush(8), Postfix fast ETRN service local(8), Postfix local delivery agent master(8), Postfix master daemon oqmgr(8), old Postfix queue manager pickup(8), Postfix local mail pickup pipe(8), deliver mail to non-Postfix command postlogd(8), Postfix internal logging service postscreen(8), Postfix zombie blocker proxymap(8), Postfix lookup table proxy server qmgr(8), Postfix queue manager qmqpd(8), Postfix QMQP server scache(8), Postfix connection cache manager showq(8), list Postfix mail queue smtp(8), lmtp(8), Postfix SMTP+LMTP client smtpd(8), Postfix SMTP server spawn(8), run non-Postfix server tlsmgr(8), Postfix TLS cache and randomness manager tlsproxy(8), Postfix TLS proxy server trivial-rewrite(8), Postfix address rewriting verify(8), Postfix address verification virtual(8), Postfix virtual delivery agent

Other: syslogd(8), system logging

README FILES

Use "postconf readme_directory" or "postconf html_directory" to locate this information. OVERVIEW, overview of Postfix commands and processes BASIC_CONFIGURATION_README, Postfix basic configuration ADDRESS_REWRITING_README, Postfix address rewriting SMTPD_ACCESS_README, SMTP relay/access control CONTENT_INSPECTION_README, Postfix content inspection QSHAPE_README, Postfix queue analysis