]> git.donarmstrong.com Git - dsa-puppet.git/blobdiff - modules/exim/manifests/init.pp
all hosts have root: debian-admin@d.o in /etc/aliases, we don't need it here
[dsa-puppet.git] / modules / exim / manifests / init.pp
index cf1699d823a82b6e43716b8ed6077b0f54be4ac4..d7229bcb3ffb7f1b411baf12695fab22af822be8 100644 (file)
@@ -24,14 +24,14 @@ class exim {
           purge   => true,
           force   => true,
           recurse => true,
-          source  => puppet:///empty/
+          source  => "puppet:///files/empty/"
         ;
         "/etc/exim4/conf.d":
           ensure  => directory,
           purge   => true,
           force   => true,
           recurse => true,
-          source  => puppet:///empty/
+          source  => "puppet:///files/empty/"
         ;
         "/etc/exim4/ssl":
           ensure  => directory,
@@ -106,6 +106,11 @@ class exim {
           source  => [ "puppet:///exim/per-host/$fqdn/whitelist",
                        "puppet:///exim/common/whitelist" ]
           ;
+        "/etc/exim4/submission-domains":
+          require => Package["exim4-daemon-heavy"],
+          source  => [ "puppet:///exim/per-host/$fqdn/submission-domains",
+                       "puppet:///exim/common/submission-domains" ]
+          ;
         "/etc/logrotate.d/exim4-base":
           require => Package["exim4-daemon-heavy"],
           source  => [ "puppet:///exim/per-host/$fqdn/logrotate-exim4-base",
@@ -144,10 +149,42 @@ class exim {
           group   => Debian-exim,
           mode    => 640
           ;
+        "/var/log/exim4":
+          mode    => 2750,
+          ensure  => directory,
+          owner   => Debian-exim,
+          group   => maillog
+          ;
     }
 
     exec { "exim4 reload":
         path        => "/etc/init.d:/usr/bin:/usr/sbin:/bin:/sbin",
         refreshonly => true,
     }
+
+    case extractnodeinfo($nodeinfo, 'mail_port') {
+      /^(\d+)$/: { $mail_port = $1 }
+      default: { $mail_port = 'smtp' }
+    }
+
+    @ferm::rule { "dsa-exim":
+            description     => "Allow SMTP",
+            rule            => "&SERVICE_RANGE(tcp, $mail_port, \$SMTP_SOURCES)"
+    }
+    @ferm::rule { "dsa-exim-v6":
+            description     => "Allow SMTP",
+            domain          => "ip6",
+            rule            => "&SERVICE_RANGE(tcp, $mail_port, \$SMTP_V6_SOURCES)"
+    }
+    # Do we actually want this?  I'm only doing it because it's harmless
+    # and makes the logs quiet.  There are better ways of making logs quiet,
+    # though.
+    @ferm::rule { "dsa-ident":
+            domain          => "(ip ip6)",
+            description     => "Allow ident access",
+            rule            => "&SERVICE(tcp, 113)"
+    }
 }
+# vim:set et:
+# vim:set sts=4 ts=4:
+# vim:set shiftwidth=4: