Home
Features
Modules
Integrations
PowerMTA Docs
MailerQ Docs
Pricing
Blog
D
e
m
o
Home
Features
Modules
Integrations
PowerMTA Docs
MailerQ Docs
Pricing
Blog
D
e
m
o
Home
Features
Modules
Integrations
PowerMTA Docs
MailerQ Docs
Pricing
Blog
Home
Knowledge base
Knowledge base
MailerQ knowledge base
›
Layer
Process file
entries in this theme: 185
cluster-address
critical
Written by the Hub
directive
AMQP address of the broker over which nodes announce themselves and tell each other to re-read settings; defaults to the same broker that carries the mail.
database-address
critical
Written by the Hub
directive
Connection string for the database that holds every runtime setting of the cluster — throttles, DKIM keys, pools, pauses, suppressions, rewrite rules and response patterns.
license
critical
Written by the Hub
directive
Path to the licence file, without which the engine does not run.
rabbitmq-address
critical
Written by the Hub
directive
AMQP address of the broker that carries the mail: host, credentials and virtual host in one string.
rabbitmq-failure
critical
directive
Routing key under which a message that has finally failed is published, with its full attempt history.
rabbitmq-outbox
critical
Written by the Hub
directive
Routing key used when a message is published for sending — and, on a stock configuration, also the name of the queue the engine reads.
rabbitmq-persistent
critical
Written by the Hub
directive
Whether messages are stored on disk by the broker, so that mail in the queue survives a broker crash — off by default, and deliberately so.
rabbitmq-queue
critical
Written by the Hub
directive
Name of the queue MailerQ reads messages from; when it is not set, the engine falls back to the queue named by rabbitmq-outbox.
rabbitmq-success
critical
directive
Routing key under which the result of every successful delivery is published.
send-log
critical
directive
Text log of every delivery attempt — the only record of intermediate attempts, which never reach the result queues.
smtp-auth
critical
Written by the Hub
directive
Where submitted credentials are checked; naming any scheme here makes a login mandatory for every client.
smtp-default-ips
critical
Written by the Hub
directive
List of addresses submitted mail is sent from — and, when set, it replaces the intake mapping rather than backing it up.
smtp-extract
critical
Written by the Hub
directive
Whether
x-mq-*
headers in a submitted message are turned into delivery instructions and stripped before sending.
smtp-ip
critical
Written by the Hub
directive
Semicolon-separated list of local addresses on which mail is accepted — and, by that act, the addresses it will be sent from.
smtp-mappable-ips
critical
Written by the Hub
directive
Ranges of local addresses for which mail submitted on an address is also sent from that address.
smtp-range
critical
Written by the Hub
directive
Address ranges permitted to open an SMTP session; a hard gate applied before anything else in the conversation.
www-auth
critical
Written by the Hub
directive
Where console logins are checked; like the SMTP side, it accepts seven schemes, and like it, the shipped value is a password everyone knows.
www-ip
critical
Written by the Hub
directive
Local addresses the console is served on; the shipped value is every address the machine has.
application-log
important
directive
Where the engine reports its own state: start-up, database and broker connections, configuration reloads, crashes.
cluster-exchange
important
Written by the Hub
directive
Name of the fanout exchange over which nodes announce themselves and control messages travel.
database-ttl
important
Written by the Hub
directive
Seconds between re-reads of the settings database; within that window the engine works entirely from memory and never queries the database per message.
dns-attempts
important
Written by the Hub
directive
How many times a query is retried before the domain counts as unresolvable.
dns-nameserver
important
Written by the Hub
directive
Name servers the engine queries, overriding whatever the system's resolver configuration says.
download-blacklist
important
Written by the Hub
directive
Address ranges the engine refuses to download resources from — the guard against a message template reaching into the local network.
max-attempts
important
Written by the Hub
directive
How many delivery attempts a message may consume before it is given up on.
max-delivertime
important
Written by the Hub
directive
Seconds from acceptance after which a message is abandoned, however many attempts remain.
rabbitmq-consumers
important
Written by the Hub
directive
How many threads read from the consumed queue in parallel.
rabbitmq-declare
important
Written by the Hub
directive
Whether MailerQ declares the queues and exchanges it needs at start-up, or expects them to exist already.
rabbitmq-durable
important
Written by the Hub
directive
Whether queues and exchanges declared by the engine are durable, meaning the broker recreates them after a restart.
rabbitmq-exchange
important
Written by the Hub
directive
Exchange every published message goes to; empty means RabbitMQ's default exchange, where the routing key is simply the queue name.
rabbitmq-inbox
important
Written by the Hub
directive
Where a message accepted by the built-in SMTP server is published; ships pointing at the sending queue, so accepted mail goes straight out.
rabbitmq-qos
important
Written by the Hub
directive
How many messages one consumer thread may hold unacknowledged at a time.
render-enabled
important
Written by the Hub
directive
Whether the console may display fully rendered messages taken from the live stream.
retry-interval
important
Written by the Hub
directive
Comma-separated list of waits between attempts: ten minutes twice, half an hour twice, an hour twice, then two hours.
send-log-format
important
Written by the Hub
directive
Template for each delivery line, with access to any field of the message and of the result, plus conditionals.
server-id
important
Written by the Hub
directive
Number identifying this node, used to keep generated message identifiers unique across a cluster.
smtp-certificate
important
Written by the Hub
directive
Certificate presented for STARTTLS on the intake; without it, neither TLS nor AUTH is offered.
smtp-connections-out
important
Written by the Hub
directive
How many connections to receiving servers the engine may hold open at once, across all domains.
smtp-port
important
Written by the Hub
directive
Port or ports on which mail is accepted, with STARTTLS available if a certificate is configured.
smtp-privatekey
important
Written by the Hub
directive
Private key matching the intake certificate.
www-certificate
important
Written by the Hub
directive
Certificate presented on the console's TLS port.
www-port
important
Written by the Hub
directive
TCP port the management console is served on, without encryption.
www-privatekey
important
Written by the Hub
directive
Private key matching the console certificate.
www-secure-port
important
Written by the Hub
directive
Port on which the console is served over HTTPS instead of plain HTTP.
delayed-durable
directive
Whether the delay-step queues are declared durable.
delayed-queues
directive
Number of delay steps declared at start-up; each step waits twice as long as the one before, so the count decides the longest single wait.
dns-capacity
Written by the Hub
directive
How many DNS operations may be outstanding at once.
dns-interval
Written by the Hub
directive
Seconds before an unanswered query is sent again.
dns-min-ttl
Written by the Hub
directive
Lower bound on cached lifetime: records with a shorter TTL are still kept this long, so that domains publishing very short TTLs cannot force a lookup per message.
dns-rotate
Written by the Hub
directive
Whether queries are distributed across the configured name servers instead of always preferring the first.
dns-timeout
Written by the Hub
directive
Seconds the resolver waits for a reply after its last attempt before giving up.
heartbeat-enabled
directive
Whether the engine periodically reports usage to the vendor; documented as on and as something paid licences may switch off.
lock
Written by the Hub
directive
File holding the process id, used to keep two engines from running at once.
plugin-directory
directive
Directory of shared objects the engine loads at start-up, giving custom C code a place inside the delivery path.
rabbitmq-lazy
Written by the Hub
directive
Declares queues as lazy, so the broker moves messages to disk as they arrive instead of holding them in memory.
rabbitmq-local
Written by the Hub
directive
Where incoming mail addressed to an address listed as local is published, instead of being sent onward.
rabbitmq-maxpriority
Written by the Hub
directive
How many priority levels the consumed queue supports; zero means priorities are not used at all.
rabbitmq-publishers
Written by the Hub
directive
How many threads publish results back to the broker.
rabbitmq-reports
Written by the Hub
directive
Where incoming messages recognised as reports — bounce notifications, DMARC reports — are published.
rabbitmq-retries
directive
Routing key under which a message that failed temporarily is published to wait for its next attempt.
received-log
directive
Text log of messages accepted by the built-in SMTP server.
render-useragent
directive
Restricts the preview module to browsers sending a particular user-agent string, so casual viewing cannot pollute campaign statistics.
smarthost
directive
Hostname of a server every message is handed to, instead of being delivered to the recipient's own mail server.
smtp-check
Written by the Hub
directive
Which validations are run on accepted mail — SPF, DKIM, DMARC and spam scoring.
smtp-connections
Written by the Hub
directive
Upper limit on all SMTP connections the engine holds, incoming and outgoing together.
smtp-connections-in
Written by the Hub
directive
How many clients may be connected to the intake at once.
smtp-hostname
Written by the Hub
directive
Hostname the SMTP server presents in its banner, overriding the system hostname.
smtp-password
directive
Accepted by the binary; the partner of smtp-username, superseded by smtp-auth.
smtp-protection
directive
Whether the intake blocks addresses that behave abusively, such as repeated failed logins.
smtp-sink-address
directive
Redirects the TCP connection of every delivery to one address, while the rest of the engine behaves as though the mail were going to its real destination.
smtp-threads
Written by the Hub
directive
How many threads handle incoming SMTP traffic; each binds its own socket per address.
smtp-unmappable-ips
Written by the Hub
directive
Ranges taken back out of the mappable set — loopback and private addresses by default.
smtp-username
directive
Accepted by the binary; the pre-5.x way of requiring a login, superseded by smtp-auth.
smtp-validate-addresses
directive
How strictly submitted envelope and recipient addresses are checked against the standard.
spool-directory
directive
Directory the engine watches for message files, reading each one and publishing it as a job.
storage-address
directive
Connection string for an external store holding message bodies, so that jobs travelling through the broker carry only a key.
storage-ttl
directive
Seconds a body is kept in the store before it expires.
strict-email-addresses
directive
Whether addresses must conform strictly to the standard; the 5.16 replacement for the documented validate-envelope and validate-recipient.
temporary-expires
directive
Time to live on a temporary queue: after it expires, mail held there because of throttling or a pause goes back to the sending queue.
user
Written by the Hub
directive
System account the engine switches to after binding privileged ports.
www-log
directive
Text log of requests to the management console, including who was logged in.
www-password
directive
Accepted by the binary, printed nowhere, absent from the stock config.
www-samesite
directive
SameSite policy applied to the console's session cookie.
www-url
Written by the Hub
directive
Full URL other cluster members use to link to this node's console; absent from –help but present in the stock config.
cluster-timeout
directive
How long a node waits for other nodes to answer its announcement before it proceeds.
cluster-verify
directive
Whether the broker's TLS certificate is verified when the cluster address uses amqps; turning it off is how self-signed certificates are accepted.
database-validate
directive
Whether the engine verifies that the database schema matches the version it expects before it starts working.
delayed-declare
directive
Whether the delay-step queues are declared by the engine at start-up.
delayed-exchange
directive
Exchange used when publishing a message into a delay step; defaults to the main result exchange.
delayed-lazy
directive
Declares the delay steps as lazy queues, so waiting messages are written to disk.
delayed-replyto
directive
Exchange a delayed message is sent back to when its wait is over.
delayed-routingkey
directive
Routing key used when a message is published into the ladder.
delayed-type
directive
Whether the delay steps are declared as classic or quorum queues.
dns-buffersize
Written by the Hub
directive
Size of the socket buffer used for DNS traffic.
dns-sockets
Written by the Hub
directive
How many sockets the resolver spreads its queries across.
download-bin-log
directive
Compact machine-readable copy of the download log.
download-cache
Written by the Hub
directive
Store for downloaded resources, so the same image is not fetched for every message.
download-log
directive
Text log of resources the engine fetched from the internet while building messages.
download-log-format
directive
Template for download lines; ships as a timestamp and the URL.
download-proxy
directive
Proxy used specifically when fetching resources, separate from the engine's general proxy.
download-ttl
Written by the Hub
directive
Seconds a downloaded resource is served from the cache before being fetched again.
download-user-agent
directive
The user-agent string the engine presents when downloading resources.
download-whitelist
directive
Address ranges resources may be fetched from, to the exclusion of everything else; empty, so no such restriction applies.
dsn-advertise
Written by the Hub
directive
Whether the built-in SMTP server advertises the DSN extension, letting submitting clients request notifications per message.
dsn-notify
Written by the Hub
directive
Default events that produce a delivery status notification: never, on failure, on success, on delay — or a combination.
dsn-ret
Written by the Hub
directive
Whether a notification carries the whole original message or only its headers.
envelope
directive
Sets the return address for a message published from the command line.
extract-recipients
directive
When the binary is used as a command-line utility, take the recipients from the message's own headers instead of the command line.
ignore-dot
directive
Treat end of input, rather than a lone dot, as the end of a message read from standard input.
message-tracing
directive
Turns on detailed tracing of what happens to individual messages.
proxy-server
directive
HTTP or SOCKS proxy used for the engine's own network calls — not for delivering mail.
rabbitmq-dsn
directive
Where MailerQ publishes the bounce notifications it generates itself.
rabbitmq-encoding
Written by the Hub
directive
Whether messages the engine publishes are compressed, and with what.
rabbitmq-flush
directive
How many messages are loaded at once while the engine is draining a queue.
rabbitmq-minqos
directive
The smallest window the engine will shrink to when it reduces prefetch under pressure.
rabbitmq-refused
directive
Where messages the SMTP server refused are published, if they are to be kept at all.
rabbitmq-throttle
directive
How many messages may be written to the broker socket at the same time.
rabbitmq-unroutable
directive
Where a published message goes when the exchange has nowhere to route it.
rabbitmq-verify
directive
Whether the broker's TLS certificate is verified when the address uses amqps.
received-bin-log
directive
Compact machine-readable copy of the intake log.
received-log-format
directive
Template for intake lines, addressing the incoming message JSON directly and guarding the message id with a conditional.
send-bin-log
directive
Compact machine-readable copy of the delivery log.
smarthost-password
directive
Password offered to the smarthost.
smarthost-port
directive
Port used when connecting to the smarthost; falls back to the standard SMTP port.
smarthost-username
directive
Username offered to the smarthost when it requires authentication.
smtp-auth-results
Written by the Hub
directive
Whether the verdicts from smtp-check are recorded in an Authentication-Results header, and for which recipients.
smtp-ciphers
directive
OpenSSL cipher specification for the intake, shipped with a conservative list already in place.
smtp-defaultip
directive
Accepted by the binary; singular variant, undocumented and absent from the stock config.
smtp-defaultips
directive
Accepted by the binary; neither printed by –help nor present in the stock config.
smtp-key
directive
Accepted by the binary; the vendor's documentation uses this name for what –help calls smtp-privatekey.
smtp-maxsize
Written by the Hub
directive
Maximum size of a message the intake will accept, announced to clients in the SMTP greeting.
smtp-proxy
directive
Address ranges whose connections begin with a PROXY header carrying the real client address.
smtp-secure-port
directive
Port where the connection is encrypted from the start, without a STARTTLS upgrade.
smtp-sink-ip
directive
Accepted by the binary; printed nowhere and absent from the stock config.
smtp-sink-password
directive
Password offered to the sink.
smtp-sink-port
directive
Port used when connecting to the sink; documented as 25 when unset.
smtp-sink-username
directive
Username offered to the sink when it demands authentication.
smtp-timeout
directive
Seconds the intake waits for a client to say something before closing the session.
smtp-validate-address
directive
Accepted by the binary; the vendor documents this spelling while the help output prints the plural.
spamassassin-host
directive
Address of a SpamAssassin daemon used to score incoming mail; empty, so no scoring happens.
spamassassin-port
directive
Port of the SpamAssassin daemon; ships with the standard 783.
spool-delay
directive
Seconds a file must sit untouched before it is read, so half-written files are not published.
spool-extract
directive
Whether
x-mq-*
headers in a spooled file are turned into delivery instructions.
spool-fail-directory
directive
Directory that receives spooled files the engine could not parse.
spool-open-files
directive
How many spooled files the engine holds open simultaneously.
spool-remove
directive
Whether a spooled file is deleted once it has been published.
spool-threads
directive
How many threads read and publish spooled files in parallel.
storage-policy
directive
Whether outgoing, incoming, all or no message bodies are placed in the external store.
storage-reschedule
directive
Seconds before a message whose body could not be fetched is tried again.
storage-threads
directive
How many connections to the store the engine keeps for fetching and writing bodies.
storage-timeout
directive
Seconds to wait for the store to return a body before treating the fetch as failed.
temporary-declare
directive
Whether the exchange for temporary queues is declared at start-up.
temporary-durable
directive
Whether the exchange for temporary queues is declared durable.
temporary-exchange
directive
Exchange the engine binds each temporary queue to when it creates one.
temporary-type
directive
Whether temporary queues are declared classic or quorum.
validate-envelope
directive
Accepted by the binary and documented with a default of
strict
, but superseded in this build by strict-email-addresses.
validate-recipient
directive
The recipient-side twin of validate-envelope, in the same superseded state.
www-bin-log
directive
Compact machine-readable copy of the console access log.
www-cache-control
directive
Value sent in the Cache-Control header for the console's static files.
www-ciphers
directive
OpenSSL cipher specification used on the console's TLS port.
www-connections
Written by the Hub
directive
How many HTTP connections the console will hold at once.
www-dir
directive
Directory the console's HTML, JavaScript and translations are served from.
www-host
directive
Hostname this node publishes for cluster console links, when a full URL is not given.
www-log-format
directive
Template for console access lines: client address, timestamp, the account that was authenticated, and the request.
www-management-only
directive
Accepted by the engine, printed nowhere, and with no effect we could observe — recorded as a finding rather than as a setting.
What the console exposes, and how it is protected
critical
Written by the Hub
mechanism
The console can pause sending, rewrite messages, read message bodies and change every limit — and by default it is reachable from anywhere, unencrypted, behind a password it displays to whoever is already inside.
Why mail leaves from the address it arrived on
critical
Written by the Hub
mechanism
Mail handed to the built-in SMTP server goes out from the address it was handed to — unless a default address list is configured, which replaces the rule entirely.
How a setting reaches a running node
critical
Written by the Hub
mechanism
A MailerQ setting lives in the database and reaches a node one of two ways: quietly, when the node's cache expires, or at once, when someone publishes a reload message to the cluster exchange.
How MailerQ waits between attempts
important
mechanism
Retry waiting is done by the broker, not the engine: a message is published into a queue whose messages expire after a fixed time and whose expiry routes them back to the sending queue.
Why the resolver is a delivery concern, not an infrastructure detail
important
Written by the Hub
mechanism
A failed lookup is a permanently failed message, so the resolver a node uses is part of its deliverability, not part of its plumbing.
The template language the log formats share
important
Written by the Hub
mechanism
Log lines are rendered from templates with access to whole objects by path and with conditionals — so a log can carry anything a message or a result contains, including our own fields.
The three limits that end an undelivered message
important
Written by the Hub
mechanism
A message stops being retried when the retry list is exhausted, the attempt count is reached, or the deadline passes — and the shipped values for the three do not line up.
Where queue names come from, and what inherits them
important
Written by the Hub
mechanism
The consumed queue takes its name from rabbitmq-queue, or from rabbitmq-outbox when that is absent — and the entire delay ladder is named after it.
Where held-back mail goes, and why their names matter
important
mechanism
Mail held back by a rate limit, a flood pattern, a pause or greylisting is moved into a queue created on the spot and named after what is holding it.
Traffic a MailerQ node generates that is not mail
mechanism
Besides mail, a node reports usage to the vendor, may send crash reports, and fetches resources referenced by messages — three outbound channels a customer may ask about.
Three places a message body can be, and what each costs
mechanism
A body travels inside the job through the broker, or sits in an external store addressed by a key, or arrives as a file in a watched directory — and each choice moves the bottleneck somewhere else.
purge-database
critical
startup flag
Empties the cluster database and rebuilds an empty schema — every throttle, DKIM key, pool, pause and suppression is gone.
repair-database
critical
Written by the Hub
startup flag
Creates missing tables and brings an existing schema up to the version the binary expects, then exits.
list-ips
startup flag
Prints the local addresses available for sending, then exits.
paused
startup flag
Starts the engine in a paused state — connected and configured, but delivering nothing.
config-file
startup flag
Reads settings from the named file instead of /etc/mailerq/config.txt.
daemon
startup flag
Detaches the process from the terminal.
disable-crash-post
startup flag
Stops crash reports from being sent to the vendor, while still producing them locally.
disable-crash-report
startup flag
Stops the engine from producing a crash report when it dies unexpectedly.
fetch-license
startup flag
Fetches a licence file from the vendor using an identifier, then exits.