Line 279: |
Line 279: |
| org | | org |
| | | |
− | ====Internal Mail Servers==== | + | ====qpsmtpd==== |
− | SME can be configured as a spam and antivirus filter for one or more "Internal" mail servers on a domain-by-domain basis. The mail server specified does not have to be on the same local network as your SME server. | + | SME uses the [http://smtpd.develooper.com qpsmtpd] smtp daemon. |
| | | |
− | =====Deliver ALL email to a single internal mail server===== | + | =====Official Description===== |
− | You can deliver all email for all domains on your SME server to a single internal mail server by setting the mail server address in server-manager::Configuration::E-mail::Change e-mail delivery settings::Address of internal mail server.
| + | qpsmtpd is a flexible smtpd daemon written in Perl. Apart from the core SMTP features, all functionality is implemented in small "extension plugins" using the easy to use object oriented plugin API. |
| | | |
− | =====Deliver email for one domain to an internal mail server=====
| + | qpsmtpd was originally written as a drop-in qmail-smtpd replacement, but now it also includes smtp forward, postfix, exim and maildir "backends". |
− | You can also configure only a single domain to use an internal mail server, or you can configure different domains to use different internal mail servers.
| |
| | | |
− | First, create the necessary virtual domains using server-manager::Configuration::Domains::Add Domain.
| + | qpsmtpd wiki: http://wiki.qpsmtpd.org |
| | | |
− | Then, (assuming your domain is called ''test.com'' and the actual mail server is at ''a.b.c.d''issue the following commands:
| |
− | db domains setprop test.com MailServer a.b.c.d
| |
− | signal-event email-update
| |
| | | |
| =====Default Plugin Configuration===== | | =====Default Plugin Configuration===== |
− | When configured to deliver email to an internal mail server, SME will use the following [http://wiki.qpsmtpd.org/plugins| qpsmtpd plugins] to evaluate each incoming email: | + | When configured to deliver email to an internal mail server, SME will use the following [http://wiki.qpsmtpd.org/plugins qpsmtpd plugins] to evaluate each incoming email: |
| {| style="color:brown;background-color:#ffffcc;" border="1" cellpadding="5" cellspacing="0" | | {| style="color:brown;background-color:#ffffcc;" border="1" cellpadding="5" cellspacing="0" |
| !Plugin | | !Plugin |
Line 302: |
Line 298: |
| |- | | |- |
| |hosts_allow | | |hosts_allow |
− | |Allow connections from 'allowhosts', Deny connections from 'denyhosts', and limit connections from a single host according to the setting of 'config setprop smtp InstancesPerIP' | + | |Prohibit more than "InstancesPerIP" connections from any single host (change with 'config setprop smtp InstancesPerIP'). Allow or deny connections according to the contents of /var/service/qpsmtpd/config/hosts_allow. See [http://svn.perl.org/qpsmtpd/trunk/plugins/hosts_allow hosts_allow SVN code] for more details. |
− | |??? | + | |[http://bugs.contribs.org/show_bug.cgi?id=3352 upcoming] |
| |- | | |- |
| |peers | | |peers |
Line 315: |
Line 311: |
| |auth/auth_cvm_unix_local | | |auth/auth_cvm_unix_local |
| |Allow authenticated smtp relay | | |Allow authenticated smtp relay |
− | |enabled | + | |enabled (remote)<br>'''disabled (local)''' |
| |- | | |- |
| |check_earlytalker | | |check_earlytalker |
| |reject email from servers that talk out of turn | | |reject email from servers that talk out of turn |
− | |enabled | + | |enabled (remote)<br>'''disabled (local)''' |
| |- | | |- |
| |count_unrecognized_commands | | |count_unrecognized_commands |
| |reject email from servers that issue ''X'' invalid commands | | |reject email from servers that issue ''X'' invalid commands |
− | |enabled | + | |enabled (remote)<br>'''disabled (local)''' |
| |- | | |- |
| |bcc | | |bcc |
Line 339: |
Line 335: |
| |require_resolvable_fromhost | | |require_resolvable_fromhost |
| |Check that the domain listed in the sender's email address is resolvable | | |Check that the domain listed in the sender's email address is resolvable |
− | |enabled | + | |enabled (remote)<br>'''disabled (local)''' |
| |- | | |- |
| |check_basicheaders | | |check_basicheaders |
Line 347: |
Line 343: |
| |rhsbl | | |rhsbl |
| |Reject email if the sender's email domain has a reputation for disregarding smtp RFCs. | | |Reject email if the sender's email domain has a reputation for disregarding smtp RFCs. |
− | |'''disabled''' | + | |'''disabled'''<br>(always disabled for local connections) |
| |- | | |- |
| |dnsbl | | |dnsbl |
Line 370: |
Line 366: |
| |- | | |- |
| |check_smtp_forward | | |check_smtp_forward |
− | |Verify that the specified recipient is valid on the internal mail server. | + | |If ''config show DelegateMailServer'' or ''db domains show <domainname> MailServer'' is set (telling SME to deliver email for all domains or just <domainname> to another server), check_smtp_forward will connect to the specified server and will reject the message outright if the internal mail server would also reject it. |
− | |enabled | + | |'''disabled'''<br>unless an internal mail server is configured. |
| |- | | |- |
| |check_goodrcptto | | |check_goodrcptto |
Line 395: |
Line 391: |
| |spamassassin | | |spamassassin |
| |Check email using spamassassin, and optionally reject it completely if the score exceeds a configurable value. | | |Check email using spamassassin, and optionally reject it completely if the score exceeds a configurable value. |
− | |'''disabled''' | + | |'''disabled'''<br>(always disabled for local connections) |
| |- | | |- |
| |virus/clamav | | |virus/clamav |
Line 406: |
Line 402: |
| |- | | |- |
| |} | | |} |
| + | |
| + | ====Internal Mail Servers==== |
| + | SME can be configured as a spam and antivirus filter for one or more "Internal" mail servers on a domain-by-domain basis. The mail server specified does not have to be on the same local network as your SME server. |
| + | |
| + | =====Deliver ALL email to a single internal mail server===== |
| + | You can deliver all email for all domains on your SME server to a single internal mail server by setting the mail server address in server-manager::Configuration::E-mail::Change e-mail delivery settings::Address of internal mail server. |
| + | |
| + | =====Deliver email for one domain to an internal mail server===== |
| + | You can also configure only a single domain to use an internal mail server, or you can configure different domains to use different internal mail servers. |
| + | |
| + | First, create the necessary virtual domains using server-manager::Configuration::Domains::Add Domain. |
| + | |
| + | Then, (assuming your domain is called ''test.com'' and the actual mail server is at ''a.b.c.d''issue the following commands: |
| + | db domains setprop test.com MailServer a.b.c.d |
| + | signal-event email-update |
| + | |
| | | |
| =====Setup Blacklists & Bayesian Autolearning===== | | =====Setup Blacklists & Bayesian Autolearning===== |