diff options
author | Varac <varacanero@zeromail.org> | 2009-12-17 16:37:53 +0100 |
---|---|---|
committer | Varac <varacanero@zeromail.org> | 2009-12-17 16:37:53 +0100 |
commit | 60544a57c9e2d014061d2c2775654918890a648c (patch) | |
tree | 77e9a65cffe8161d77d70ae629afe9a20868058f | |
parent | 8a23f6d5b1022d79432734366e131af6f5d3b46f (diff) | |
download | puppet-postfix-60544a57c9e2d014061d2c2775654918890a648c.tar.gz puppet-postfix-60544a57c9e2d014061d2c2775654918890a648c.tar.bz2 |
added postfix::amavis, no relayhost needed for postfix::mta
-rw-r--r-- | README | 4 | ||||
-rw-r--r-- | manifests/classes/postfix-amavis.pp | 7 | ||||
-rw-r--r-- | manifests/classes/postfix-mta.pp | 6 | ||||
-rw-r--r-- | manifests/classes/postfix.pp | 9 | ||||
-rw-r--r-- | templates/master.cf.debian-etch.erb | 29 |
5 files changed, 51 insertions, 4 deletions
@@ -4,6 +4,10 @@ This module will help install and configure postfix. A couple of classes will preconfigure postfix for common needs. +Config +------ +- set $postfix_amavis="true" to include postfix::amavis + == Example: include postfix diff --git a/manifests/classes/postfix-amavis.pp b/manifests/classes/postfix-amavis.pp new file mode 100644 index 0000000..47ba532 --- /dev/null +++ b/manifests/classes/postfix-amavis.pp @@ -0,0 +1,7 @@ +class postfix::amavis { + include amavisd-new + postfix::config { + "content_filter": value => "smtp-amavis:[localhost]:10024"; } + +} + diff --git a/manifests/classes/postfix-mta.pp b/manifests/classes/postfix-mta.pp index 9046bad..ff94c91 100644 --- a/manifests/classes/postfix-mta.pp +++ b/manifests/classes/postfix-mta.pp @@ -32,9 +32,9 @@ # class postfix::mta { - case $postfix_relayhost { - "": { fail("Required \$postfix_relayhost variable is not defined.") } - } + #case $postfix_relayhost { + # "": { fail("Required \$postfix_relayhost variable is not defined.") } + #} case $postfix_mydestination { "": { $postfix_mydestination = "\$myorigin" } diff --git a/manifests/classes/postfix.pp b/manifests/classes/postfix.pp index 8c4173e..a413664 100644 --- a/manifests/classes/postfix.pp +++ b/manifests/classes/postfix.pp @@ -41,6 +41,13 @@ class postfix { "": { $root_mail_recipient = "nobody" } } + case $postfix_amavis { + "": { $postfix_amavis = "false" } + "true": { include postfix::amavis } + } + + + package { ["postfix", "mailx"]: ensure => installed @@ -81,7 +88,7 @@ class postfix { mode => "0644", content => $operatingsystem ? { Redhat => template("postfix/master.cf.redhat5.erb"), - Debian => template("postfix/master.cf.debian-etch.erb"), + Debian,Ubuntu => template("postfix/master.cf.debian-etch.erb"), }, seltype => $postfix_seltype, notify => Service["postfix"], diff --git a/templates/master.cf.debian-etch.erb b/templates/master.cf.debian-etch.erb index 674682c..aa5f34f 100644 --- a/templates/master.cf.debian-etch.erb +++ b/templates/master.cf.debian-etch.erb @@ -75,3 +75,32 @@ mailman unix - n n - - pipe flags=FR user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py ${nexthop} ${user} + +# Amavis +<% if (postfix_amavis == "true" ) -%> + +## http://www.freespamfilter.org/FC4.html#_Toc110999176 + +smtp-amavis unix - - y - 2 smtp + -o smtp_data_done_timeout=1200 + -o smtp_send_xforward_command=yes + -o disable_dns_lookups=yes + +127.0.0.1:10025 inet n - y - - smtpd + -o content_filter= + -o local_recipient_maps= + -o relay_recipient_maps= + -o smtpd_restriction_classes= + -o smtpd_helo_restrictions= + -o smtpd_sender_restrictions= + -o smtpd_recipient_restrictions=permit_mynetworks,reject + -o mynetworks=127.0.0.0/8 + -o strict_rfc821_envelopes=yes + -o smtpd_error_sleep_time=0 + -o smtpd_soft_error_limit=1001 + -o smtpd_hard_error_limit=1000 + -o receive_override_options=no_header_body_checks +<% else -%> +# Amavis not configured +<% end -%> + |