]> git.donarmstrong.com Git - dsa-puppet.git/blobdiff - modules/ferm/manifests/init.pp
whitespace nazi
[dsa-puppet.git] / modules / ferm / manifests / init.pp
index 5bedd6c9f37b45945c590aed42ad4889923cd133..05c5f798358c946bc265c4b15bbb498478683f28 100644 (file)
@@ -4,42 +4,69 @@ class ferm {
                        ensure  => present,
                        owner   => root,
                        group   => root,
-                       mode    => 0600,
+                       mode    => 0400,
                        content => template("ferm/ferm-rule.erb"),
                         notify  => Exec["ferm restart"],
                }
        }
 
-        package { ferm: ensure => installed }
+        # realize (i.e. enable) all @ferm::rule virtual resources
+        Ferm::Rule <| |>
+
+        package {
+                ferm: ensure => installed;
+                ulogd: ensure => installed;
+        }
 
         file { 
-                "/etc/ferm/dsa.d": 
+                "/etc/ferm/dsa.d":
                         ensure => directory,
+                        purge   => true,
+                        force   => true,
+                        recurse => true,
+                        source  => "puppet:///files/empty/",
                         require => Package["ferm"];
-                "/etc/ferm/conf.d": 
+                "/etc/ferm/conf.d":
                         ensure => directory,
                         require => Package["ferm"];
+                "/etc/default/ferm":
+                        source  => "puppet:///ferm/ferm.default",
+                        require => Package["ferm"],
+                        notify  => Exec["ferm restart"];
                 "/etc/ferm/ferm.conf":
                         source  => "puppet:///ferm/ferm.conf",
                         require => Package["ferm"],
+                        mode    => 0400,
                         notify  => Exec["ferm restart"];
                 "/etc/ferm/conf.d/me.conf":
                         content => template("ferm/me.conf.erb"),
                         require => Package["ferm"],
+                        mode    => 0400,
                         notify  => Exec["ferm restart"];
                 "/etc/ferm/conf.d/defs.conf":
-                        source  => "puppet:///ferm/defs.conf",
+                        content => template("ferm/defs.conf.erb"),
                         require => Package["ferm"],
+                        mode    => 0400,
+                        notify  => Exec["ferm restart"];
+                "/etc/ferm/conf.d/interfaces.conf":
+                        content => template("ferm/interfaces.conf.erb"),
+                        require => Package["ferm"],
+                        mode    => 0400,
                         notify  => Exec["ferm restart"];
         }
 
-        ferm::rule { "dsa-ssh":
-                description     => "Allow SSH from DSA",
-                rule            => "domain (ip ip6) proto tcp mod state state (NEW) dport (ssh) @subchain 'ssh' { saddr (\$SSH_SOURCES) ACCEPT; }"
+        $munin_ips = split(regsubst($v4ips, '([^,]+)', 'ip_\1', 'G'), ',')
+
+        activate_munin_check {
+            $munin_ips: script => "ip_";
         }
 
         exec { "ferm restart":
-                path        => "/etc/init.d:/usr/bin:/usr/sbin:/bin:/sbin",
+                command     => "/etc/init.d/ferm restart",
                 refreshonly => true,
         }
+
 }
+# vim:set et:
+# vim:set sts=4 ts=4:
+# vim:set shiftwidth=4: