Mail-Toaster

 view release on metacpan or  search on metacpan

doc/toaster-watcher.conf.html  view on Meta::CPAN

  qmail_mysql_include = /usr/local/lib/mysql/libmysqlclient.a
  qmail_group         = qmail
  qmail_user_alias    = alias
  qmail_user_daemon   = qmaild
  qmail_user_passwd   = qmailp
  qmail_user_queue    = qmailq
  qmail_user_remote   = qmailr
  qmail_user_send     = qmails


  ######################################
  #           Vpopmail
  ######################################</code></pre>

<p>If you change any of the vpopmail settings after installing vpopmail, you will need to rebuild vpopmail from source to make them take effect. Fortunately, it&#39;s as easy as <code>toaster_setup.pl -s vpopmail</code>. Don&#39;t forget to also rebu...

<pre><code>  vpopmail_user                  = vpopmail
  vpopmail_group                 = vchkpw
  vpopmail_home_dir              = /usr/local/vpopmail
  vpopmail_learn_passwords       = 1</code></pre>

<p>The learn password feature allows you to set a user&#39;s password to be blank. The password will be set to whatever is used the first time the user logs in. Very helpful for migrating domains from other servers, but please consider the security i...

<pre><code>  vpopmail_default_domain        = 0</code></pre>

<p>If you have just one domain you can set it with this option. The default domain users can authenticate with just their user name, and don&#39;t need to use &lt;user&gt;@&lt;virtualdomain&gt;. It is advised to not set this. Should you need to migra...

<pre><code>  vpopmail_roaming_users         = 1
  vpopmail_relay_clear_minutes   = 180</code></pre>

<p>The &quot;roaming users&quot; setting enables POP-before-SMTP and IMAP-before-SMTP authentication. If this is enabled, then relay clear minutes determines how long users can send mail after they&#39;ve checked mail.</p>

<pre><code>  vpopmail_mysql                 = 1</code></pre>

<p>Should Vpopmail use MySQL for authentication? This is highly recommended. Should you ever need to scale your system to more than one CPU, MySQL lets you use replication to split the load among a cluster of servers.</p>

<pre><code>  vpopmail_mysql_limits          = 0</code></pre>

<p>Should Vpopmail use MySQL for limits? This is handy, but it is a relatively new feature of vpopmail. If you are upgrading an existing toaster, you&#39;ll need to copy all of your existing domains into the MySQL limits table before enabling this fe...

<pre><code>  vpopmail_mysql_replication     = 0
  vpopmail_mysql_logging         = 0
  vpopmail_mysql_repl_master     = db.example.com
  vpopmail_mysql_repl_slave      = localhost</code></pre>

<p>Important: If you are not using replication, put in the name of your master database server as BOTH the master and the slave.</p>

<pre><code>  vpopmail_mysql_database        = vpopmail
  vpopmail_mysql_user            = vpopmail
  vpopmail_mysql_pass            = supersecretword</code></pre>

<p>Important: Replace &quot;supersecretword&quot; with the correct password for your database server.</p>

<pre><code>  vpopmail_auth_logging          = 1
  vpopmail_logging               = 1
  vpopmail_logging_verbose       = 1
  vpopmail_valias                = 1
  vpopmail_qmail_ext             = 1
  vpopmail_rebuild_tcpserver_file = 0</code></pre>

<p>By default, vpopmail updates ~vpopmail/etc/tcp.smtp every time a new user is added to the relay table, which is every time a user successfully authenticates. This generates a lot of disk i/o on a busy mail seerver but is necessary for tcpserver to...

<pre><code>  vpopmail_ip_alias_domains      = 0</code></pre>

<p>If IP alias domains is turned on, and the user does not supply a domain as part of their login, then a reverse IP lookup is done on the server IP address that the client connected to. If the servers IP address resolves to a domain name, then vpopm...

<p>IP w.x.y.z resolves to test.com. User sets their pop server ip to w.x.y.z and connects. Vpopmail gets the connection, checks the IP of the SERVER side of the connection. Does a reverse IP lookup and obtains test.com. User sends joe as their pop us...

<p>You can mix and match name and ip based virtual domains. You can also use the vipmap utility to skip the reverse DNS lookup (or if reverse DNS is not set up for the IP address).</p>

<pre><code>  vpopmail_etc_passwd            = 0</code></pre>

<p>This enables local logins-- accounts which are listed in /etc/passwd-- to receive and check mail.</p>

<p>If you enable this feature, you&#39;ll need to add a few lines to /etc/pam.conf to allow courier-imap to work with /etc/passwd accounts. See http://www.inter7.com/courierimap/INSTALL.html for details.</p>

<pre><code>  vpopmail_domain_quotas         = 0
  vpopmail_default_quota         = 100000000S,10000C</code></pre>

<p>The domain quota feature has been broken on vpopmail almost forever. Even when it worked, it introduced extremely high CPU loads on busy mail systems. It is to be avoided.</p>

<p>The default quota option is deprecated in vpopmail 5.4.0 and higher. See ~vpopmail/etc/vlimits.default to control default limits.</p>

<pre><code>  vpopmail_disable_many_domains  = 0

  filtering_spamassassin_method  = site   # site | user | domain</code></pre>

<p>Please see the Toaster FAQ for instructions on enabling per-user and per-domain SpamAssassin preferences.</p>

<pre><code>  filtering_method  = smtp   # smtp | tcpserver</code></pre>

<p>Mail scanners such as qmail-scanner, qscanc, and simscan are run by setting the QMAILQUEUE environment variable. This can be done either in the SMTP service run file (see the qmail_queue setting), or in the tcp.smtp file. &quot;smtp&quot; chooses ...

<p>When set to tcpserver, toaster_watcher.pl ignores: smtpd_qmail_queue, submit_qmail_queue</p>

<pre><code>  filtering_maildrop_filter_file     = /usr/local/etc/mail/mailfilter</code></pre>

<p>The maildrop filter file for your site. You should not changes this setting.</p>

<pre><code>  filtering_report_spam_spamassassin = 1
  filtering_report_spam_pyzor        = 0          # don&#39;t enable this with report_spamassassin</code></pre>

<p>You can have your mail server report spam messages via spamassassin -r or to the pyzor servers. Since the spamassassin reporting includes pyzor, if you choose it, disable pyzor reporting.</p>

<pre><code>  filtering_debug                    = 1</code></pre>

<p>Enable maildrop debugging to be written to /var/log/mail/maildrop.log</p>

<pre><code>  #######################################
  #           qmail-send                #
  #######################################

  send_log_method                = multilog</code></pre>

<p>You have several choices for qmail-send logging:</p>

<dl>

<dt id="syslog---logs-to-syslog-normally-var-log-maillog-on-FreeBSD-.-This-is-generally-not-recommended-but-it-may-be-handy-for-sendmail-refugees"><b>syslog</b> - logs to syslog (normally /var/log/maillog on FreeBSD). This is generally not recommende...
<dd>

</dd>
<dt id="multilog---logs-via-multilog-to-the-location-specified-under-Qmail-Settings.---This-is-required-for-maillogs-RRDutil-and-is-the-recommended-logging-method-for-qmail-and-the-toaster"><b>multilog</b> - logs via multilog to the location specifie...
<dd>

</dd>
<dt id="debug---enables-full-debugging-records-entire-SMTP-converation-and-also-logs-via-multilog"><b>debug</b> - enables full debugging, records entire SMTP converation (and also logs via multilog).</dt>
<dd>

</dd>
<dt id="stats---only-logs-stats-lines-via-multilog"><b>stats</b> - only logs stats lines (via multilog).</dt>
<dd>

</dd>
<dt id="disabled---silently-discards-all-logs"><b>disabled</b> - silently discards all logs</dt>
<dd>

</dd>
</dl>

<pre><code>  send_log_maxsize_bytes         = 1000000</code></pre>

<p>It&#39;s important to make sure maxsize_bytes is larger than 5 minutes of logging. You can determine this by checking the size of the files in /var/log/mail/send. If any approach this file size, raise it. By default, toaster-watcher will trigger m...

<pre><code>  send_log_isoqlog               = 1</code></pre>

<p>This allows you to choose whether your qmail-send logs will be post-processed by isoqlog. This will trigger isoqlog every 5 minutes at which time it&#39;ll update the pretty HTML pages it generates. This is a handy default but if you have a really...

<pre><code>  send_mailbox_string            = ./Maildir/</code></pre>

<p>This allows you to change your default delivery location. Most toasters will not change this. For a good explanation of other qmail delivery options, see http://www.lifewithqmail.org/</p>

<pre><code>  #######################################
  #           qmail-smtpd               #
  #######################################

  smtpd_listen_on_address         = all     # all, a hostname, or IP
  smtpd_listen_on_port            = smtp    # smtp or a port number</code></pre>

<p>On which address and port should the toaster listen for smtp connections?</p>

<p>For the port number, &quot;smtp&quot; means port 25 (as defined by /etc/services).</p>

<pre><code>  smtpd_hostname                  = system</code></pre>

<p>Where should the toaster get the hostname to be reported by the SMTP service?</p>

<p>system - will set to the systems hostname (as set in /etc/rc.conf) qmail - will set to contents of qmail/control/me Anything else is considered to be a hostname.</p>

<pre><code>  # smtpd_hostname [ system | qmail | mail.example.com ]
  #
  #  system - will set to the systems hostname
  #  qmail  - will set to contents of qmail/control/me
  #  other  - anything else is considered to be a hostname
  ##

  smtpd_max_memory_per_connection = 25      # in megabytes
  smtpd_max_connections           = 50
  smtpd_max_memory                = 256</code></pre>

<p>smptd_max_memory_per_connection sets the maximum amount of RAM for any particular SMTP connection (this is enforced by &quot;softlimit&quot;). If you are running clamav, and SpamAssassin, it&#39;s very possible that 25 megabytes per connection may...

<p>If smtpd_max_connections is exceeded, further connections are deferred. (For those familiar with &quot;Life With Qmail&quot;, this replaces the &quot;concurrencyincoming&quot; file).</p>

<p>smtpd_max_memory should be set to smtpd_max_connections multiplied by smtpd_max_memory_per_connection.</p>

<p>Suppose your machine has 1024MB of RAM. It&#39;s primarily a mail exchanger, so you want to allow SMTP processes to use 750MB of your RAM, leaving just a touch over 256MB for other processes. You set your smtpd_max_memory to 750.</p>

<p>To avoid any one particular smtp connection growing out of control, you set smtpd_max_memory_per_connection to 50MB.</p>

<p>You should then set smtpd_max_connections to 15. (15 * 50 = 750).</p>

<p>If you want to accept more than 15 simultaneous connections, you&#39;ll either need to raise smtpd_max_memory, or lower smtpd_max_memory_per_connection.</p>

<p>If you set smtpd_max_memory close to (or higher than) the amount of real RAM in your machine, your server can run out of real RAM and start to swap. It&#39;s quite likely that your machine will slow to a crawl if this happens.</p>

<p>toaster-watcher will warn you (and lower your smtpd_max_connections value) if your smtpd_max_memory is lower than smtpd_max_connections multiplied by smtpd_max_memory_per_connection.</p>

<pre><code>  smtpd_use_mysql_relay_table     = 1</code></pre>

<p>Set this to zero if you are not using the patched version of tcpserver built by the toaster install.</p>

<p>For more information, see http:///mail-toaster.org/patches/tcpserver-mysql.shtml</p>

<pre><code>  smtpd_lookup_tcpremotehost      = 0
  smtpd_lookup_tcpremoteinfo      = 0
  smtpd_dns_paranoia              = 0



( run in 0.575 second using v1.01-cache-2.11-cpan-39bf76dae61 )