qmqpd - Postfix QMQP server
qmqpd [generic Postfix daemon options]
The Postfix QMQP server receives one message per connection. Each message is
piped through the cleanup
(8) daemon, and is placed into the
queue as one single queue file. The program expects to be run
from the master
(8) process manager.
The QMQP server implements one access policy: only explicitly authorized client
hosts are allowed to use the service.
The QMQP server is moderately security-sensitive. It talks to QMQP clients and
to DNS servers on the network. The QMQP server can be run chrooted at fixed
Problems and transactions are logged to syslogd
The QMQP protocol provides only one server reply per message delivery. It is
therefore not possible to reject individual recipients.
The QMQP protocol requires the server to receive the entire message before
replying. If a message is malformed, or if any netstring component is longer
than acceptable, Postfix replies immediately and closes the connection. It is
left up to the client to handle the situation.
Changes to main.cf
are picked up automatically, as qmqpd
processes run for only a limited amount of time. Use the command "
" to speed up a change.
The text below provides only a parameter summary. See postconf
more details including examples.
- content_filter (empty)
- After the message is queued, send the entire message to the
- receive_override_options (empty)
- Enable or disable recipient validation, built-in content
filtering, or address mapping.
Preliminary SMTPUTF8 support is introduced with Postfix 3.0.
- smtputf8_enable (yes)
- Enable preliminary SMTPUTF8 support for the protocols
described in RFC 6531..6533.
- smtputf8_autodetect_classes (sendmail, verify)
- Detect that a message requires SMTPUTF8 support for the
specified mail origin classes.
Available in Postfix version 3.2 and later:
- enable_idna2003_compatibility (no)
- Enable 'transitional' compatibility between IDNA2003 and
IDNA2008, when converting UTF-8 domain names to/from the ASCII form that
is used for DNS lookups.
- line_length_limit (2048)
- Upon input, long lines are chopped up into pieces of at
most this length; upon delivery, long lines are reconstructed.
- hopcount_limit (50)
- The maximal number of Received: message headers that is
allowed in the primary message headers.
- message_size_limit (10240000)
- The maximal size in bytes of a message, including envelope
- qmqpd_timeout (300s)
- The time limit for sending or receiving information over
- debug_peer_level (2)
- The increment in verbose logging level when a remote client
or server matches a pattern in the debug_peer_list parameter.
- debug_peer_list (empty)
- Optional list of remote client or server hostname or
network address patterns that cause the verbose logging level to increase
by the amount specified in $debug_peer_level.
- soft_bounce (no)
- Safety net to keep mail queued that would otherwise be
returned to the sender.
- qmqpd_error_delay (1s)
- How long the Postfix QMQP server will pause before sending
a negative reply to the remote QMQP client.
- config_directory (see 'postconf -d' output)
- The default location of the Postfix main.cf and master.cf
- daemon_timeout (18000s)
- How much time a Postfix daemon process may take to handle a
request before it is terminated by a built-in watchdog timer.
- ipc_timeout (3600s)
- The time limit for sending or receiving information over an
internal communication channel.
- max_idle (100s)
- The maximum amount of time that an idle Postfix daemon
process waits for an incoming connection before terminating
- max_use (100)
- The maximal number of incoming connections that a Postfix
daemon process will service before terminating voluntarily.
- process_id (read-only)
- The process ID of a Postfix command or daemon process.
- process_name (read-only)
- The process name of a Postfix command or daemon
- qmqpd_authorized_clients (empty)
- What remote QMQP clients are allowed to connect to the
Postfix QMQP server port.
- queue_directory (see 'postconf -d' output)
- The location of the Postfix top-level queue directory.
- 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
- verp_delimiter_filter (-=+)
- The characters Postfix accepts as VERP delimiter characters
on the Postfix sendmail(1) command line and in SMTP commands.
Available in Postfix version 2.5 and later:
- qmqpd_client_port_logging (no)
- Enable logging of the remote QMQP client port in addition
to the hostname and IP address.
http://cr.yp.to/proto/qmqp.html, QMQP protocol
cleanup(8), message canonicalization
master(8), process manager
syslogd(8), system logging
Use " postconf readme_directory
" or " postconf
" to locate this information.
QMQP_README, Postfix ezmlm-idx howto.
The Secure Mailer license must be distributed with this software.
The qmqpd service was introduced with Postfix version 1.1.
IBM T.J. Watson Research
P.O. Box 704
Yorktown Heights, NY 10598, USA
111 8th Avenue
New York, NY 10011, USA