-
-
Notifications
You must be signed in to change notification settings - Fork 2
svctool.8
svctool - IndiMail/indimail-mta Service Configuration Tool
svctool [ options ]
svctool is a shell frontend for configuring IndiMail services, configuring IndiMail(7), taking backups of configuration and data. svctool configures all indimail/indimail-mta services to be configured to run under supervise(8). When supervised services are created by svctool, a supervised log service is also created along with the service. The output and errors of all commands, run under supervise, get logged to logs in /var/log/svc directory using multilog(8). supervise(8) itself gets started by svscan(8). You can install svscan(8) to be started automatically, by the system, by using the command
svctool --config=add-boot.
Similarly, you can remove auto start of svscan by using the command
svctool --config=rm-boot.
svctool requires root privilege to run. svctool uses TMPDIR environment variable for operations that require a temporary directory. By default this is /tmp/indimail. You can set your own secure location for this variable.
svctool sources the file /etc/indimail/svctool.cnf for setting passwords used for accessing MySQL. You can set
MYSQL_PASS - password for accessing IndiMail MySQL database
PRIV_PASS - password for MySQL user with admin privileges
ADMIN_PASS - password for MySQL user with shutdown privileges
REPL_PASS - password for MySQL user with replication privileges
If the above file is not present, svctool uses hard coded, installation time defaults in the script. If you change any of the above passwords, you can store them in svctool.cnf. Please ensure that no unprivileged users have read/write access to svctool.cnf. When you run svctool the permissions of these file will be automatically changed for not allowing non-root users to have read/write access.
svctool can be used to dump the entire configuration of indimail on stdout
svctool --servicedir=/service --dumpconfig --cntrldir=/etc/indimail/control
or just the qmail configuration
svctool --servicedir=/service --showctl
svctool can check the status of your indimail installation with the following command
svctool --check-install --servicedir=/service \
--qbase=/var/indimail/queue --qcount=5 --qstart=1
svctool logs its activity to /var/log/svc/svctool.log. svctool can do much more than what is summarized here. In fact, indimail, indimail-mta can be entirely setup by using svctool without requiring any commands to be run manually or files to be edited. The binary installation methods using RPM, debian packages use svctool to configure indimail-mta, indimail. You can find detailed options in the section Services & Environment variable below
svctool primary function is to create supervised services in /service. The location of the service directory is specified by using the --servicedir option, the default being /service.
When you create any service, svctool stores the entire command line invocation wth arguments in /service/name/variables/.options. This allows svctool to recreate entire configuration for a service when you use the --refreshsvc option. Using envdir(8), supervise(8) services can be run with set of environment variables or a set of variables removed from the environment. The environment variables are those needed by applications run by supervise(8). These environment variables are stored as files in /service/name/variables directory. svctool can store all these environment variables set for a service in a single in /service/name/variables/.variables file. This file can be created by running the command
svctool --servicedir=/service --save-variables --force
Once you have saved all environment variables as key=value lines in a file, svctool can restore all environment variables to original state by running the command
svctool --servicedir=/service --restore-all-variables --force
name refers to a supervised service name. See svscan(8), supervise(8).
Usage: svctool [OPTION]
Known values for OPTION are:
--smtp=Port --qbase=queue_path --qcount=N --qstart=I
--servicedir=service_path
[--cntrldir=cntrl_path]
--localip=a --maxdaemons=m --maxperip=i
[--no-multi]
[--qtype=static|dynamic|compat]
[--qmailqueue=qmailq]
[--mysqlhost=mysqlhost --mysqluser=mysqluser --mysqlpass=mysqlpass]
[--persistdb]
[--dnscheck]
[--helofqdn --helocheck]
[--fsync --syncdir]
[--qregex]
[--memory=b]
[--dmemory=c]
[--msgqsize=Q]
[--databytes=d]
[--overquota_mailsize=o]
[--domainlimits]
[--authsmtp --forceauthsmtp --secureauth --enablecram --authall]
[--chkrecipient --chksender --chkrelay --cugmail]
[--masquerade] [--antispoof]
[--routes=smtp|qmtp|static]
[--cname-lookup]
[--setuser-priv]
[--sanitize-env=env_list]
[--min-free=M --skipsend --deliverylimit-count=D --deliverylimit-size=S]
[--rbl=list]
[--content-filter=c]
[--virus-filter=v]
[--qhpsi=q]
[--spamfilter=spamfilter_args]
[--logfilter=logfifo]
[--rejectspam=r --spamexitcode=e --localfilter --remotefilter]
[--paranoid --dmasquerade]
[--remote-authsmtp=b]
[--odmr]
[--starttls]
[--ssl]
[--forcetls]
[--shared-objects=0|1]
[--use-dlmopen=0|1]
[--dkverify=dkim|none]
[--dksign=dkim|none --private_key=private_key]
[--password-cache] [--query-cache]
[--smtp-plugin]
[--setgroups]
[--utf8]
[--hide-host]
[--barelf]
--default-domain=domain
Installs a new queue with a SMTP Listener
m - Concurrency of connections to allow
i - Concurrency of connections to be allowed from a
single ip address
a - IP Address to listen
N - No of Queues
I - Numeral Prefix of first queue (i.e 1 for /var/indimail/queue/queue1)
M - Minimum Disk Space to maintain in queue after which
Temporary error will be returned
b - Max Memory that SMTP can allocate
c - Max Memory that qscheduler can allocate
Q - Max number of bytes in POSIX message queues
d - Max size of email that can be submitted to SMTP or
injected locally
D - Max deliveries allowed per day for a user
S - Max sum total size of mails allowed per day for a user
o - Max size of mails to accept after user is overquota
no-multi - Do not set QMAILQUEUE to qmail-multi
qtype - Set multi-queue as static, dynamic or dynamic in compat mode
qmailq - Path to any qmail-queue compatabile binary
Port - Bind on this port for SMTP
service_path - Path where supervise service will be installed
queue_path - Path where the queues are installed. If this is different from
/var/indimail appropriate links will be created in
/var/indimail
cntrl_path - Path where Qmail control files are stored
domainlimits - Apply Domain Limits configured by vmoddomlimits(1)
chkrecipient - Perform a User Status query before accepting mails
(qmail-smtpd)
chksender - Enforce checks on local user and force authenticaion
(qmail-smtpd)
cugmail - Allow only local valid senders to use SMTP.
antispoof - Turn on antispoofing code
authsmtp - Enable Authenticated SMTP
secureauth - Disable AUTH PLAIN, LOGIN, XOAUTH2 methods over un-encrypted channel
forceauthsmtp - Enforce Authenticated SMTP before accepting MAIL FROM
enablecram - Enable the pw_passwd field of indimail table to be used
for CRAM authenticated smtp methods
authall - Accept mails to both remote & local domains only after
AUTH SMTP or POP/IMAP before SMTP
chkrelay - Accept mails to remote domains only after AUTH SMTP or
POP/IMAP before SMTP (closed relay)
qregex - Use regular expressions for matching entries in
badmailfrom, badrcptto, blackholedsenders, spamignore
relaymailfrom, authdomains, chkrcptdomains,
chksenderdomains
q - Full path to an external virus scanner (like clamdscan)
v - Enable Virus/Attachment scanner. v can have following values
1 - Internal Scanner
2 - Internal + External + Attachment Scan
3 - Internal + Attachment Scan
4 - External + Attachment Scan
5 - External Scanner
6 - Attachment Scan
content-filter - Enable content filtering against regex in bodycheck control
file or the filename given as argument to content-filter
c - Optional filename passed to content-filter argument
spamfilter - Spamfilter program along with arguments
logfifo - Capture additional status message from spamfilter in
qmail-logfifo logfile via logfifo
r - Mails get rejected as spam if exit status of spamfilter
equals the value of spamexitcode. r can have following values
0 - Do not reject SPAM mails
1 - Bounce SPAM Mails.
2 - Blackhole SPAM Mails
e - Exit value of spamfilter that should be treated as spam
localfilter - enable filtering of mails to qmail-local
remotefilter - enable filtering of mails to qmail-remote
routes - Perform SMTPROUTE / QMTPROUTE / static routing
cname-lookup - Perform CNAME lookup for recipient host in qmail-remote
setuser-priv - Set supplementary groups when run qmail-local
env_list - List of env variables to preserve when --sanitize-env
is given
masquerade - Allow user to change Mail From when using authenticated smtp
rbl - Deploy RBL lookups
skipsend - Skip creation of send script
fsync - Sync files and directories when writing files
syncdir - Use BSD style sync semantics for flushing directories
dnscheck - Check if mails can be sent to the sender domain
(domain should have a proper MX record)
helofqdn - Enforce . in the argument to HELO/EHLO
helocheck - Check validity of HELO domain
(domain should have a proper MX record)
b - Authenticated SMTP method to use by qmail-remote (plain, login, cram-md5)
paranoid - Paranoid hostaccess check
dmasquerade - Allow domains to be masqueraded from known IPs
default-domain - default domain name for which this host will handle mails
mysqlhost - MySQL Host having authentication tables
mysqluser - Username for connecting to mysql
mysqlpass - Passwd for connecting to mysql
odmr - Setup SMTP for ODMR (On Demand Mail Relay)
private_key - Path to Private key created by dknewkey
starttls - Advertise STARTTLS capability
forcetls - Force client to issue STARTTLS
ssl - Use SSL encrypted communication
persistdb - Enables qmail-lspawn to have persistent MySQL connection and set
PWSTRUCT environment variable. This eliminates the need for
vdelivermail to make a MySQL connection and hence improves
delivery times.
password-cache - Enable caching of passwords (auth smtp)
query-cache - Enable caching of queries (auth smtp)
shared-objects - Enabled tcpserver plugins, 0 - disabled, 1 - enabled
use-dlmopen - Use dlmopen() instead of dlopen() to load shared objects
smtp-plugin - Enable SMTP Plugin support
setgroups - Add addition supplementary groups
utf8 - Enable Email Address Internationalization Support (SMTPUTF8)
hide-host - Skip host names and IP addresses in received headers
barelf - Convert bare LF into CRLF
--delivery=ident --qbase=queue_path --qcount=N --qstart=I
--servicedir=service_path
[--cntrldir=cntrl_path]
[--no-multi]
[--qtype=static|dynamic|compat]
[--qmailqueue=qmailq]
[--mysqlhost=mysqlhost --mysqluser=mysqluser --mysqlpass=mysqlpass]
[--persistdb]
[--fsync --syncdir]
[--qregex]
[--dmemory=c]
[--msgqsize=Q]
[--overquota_mailsize=o]
[--domainlimits]
[--routes=smtp|qmtp|static]
[--cname-lookup]
[--setuser-priv]
[--sanitize-env=env_list]
[--min-free=M --deliverylimit-count=D --deliverylimit-size=S]
[--logfilter=logfifo]
[--localfilter --remotefilter]
[--dkverify=dkim|none]
[--dksign=dkim|none --private_key=private_key]
[--remote-authsmtp=b]
[--ssl]
[--setgroups]
[--utf8]
[--hide-host]
--default-domain=domain
Installs a new queue with a delivery daemon
N - No of Queues
I - Numeral Prefix of first queue (i.e 1 for /var/indimail/queue/queue1)
M - Minimum Disk Space to maintain in queue after which
Temporary error will be returned
c - Max Memory that qscheduler can allocate
Q - Max number of bytes in POSIX message queues
D - Max deliveries allowed per day for a user
S - Max sum total size of mails allowed per day for a user
o - Max size of mails to accept after user is overquota
no-multi - Do not set QMAILQUEUE to qmail-multi
qtype - Set multi-queue as static, dynamic or dynamic in compat mode
qmailq - Path to any qmail-queue compatabile binary
service_path - Path where supervise service will be installed
queue_path - Path where the queues are installed. If this is different from
/var/indimail appropriate links will be created in
/var/indimail
cntrl_path - Path where Qmail control files are stored
domainlimits - Apply Domain Limits configured by vmoddomlimits(1)
qregex - Use regular expressions for matching entries in
badmailfrom, badrcptto, blackholedsenders, spamignore
relaymailfrom, authdomains, chkrcptdomains,
chksenderdomains
spamfilter - Spamfilter program along with arguments
logfifo - Capture additional status message from spamfilter in
qmail-logfifo logfile via logfifo
r - Mails get rejected as spam if exit status of spamfilter
equals the value of spamexitcode. r can have following values
0 - Do not reject SPAM mails
1 - Bounce SPAM Mails.
2 - Blackhole SPAM Mails
e - Exit value of spamfilter that should be treated as spam
localfilter - enable filtering of mails to qmail-local
remotefilter - enable filtering of mails to qmail-remote
routes - Perform SMTPROUTE / QMTPROUTE / static routing
cname-lookup - Perform CNAME lookup for recipient host in qmail-remote
setuser-priv - Set supplementary groups when run qmail-local
env_list - List of env variables to preserve when --sanitize-env
is given
fsync - Sync files and directories when writing files
syncdir - Use BSD style sync semantics for flushing directories
paranoid - Paranoid hostaccess check
dmasquerade - Allow domains to be masqueraded from known IPs
default-domain - default domain name for which this host will handle mails
mysqlhost - MySQL Host having authentication tables
mysqluser - Username for connecting to mysql
mysqlpass - Passwd for connecting to mysql
private_key - Path to Private key created by dknewkey
persistdb - Enables qmail-lspawn to have persisten MySQL connection and set
PWSTRUCT environment variable. This eliminates the need for
vdelivermail to make a MySQL connection and hence improves
delivery times.
b - Authenticated SMTP method to use by qmail-remote (plain, login, cram-md5)
ssl - Use SSL encrypted communication in qmail-remote
setgroups - Add addition supplementary groups
utf8 - Enable Email Address Internationalization Support (SMTPUTF8)
hide-host - Skip host names and IP addresses in received headers
--slowq --qbase=queue_path
--servicedir=service_path
[--cntrldir=cntrl_path]
[--mysqlhost=mysqlhost --mysqluser=mysqluser --mysqlpass=mysqlpass]
[--persistdb]
[--fsync --syncdir]
[--qregex]
[--dmemory=c]
[--overquota_mailsize=o]
[--domainlimits]
[--routes=smtp|qmtp|static]
[--cname-lookup]
[--setuser-priv]
[--sanitize-env=env_list]
[--min-free=M --deliverylimit-count=D --deliverylimit-size=S]
[--localfilter --remotefilter]
[--dkverify=dkim|none]
[--dksign=dkim|none --private_key=private_key]
[--remote-authsmtp=b]
[--ssl]
[--setgroups]
[--utf8]
[--hide-host]
--default-domain=domain
Installs a new queue with a delivery daemon
M - Minimum Disk Space to maintain in queue after which
Temporary error will be returned
c - Max Memory that slowq-start can allocate
D - Max deliveries allowed per day for a user
S - Max sum total size of mails allowed per day for a user
o - Max size of mails to accept after user is overquota
service_path - Path where supervise service will be installed
queue_path - Path where the queues are installed. If this is different from
/var/indimail appropriate links will be created in
/var/indimail
cntrl_path - Path where Qmail control files are stored
domainlimits - Apply Domain Limits configured by vmoddomlimits(1)
qregex - Use regular expressions for matching entries in
badmailfrom, badrcptto, blackholedsenders, spamignore
relaymailfrom, authdomains, chkrcptdomains,
chksenderdomains
localfilter - enable filtering of mails to qmail-local
remotefilter - enable filtering of mails to qmail-remote
routes - Perform SMTPROUTE / QMTPROUTE / static routing
cname-lookup - Perform CNAME lookup for recipient host in qmail-remote
setuser-priv - Set supplementary groups when run qmail-local
env_list - List of env variables to preserve when --sanitize-env
is given
fsync - Sync files and directories when writing files
syncdir - Use BSD style sync semantics for flushing directories
paranoid - Paranoid hostaccess check
dmasquerade - Allow domains to be masqueraded from known IPs
default-domain - default domain name for which this host will handle mails
mysqlhost - MySQL Host having authentication tables
mysqluser - Username for connecting to mysql
mysqlpass - Passwd for connecting to mysql
private_key - Path to Private key created by dknewkey
persistdb - Enables qmail-lspawn to have persisten MySQL connection and set
PWSTRUCT environment variable. This eliminates the need for
vdelivermail to make a MySQL connection and hence improves
delivery times.
b - Authenticated SMTP method to use by qmail-remote (plain, login, cram-md5)
ssl - Use SSL encrypted communication in qmail-remote
setgroups - Add addition supplementary groups
utf8 - Enable Email Address Internationalization Support (SMTPUTF8)
hide-host - Skip host names and IP addresses in received headers
--queueParam=dir --qbase=queue_path --qcount=N --qstart=I
[--cntrldir=cntrl_path]
[--min-free=M]
[--no-multi]
[--qmailqueue=qmailq]
[--fsync --syncdir]
[--qregex]
[--content-filter=c]
[--virus-filter=v]
[--qhpsi=q]
[--spamfilter=spamfilter_args]
[--logfilter=logfifo]
[--rejectspam=r --spamexitcode=e --localfilter --remotefilter]
[--dkverify=dkim|none]
[--dksign=dkim|none --private_key=private_key]
[--hide-host]
[--death=death]
Installs a new queue without a SMTP Listener
dir - dir where to install queuedef environment variable directory
queue_path - Path where the queues are installed. If this is different from
/var/indimail appropriate links will be created in
/var/indimail
N - No of Queues
I - Numeral Prefix of first queue (i.e 1 for /var/indimail/queue/queue1)
cntrl_path - Path where Qmail control files are stored
M - Minimum Disk Space to maintain in queue after which
Temporary error will be returned
no-multi - Do not set QMAILQUEUE to qmail-multi
qmailq - Path to any qmail-queue compatabile binary
qregex - Use regular expressions for matching entries in
badmailfrom, badrcptto, blackholedsenders, spamignore
relaymailfrom, authdomains, chkrcptdomains
chksenderdomains
q - Full path to an external virus scanner (like clamdscan)
v - Enable Virus/Attachment scanner. v can have following values
1 - Internal Scanner
2 - Internal + External + Attachment Scan
3 - Internal + Attachment Scan
4 - External + Attachment Scan
5 - External Scanner
6 - Attachment Scan
content-filter - Enable content filtering against regex in bodycheck control
file or the filename given as argument to content-filter
c - Optional filename passed to content-filter argument
spamfilter - Spamfilter program along with arguments
logfifo - Capture additional status message from spamfilter in
qmail-logfifo logfile via logfifo
r - Mails get rejected as spam if exit status of spamfilter
equals the value of spamexitcode. r can have following values
0 - Do not reject SPAM mails
1 - Bounce SPAM Mails.
2 - Blackhole SPAM Mails
e - Exit value of spamfilter that should be treated as spam
fsync - Sync files and directories when writing files
syncdir - Use BSD style sync semantics for flushing directories
private_key - Path to Private key created by dknewkey
hide-host - Skip host names and IP addresses in received headers
death - Value in seconds maximum time qmail-queue will run after
which it will self terminate
--greylist=port --min-resend-min=m --resend-win-hr=g --timeout-days=t
--context-file=f --save_interval=s --whitelist=w --hash-size=s
--localip=a --use-greydaemon --servicedir=service_path
Installs a new Greylist Daemon
a - IP Address to listen
Port - Bind on this port for qmail-greyd
service_path - Path where supervise service will be installed
m - Minimum resend time after which mail will be accepted
g - Window in which mail must be seen
t - Max period for a mail to be received after which IP will be removed
from whitelist
s - Size of hash table (0 to disable hashing)
context_file - File in which context information is saved for startup
save_interval - Time interval in which context file gets saved
whitelist - List of whitelisted IP
use-greydaemon - Use John Levine's greydaemon
--tlsa=port --timeout-days=t --context-file=f --save_interval=s --whitelist=w
--hash-size=s --localip=a --servicedir=service_path
Installs a new qmail-daned TLSA verification Daemon
a - IP Address to listen
Port - Bind on this port for qmail-greyd
service_path - Path where supervise service will be installed
t - Max period for a mail to be received after which IP will be removed
from whitelist
s - Size of hash table (0 to disable hashing)
context_file - File in which context information is saved for startup
save_interval - Time interval in which context file gets saved
whitelist - List of whitelisted IP
--qmtp=Port --qbase=queue_path --qcount=N --qstart=I
--servicedir=service_path
[--cntrldir=cntrl_path]
--localip=a --maxdaemons=m --maxperip=i
[--fsync --syncdir]
[--memory=b --min-free=M]
[--databytes=d]
[--qhpsi=q]
[--spamfilter=spamfilter_args]
[--logfilter=logfifo]
[--rejectspam=r --spamexitcode=e]
[--dkverify=dkim|none]
[--dksign=dkim|none --private_key=private_key]
Installs a new queue with a QMTP Listener
m - Concurrency of connections to allow
i - Concurrency of connections to be allowed from a
single ip address
a - IP Address to listen
N - No of Queues
I - Numeral Prefix of first queue (i.e 1 for /var/indimail/queue/queue1)
M - Minimum Disk Space to maintain in queue after which
Temporary error will be returned
b - Max Memory that QMTP can allocate
d - Max size of email that can be submitted to SMTP or
injected locally
Port - Bind on this port for QMTP
service_path - Path where supervise service will be installed
queue_path - Path where the queues are installed. If this is different from
/var/indimail appropriate links will be created in
/var/indimail
cntrl_path - Path where Qmail control files are stored
fsync - Sync files and directories when writing files
syncdir - Use BSD style sync semantics for flushing directories
q - Full path to an external virus scanner (like clamdscan)
spamfilter - Spamfilter program along with arguments
logfifo - Capture additional status message from spamfilter in
qmail-logfifo logfile via logfifo
r - Mails get rejected as spam if exit status of spamfilter
equals the value of spamexitcode. r can have following values
0 - Do not reject SPAM mails
1 - Bounce SPAM Mails.
2 - Blackhole SPAM Mails
e - Exit value of spamfilter that should be treated as spam
private_key - Path to Private key created by dknewkey
--qmqp=Port --qbase=queue_path --qcount=N --qstart=I
--servicedir=service_path
[--cntrldir=cntrl_path]
--localip=a --maxdaemons=m --maxperip=i
[--fsync --syncdir]
[--memory=b --min-free=M]
[--qhpsi=q]
[--spamfilter=spamfilter_args]
[--logfilter=logfifo]
[--rejectspam=r --spamexitcode=e]
[--dkverify=dkim|none]
[--dksign=dkim|none --private_key=private_key]
Installs a new queue with a QMQP Listener
m - Concurrency of connections to allow
i - Concurrency of connections to be allowed from a
single ip address
a - IP Address to listen
N - No of Queues
I - Numeral Prefix of first queue (i.e 1 for /var/indimail/queue/queue1)
M - Minimum Disk Space to maintain in queue after which
Temporary error will be returned
b - Max Memory that QMTP can allocate
Port - Bind on this port for QMTP
service_path - Path where supervise service will be installed
queue_path - Path where the queues are installed. If this is different from
/var/indimail appropriate links will be created in
/var/indimail
cntrl_path - Path where Qmail control files are stored
fsync - Sync files and directories when writing files
syncdir - Use BSD style sync semantics for flushing directories
q - Full path to an external virus scanner (like clamdscan)
spamfilter - Spamfilter program along with arguments
logfifo - Capture additional status message from spamfilter in
qmail-logfifo logfile via logfifo
r - Mails get rejected as spam if exit status of spamfilter
equals the value of spamexitcode. r can have following values
0 - Do not reject SPAM mails
1 - Bounce SPAM Mails.
2 - Blackhole SPAM Mails
e - Exit value of spamfilter that should be treated as spam
private_key - Path to Private key created by dknewkey
--imap=Port --servicedir=service_path
--localip=a --maxdaemons=m --maxperip=i
--default-domain=domain
--certdir=certdir
[--domainlimits --nolastauth]
[--proxy=destport]
[--infifo=fifo_path]
[--legacyserver]
[--postmaster=user[@domain]]
[--query-cache]
[--ssl|--tlsprog|--starttls]
Installs a new IMAP4 Listner
Port - Bind on this port for IMAP
service_path - Path where supervise service will be installed
certdir - Path for openssl server certificates
domainlimits - Apply Domain Limits configured by vmoddomlimits(1)
nolastauth - Do not update lastauth
proxy - Install as a proxy and connect to actual imap on destport
legacyserver - To be set if destination IMAP server is not Indimail's IMAP server
fifo_path - Install fifo specified by this path
(e.g. /var/indimail/inquery/infifo)
postmaster - name of the user who will be the contact for Certificates.
common_name - Common Name (CN) for server
query-cache - Enable caching of queries
tlsprog - External progam to enable TLS session
starttls - Advertise STARTTLS capability
ssl - Use SSL encrypted communication
m - Concurrency of connections to allow
i - Concurrency of connections to be allowed from a
single ip address
a - IP Address to listen
domain - default domain name for which this host will handle mails
--pop3=Port --servicedir=service_path
--localip=a --maxdaemons=m --maxperip=i
--default-domain=domain
--certdir=certdir
[--domainlimits --nolastauth]
[--proxy=destport]
[--legacyserver]
[--postmaster=user[@domain]]
[--common_name=CN]
[--query-cache]
[--ssl|--tlsprog|--starttls]
Installs a new POP3 Listner
Port - Bind on this port for POP3
service_path - Path where supervise service will be installed
certdir - Path for openssl server certificates
domainlimits - Apply Domain Limits configured by vmoddomlimits(1)
nolastauth - Do not update lastauth
proxy - Install as a proxy
legacyserver - To be set if destination POP3 server is not Indimail's POP3 server
postmaster - name of the user who will be the contact for Certificates.
common_name - Common Name (CN) for server
query-cache - Enable caching of queries
tlsprog - External progam to enable TLS session
starttls - Advertise STARTTLS capability
ssl - Use SSL encrypted communication
m - Concurrency of connections to allow
i - Concurrency of connections to be allowed from a
single ip address
a - IP Address to listen
domain - default domain name for which this host will handle mails
--inlookup=fifo_path --threads=N
--servicedir=service_path
--domainlimits
[--activeDays=A]
[--use-btree]
[--max-btree-count=max_nodes]
[--routes=smtp|qmtp|static]
[--cntrldir=cntrl_path]
[--password-cache] [--query-cache]
Installs a new Fifo Server
fifo_path - Install fifo specified by this path
(e.g. /var/indimail/inquery/infifo)
N - No of parallel inlookup threads to spawn
A - Max days for which a user has been active
service_path - Path where supervise service will be installed
cntrl_path - Path where Qmail control files are stored
domainlimits - Apply Domain Limits configured by vmoddomlimits(1)
use-btree - Use Binary Tree algorithm to search for User records
max_nodes - Maximum number of Binary Nodes to allow
password-cache - Enable caching of passwords
query-cache - Enable caching of queries
routes - Perform SMTPROUTE / QMTPROUTE / static routing
--pwdlookup=socket_path --threads=N --timeout=t
[--mysqlhost=mysqlhost --mysqluser=mysqluser --mysqlpass=mysqlpass]
[--mysqlport=port | --mysqlsocket=socket]
--servicedir=service_path
Installs a new Name Service Password Lookup Daemon
socket_path - Use socket_path as communication between
NSS clients and NSS Password Lookup server
N - No of parallel pwdlookup threads to spawn
t - Timeout wait for new Password Request
mysqlhost - MySQL Host having authentication tables
mysqluser - Username for connecting to mysql
mysqlpass - Passwd for connecting to mysql
mysqlport - Port for connecting to mysql
mysqlsocket - Unix Domain Socket for connecting to mysql
service_path - Path where supervise service will be installed
--indisrvr=Port --mysqlhost=mysqlhost --mysqluser=mysqluser --mysqlpass=mysqlpass
--localip=a --maxdaemons=m --maxperip=i
--domainlimits
--avguserquota=quota --hardquota=quota
--base_path=path --servicedir=service_path
Installs a new Indi Admin Server
Port - TCP/IP port on which to bind
mysqlhost - MySQL Host having authentication tables
mysqluser - Username for connecting to mysql
mysqlpass - Passwd for connecting to mysql
avguserquota - Average Usage per user in Bytes
hardqutoa - Max Quota for a user
base_path - Default Filesystem Path for user mailbox creation
m - Concurrency of connections to allow
i - Concurrency of connections to be allowed from a
single ip address
a - IP Address to listen
service_path - Path where supervise service will be installed
domainlimits - Apply Domain Limits configured by vmoddomlimits(1)
--mysql=mysqlport --mysqlPrefix=mysqlPrefix --databasedir=databasedir
--config=conf_file --servicedir=service_path
[--mysqlsocket=socket]
[--default-domain=domain]
Installs a new MySQL Server
mysqlport - Install MySQL to listen on this port
mysqlPrefix - Installation Prefix for mysql
databasedir - Directory containing the Database and Logs
mysqlsocket - Unix Domain Socket for connecting to mysql
config - MySQL Configuration file (e.g. /etc/indimail/indimail.cnf)
service_path - Path where supervise service will be installed
default-domain - default domain name for which this host will handle mails
--fetchmail --qbase=queue_path --qcount=N --qstart=I --servicedir=service_path
[--cntrldir=cntrl_path]
--default-domain=domain
[--silent]
[--fsync --syncdir]
[--domainlimits]
[--memory=b --min-free=M]
[--spamfilter=spamfilter_args]
[--logfilter=logfifo]
[--rejectspam=r --spamexitcode=e]
[--qhpsi=q]
[--dkverify=dkim|none]
Install Fetchmail Server
queue_path - Path where the queues are installed. If this is different from
/var/indimail appropriate links will be created in
/var/indimail
N - No of Queues
I - Numeral Prefix of first queue (i.e 1 for /var/indimail/queue/queue1)
M - Minimum Disk Space to maintain in queue after which
Temporary error will be returned
b - Max Memory that Fetchmail can allocate
service_path - Path where supervise service will be installed
cntrl_path - Path where Qmail control files are stored
fsync - Sync files and directories when writing files
syncdir - Use BSD style sync semantics for flushing directories
silent - Display minimal output on stdout
domainlimits - Apply Domain Limits configured by vmoddomlimits(1)
q - Full path to an external virus scanner (like clamdscan)
spamfilter - Spamfilter program along with arguments
logfifo - Capture additional status message from spamfilter in
qmail-logfifo logfile via logfifo
r - Mails get rejected as spam if exit status of spamfilter
equals the value of spamexitcode. r can have following values
0 - Do not reject SPAM mails
1 - Bounce SPAM Mails.
2 - Blackhole SPAM Mails
e - Exit value of spamfilter that should be treated as spam
default-domain - default domain name for which this host will handle mails
silent - be less verbose
--qscanq --servicedir=service_path [--scanint=n]
service_path - Path where supervise service will be installed
n - Scan interval for Virus scanning
--clamd --servicedir=service_path --clamdPrefix=clamdPrefix
[--sysconfdir=sysconfdir]
service_path - Path where supervise service will be installed
clamdPrefix - Installation Prefix for clamd
sysconfdir - Path for config files (scan.conf)
--poppass=Port --localip=a --setpassword=cmd --maxdaemons=m --maxperip=i
--servicedir=service_path
[--memory=b]
[--certfile=certificate --ssl]
Port - TCP/IP port on which to bind
m - Concurrency of connections to allow
i - Concurrency of connections to be allowed from a
single ip address
b - Max Memory to allocate for poppassd
a - IP Address to listen
cmd - Path of a setpassword compatible program
certficate - Path to openssl certificate
ssl - Use SSL encrypted communication
service_path - Path where supervise service will be installed
Installs a new IndiMail poppassd Server
--udplogger=udp_port --servicedir=service_path --localip=1 --timeout=t
Port - UDP/IP port on which to bind
a - IP Address to listen
t - Timeout for reads
service_path - Path where supervise service will be installed
--fifologger=fifo_path --servicedir=service_path
fifo_path - Path to a writeable fifo which can be used by
any application to log messages to qmail-logfifo
service
service_path - Path where supervise service will be installed
--svscanlog --servicedir=service_path [--initcmd=cmmd --scanint=n --resolvconf]
service_path - Path where supervise service will be installed
cmmd - Program/Script to run instead of .svscan/run
n - Scan interval for svscan command
--resolvconf - mount /etc/indimail/resolv.conf as /etc/resolv.conf
Use if you have dnscache installed in $servicedir/dnscache
--unshare
use unshare to mount private /etc/resolv.conf for using local dns
--mrtg=htmldir --servicedir=service_path [--scanint=n]
htmldir - Path in /var/www/html directory
service_path - Path where supervise service will be installed
n - Scan interval for mrtg command
--down
Create any of the above supervisor services in down state
--showctl=DIR || --showctl
Shows Qmail Control Information for Control Directory at DIR or /etc/indimail
--dumpconfig --servicedir=service_path --cntrldir=cntrl_path
Dumps all service configuration for Supervise Scripts, control files and software information
service_path - Path where supervise service will be installed
cntrl_path - Path where Qmail control files are stored
--queuefix=queue_path
Fix Qmail Queue where queue_path is the absolute path of a queue
--rmsvc=service_path
Disable supervise for service
service_path - Full path of service
e.g. (/service/qmail-smtpd.25)
(give multiple services enclosed in double quotes)
"/service/qmail-smtpd.25 /service/qmail-imapd.143"
--ensvc=service_path
Enable supervise for service
service_path - Full path of service
e.g. (/service/qmail-smtpd.25)
(give multiple services enclosed in double quotes)
"/service/qmail-smtpd.25 /service/qmail-imapd.143"
--refreshsvc=service_path
[--run-file-only] [--force]
Refresh run script and variables for a supervise service
service_path - Full path of service
e.g. (/service/qmail-smtpd.25)
(give multiple services enclosed in double quotes)
"/service/qmail-smtpd.25 /service/qmail-imapd.143"
service_path can be "all" to act on all services
run-file-only - Recreate run files but not variables
force - Recreate service even if it has norefreshsvc flag
NOTE: if the file .norefreshsvc is present in the variable or the config
directory, refresh is skipped
--autorefresh="0|1 service_path"
Disable/Enable auto refresh of supervise scripts for service
0 - Disable autorefresh (create .norefreshsvc in variables directory)
1 - Enable autorefresh (delete .norefreshsvc in variables directory)
service_path - name of service with full path
e.g. (/service/qmail-smtpd.25)
service_path can be "all" to act on all services
--enable-service name1 name2 ..
Add a service to be started at system boot. The unit file for the service should exist
name1 name2 .. - name of a service or list of services to be added
This should be a SYSV style service, systemd, event.d unit file
--disable-service name1 name2 ..
Remove a service to be started at system boot. The unit file for the service should exist
name1 name2 .. - name of a service or list of services to be removed
This should be a SYSV style service, systemd, event.d unit file
--set-variable=n --variable-value=v
--servicedir=service_path
--service-name=service_name
[--force]
Set a new variable for a supervise service
n - variable name
v - variable value
service_path - Path where supervise service will be installed
service_name - Service name
force - Overwrite variable if it exists
--modify-variable=n --variable-value=v
--servicedir=service_path
--service-name=service_name
[--force]
Modify an existing variable for a supervise service
n - variable name
v - variable value
service_path - Path where supervise service will be installed
service_name - Service name
force - Set the variable even if does not exist
--unset-variable=n
--servicedir=service_path
--service-name=service_name
Unset any existing environment variable named 'n'
n - variable name
service_name - Service name
--remove-variable=n
--servicedir=service_path
--service-name=service_name
Remove an existing variable for a supervise service
n - variable name
service_path - Path where supervise service will be installed
service_name - Service name
--restore-variables
--servicedir=service_path
--service-name=service_name
Clean and Restore all variables to original state from
servicedir/service_name/variables/.variables file
service_path - Path where supervise service will be installed
service_name - name of supervise service without path
e.g. (qmail-smtpd.25)
--import-variables=file
--servicedir=service_path
--service-name=service_name
[--force] [--silent]
Import new environment variables from a file having one more multiple
key=value pairs
file - File from which to import key=value environment variables
service_path - Path where supervise service will be installed
service_name - name of supervise service without path
e.g. (qmail-smtpd.25)
force - Set the variable if variable already exists
silent - be less verbose
--export-variables=file
--servicedir=service_path
--service-name=service_name
[--force]
Export existing environment variables to a file
file - File in which to save key=value environment variables
service_path - Path where supervise service will be installed
service_name - name of supervise service without path
e.g. (qmail-smtpd.25)
force - overwrite service_path/service_name/variables/.variables
--save-variables
--servicedir=service_path
Export variables for all service in /service and
/etc/indimail/control/defaultqueue
service_path - Path where supervise service will be installed
--restore-all-variables
--servicedir=service_path
Restore all variables to orignal state for all service in
/service and /etc/indimail/control/defaultqueue
service_path - Path where supervise service will be installed
--print-variables
--servicedir=service_path
--service-name=service_name | --envdir=dir
Print environment variables for a service
service_path - Path where supervise service will be installed
service_name - name of supervise service without path
e.g. (qmail-smtpd.25)
dir - Environment variables directory
--print-all-variables
--servicedir=service_path
Print environment variables all services
service_path - Path where supervise service will be installed
--config=mysql|ssl_rsa|mysqldb|qmail|users|rmusers|nssd
--config=snmpdconf|clamd|foxhole|bogofilter|cert|add-boot|rm-boot
--config=add-alt|remove-alt|selinux|qselinux|iselinux|inittab|recontrol
[--postmaster=user[@domain]]
[--common_name=CN]
[--validity_days=days]
[--certdir=certdir]
[--update-certs]
[--capath=ca_path_dir]
[--servicedir=service_path]
[--default-domain=domain]
[--mysqlPrefix=mysqlPrefix]
[--mysqlhost=mysqlhost --mysqluser=mysqluser --mysqlpass=mysqlpass]
[--mysqlport=port | --mysqlsocket=socket]
[--cntrldir=cntrl_path]
[--sysconfdir=sysconfdir]
[--databasedir=databasedir]
[--use-grant]
[--module=module]
[--stdout]
[--wipe]
mysql - Create /etc/indimail/indimail.cnf
mysqldb - Create an initidalized MySQL db for IndiMail
ssl_rsa - Create SSL/TLS Certs for MariaDB
qmail - Create default qmail control files
users - Create Internal System Users used by IndiMail
rmusers - Remove Internal System Users used by IndiMail
snmpdconf - create v2 /etc/snmpd/snmpd.conf
nssd - create /etc/indimail/nssd.conf
clamd - Create clamd configuration file
bogofilter - Create bogofilter.cf configuration file
cert - Generate SSL Certificate
add-boot - Add startup scripts for IndiMail to get started during boot
rm-boot - Remove Startup scripts to prevent IndiMail to get started after boot
add-alt - Install indiamil as default MTA
remove-alt - Remove indimail as the default MTA
selinux - create selinux module from /etc/indimail/module.te
iselinux - Enable selinux module for indimail
qselinux - Enable selinux module for indimail-mta
inittab - Install svscan started by configuration in /etc/inittab
recontrol - Update control files having domain name configured with a
new domain
postmaster - name of the user who will recieve bounces on the local host.
This can also be a remote user i.e. &[email protected]
common_name - Common Name (CN) for server
days - Number of days for which the Certificate should be valid
cntrl_path - Path where Qmail control files are stored
sysconfdir - Path for config files
certdir - Directory in which new certificates will be placed
update-certs - Update CERTDIR, CERTFILE and TLSCACHE for services using them
ca_path_dir - Directory having CA certificate
service_path - Path where supervise service have been installed
default-domain - default domain name for which this host will handle mails
mysqlPrefix - Installation Prefix for mysql
mysqlhost - MySQL Host having authentication tables
mysqluser - Username for connecting to mysql
mysqlpass - Passwd for connecting to mysql
mysqlport - Port for connecting to mysql
mysqlsocket - Unix Domain Socket for connecting to mysql
databasedir - Directory containing the Database and Logs
use-grant - Use the usual create user and grant statements for creating users
(implies --stdout)
stdout - Dump on the screen. Will not create a configuration
wipe - will wipe out users/assign (for config=qmail)
--check-install --servicedir=service_path --qbase=queue_path --qcount=N --qstart=I
[--skip-sendmail]
service_path - Path where supervise service have been installed
queue_path - Path where the queues are installed.
N - No of Queues
I - Numeral Prefix of first queue (i.e 1 for /var/indimail/queue/queue1)
skip-sendmail - Skip Checking sendmail paths in /usr/sbin and /usr/lib
--check-certs=[full path of certificate]
Check certificate given as argument or
Check IndiMail Certificates in /etc/indimail/certs without any arguments
--backup=backupdir --servicedir=service_path --mysqlPrefix=mysqlPrefix
mysqlPrefix - Installation Prefix for mysql
backupdir - Directory to dump backup
--repair-tables
Repair MySQL tables in /var/indimail/mysqldb/data
--mysqlupgrade --mysqlPrefix=mysqlPrefix
mysqlPrefix - Installation Prefix for mysql
--fixsharedlibs
fix mysql shared library in /etc/indimail/control/libmysql
--report=all| zddist| zdeferrals| zfailures| zoverall| zrecipients| zrhosts|
zrxdelay| zsenders| zsendmail| zsuccesses| zsuids | zsmtp | zspam
[--postmaster=user[@domain]]
[--attach]
[--logdir=multilog_base_dir]
postmaster - name of the user who will recieve the report.
attach - zip and send the report as an attachment
--help
display this help and exit
--version
output version information
Global Directory Options
--cntrldir - sets directory for indimail/qmail control files
--indimaildir - sets base directory for mysqldb, domains, clamd, inquery
directory
--qmaildir - sets base directory for alias, autoturn, qscanq, queue
directory
svctool returns non-zero status on error.
create_services(8), IndiMail(7) initsvc(1), svscan(8), svstat(8), svc(8), supervise(8), multilog(8), indimail-services(7), qmail-showctl(8), drwxrwxr-x 5 root indimail 4096 Mar 16 23:47 domains drwxrwx--- 2 indimail qmail 4096 Mar 17 07:31 inquery drwxr-xr-x. 4 mysql mysql 4096 Dec 6 20:44 mysqldb drwxr-x--- 3 qscand qscand 4096 Mar 14 12:03 qscanq drwxr-xr-x. 20 root qmail 4096 Mar 14 12:03 queue