exim: ship new {two,three}-level-tlds files for exim_surbl.pl
[mirror/dsa-puppet.git] / modules / exim / manifests / mx.pp
index c1b4fdb..3a30975 100644 (file)
@@ -1,26 +1,40 @@
-class exim::mx inherits exim {
-       include clamav
-       include postgrey
+# our heavy exim class
+# @param is_mailrelay this system is a mailrelay, both in and out, for debian hosts
+class exim::mx(
+  Boolean $is_mailrelay = false,
+){
+  class { 'exim':
+    use_smarthost => false,
+    is_mailrelay  => $is_mailrelay,
+  }
 
-       file { '/etc/exim4/ccTLD.txt':
-               source => 'puppet:///modules/exim/common/ccTLD.txt',
-       }
-       file { '/etc/exim4/surbl_whitelist.txt':
-               source => 'puppet:///modules/exim/common/surbl_whitelist.txt',
-       }
-       file { '/etc/exim4/exim_surbl.pl':
-               source  => 'puppet:///modules/exim/common/exim_surbl.pl',
-               notify  => Service['exim4'],
-       }
+  include clamav
+  include postgrey
+  include fail2ban::exim
 
-       @ferm::rule { 'dsa-exim-submission':
-               description => 'Allow SMTP',
-               rule        => '&SERVICE_RANGE(tcp, submission, \$SMTP_SOURCES)'
-       }
-       @ferm::rule { 'dsa-exim-v6-submission':
-               description => 'Allow SMTP',
-               domain      => 'ip6',
-               rule        => '&SERVICE_RANGE(tcp, submission, \$SMTP_V6_SOURCES)',
-       }
+  file { '/etc/exim4/ccTLD.txt':
+    source => 'puppet:///modules/exim/common/ccTLD.txt',
+  }
+  file { '/etc/exim4/surbl_whitelist.txt':
+    source => 'puppet:///modules/exim/common/surbl_whitelist.txt',
+  }
+  file { '/etc/exim4/two-level-tlds':
+    source => 'puppet:///modules/exim/common/two-level-tlds',
+  }
+  file { '/etc/exim4/three-level-tlds':
+    source => 'puppet:///modules/exim/common/three-level-tlds',
+  }
+  file { '/etc/exim4/exim_surbl.pl':
+    source => 'puppet:///modules/exim/common/exim_surbl.pl',
+    notify => Service['exim4'],
+  }
 
+  package { 'monitoring-plugins-standard':
+    ensure => installed,
+  }
+
+  ferm::rule::simple { 'dsa-smtp':
+    description => 'Allow smtp access from the world',
+    port        => '25',
+  }
 }