Qmail-control-files
From QmailWiki
I've found that some patches use control files and these aren't well documented. This page is for a central place with the control files meanings.
| Table of contents |
control/badhelo
In general this is meant for checking against the envelope greeting (HELO/EHLO) argument.
qregex (http://www.arda.homeunix.net/store/qmail/) in particular, threats the contents of this control file as regular expressions (one per line). It then attempts a case insensitive matching against the HELO or EHLO string. If a match is made then a 553 permanent error will be issued to the client. Negation is also supported via use of the '!' operator.
Examples:
# Reject spambots using our mailserver's 11.22.33.44 IP as HELO/EHLO ^11\.22\.33\.44$ # Reject spambots using our mailserver's a.mx.ourdomian.tld name as HELO/EHLO ^a\.mx\.ourdomian\.tld$
control/badmailfrom
In general this is meant for checking against the envelope sender string (MAIL) argument.
qregex (http://www.arda.homeunix.net/store/qmail/) in particular, threats the contents of this control file as regular expressions (one per line). It then attempts a case insensitive matching against the envelope sender string, provided it is non-empty (ie bounces are never rejected). If a match is made then a 553 permanent error will be issued to the client at the RCPT stage. Negation is also supported via use of the '!' operator.
Examples:
# Reject senders with @spammer.com addresses @spammer\.com$
control/badmailfromnorelay
In general this is meant for checking against the envelope sender string (MAIL) argument when the RELAYCLIENT environment variable is not set.
qregex (http://www.arda.homeunix.net/store/qmail/) in particular, uses it in the same manner as control/badmailfrom when the RELAYCLIENT environment variable is not set.
Examples:
# Reject senders without '@' !@ # Reject senders spoofing @ourdomain.tld local adresses @ourdomain\.tld$
control/badmailto
In general this is meant for checking against the envelope recipient string (RCPT) arguments.
qregex (http://www.arda.homeunix.net/store/qmail/) in particular, threats the contents of this control file as regular expressions (one per line). It then attempts a case insensitive matching against each envelope recipient string. If a match is made then a 553 permanent error will be issued to the client. Negation is also supported via use of the '!' operator.
Examples:
# Don't accept messages for addresses containing more than one '@' @.+@
control/badmailtonorelay
In general this is meant for checking against the envelope recipient string (RCPT) arguments when the RELAYCLIENT environment variable is not set.
qregex (http://www.arda.homeunix.net/store/qmail/) in particular, uses it in the same manner as control/badmailto, when the RELAYCLIENT environment variable is not set.
Examples:
# Don't accept messages for addresses containing ' ', '!', '%', '#' etc
[ !%#:*^(){}]
# Don't allow outsiders to send messages to our staff@ourdomain.tld list
^staff@ourdomain\.tld$
control/bouncefrom
control/bouncehost
control/clientca.pem
control/clientcert.pem
control/clientcrl.pem
control/concurrencylocal
control/concurrencyremote
control/databytes
control/databytes
control/defaultdomain
control/defaulthost
control/dh1024.pem
control/dh512.pem
control/doublebouncehost
control/doublebounceto
control/envnoathost
control/helohost
control/idhost
control/localiphost
control/locals
control/me
control/morercpthosts
control/percenthack
control/plusdomain
control/qmqpservers
control/queuelifetime
control/rcpthosts
control/rsa512.pem
control/servercert.pem
control/smtpgreeting
control/smtproutes
control/spamt
man file (http://spamthrottle.qmail.ca/man/qmail-spamt.5.html)
example: 192.168.0.0/24:private:2000:120000:::::: 192.168.1.0/24:/24:2000:120000:::::: .
note that the file must end with a single dot!
each line format is: ipblock:dir:st:stmax:flush:rcpt:tg:tg_resp:
- ipblock:
- dir: directory where to store the stats, if two ip have the same dir, they will be thrated as a single user. use /## for making dirs based on the mask
control/spfbehavior
control/spfexp
control/spfguess
control/spfrules
control/timeoutconnect
control/timeoutremote
control/timeoutsmtpd
control/tlsclientciphers
control/tlsclients
control/tlshosts/
control/tlsserverciphers

