]> git.donarmstrong.com Git - dsa-puppet.git/blobdiff - manifests/site.pp
some more ferm fixups
[dsa-puppet.git] / manifests / site.pp
index aa4f69c8bf496ad2a019f1d5e6a3fcd459e1ce98..52e1e0d766ca5d5345ea09d14bea7e5397c90c0d 100644 (file)
@@ -17,6 +17,7 @@ node default {
     $localinfo = yamlinfo('*', "/etc/puppet/modules/debian-org/misc/local.yaml")
     $nodeinfo  = nodeinfo($fqdn, "/etc/puppet/modules/debian-org/misc/local.yaml")
     $hoster    = whohosts($nodeinfo, "/etc/puppet/modules/debian-org/misc/hoster.yaml")
+    $keyinfo   = allnodeinfo("sshRSAHostKey", "ipHostNumber")
     notice("hoster for ${fqdn} is ${hoster}")
 
     $mxinfo   = allnodeinfo("mXRecord")
@@ -30,7 +31,10 @@ node default {
     include ntp
 
     include motd
-    include samhain
+
+    case $hostname {
+        finzi,fano,fasch,field:    { include kfreebsd }
+    }
 
     case $smartarraycontroller {
         "true":    { include debian-proliant }
@@ -38,45 +42,84 @@ node default {
     case $kvmdomain {
         "true":    { package { acpid: ensure => installed } }
     }
+    case $mptraid {
+        "true":    { include "raidmpt" }
+    }
 
     case $mta {
         "exim4":   {
              case extractnodeinfo($nodeinfo, 'heavy_exim') {
-                  "true":  { include exim::mx }
+                  true:    { include exim::mx }
                   default: { include exim }
              }
         }
     }
 
-    case $hostname {
-        spohr: {
-                      include nagios::server
-                      include munin-node::master
-        }
-        default: {
-                     include nagios::client
-       }
+    case extractnodeinfo($nodeinfo, 'muninmaster') {
+        true: { include munin-node::master }
+    }
+
+    case extractnodeinfo($nodeinfo, 'nagiosmaster') {
+        true:    { include nagios::server }
+        default: { include nagios::client }
     }
 
     case $apache2 {
          "true":  {
               case extractnodeinfo($nodeinfo, 'apache2_security_mirror') {
-                     "true":  { include apache2::security_mirror }
+                     true:    { include apache2::security_mirror }
                      default: { include apache2 }
               }
          }
     }
 
     case extractnodeinfo($nodeinfo, 'buildd') {
-         "true":  { include buildd }
+         'true':  {
+             include buildd
+             case $kernel {
+                 Linux: {
+                     include ferm
+                 }
+             }
+         }
     }
 
     case $hostname {
-        rietz,klecker,ravel,senfl,orff: { include named::secondary }
+        klecker,ravel,senfl,orff: { include named::secondary }
+        geo1,geo2,geo3:           { include named::geodns }
+        bartok,schein,steffani:   { include named::recursor }
     }
 
     case $hostname {
-        geo1,geo2,geo3: { include named::geodns }
+        logtest01,geo1,geo2,geo3,bartok,senfl,beethoven,piatti,saens,villa,lobos,raff,gluck,schein,wieck,steffani,ball: { include ferm }
+    }
+    case $hostname {
+        piatti: {
+           @ferm::rule { "dsa-udd-stunnel":
+               description  => "port 8080 for udd stunnel",
+               rule         => "&SERVICE_RANGE(tcp, http-alt, ( 192.25.206.16 70.103.162.29 217.196.43.134 ))"
+           }
+        }
+       senfl: {
+          @ferm::rule { "dsa-rsync":
+                   domain          => "(ip ip6)",
+                   description     => "Allow rsync access",
+                   rule            => "&SERVICE(tcp, 873)"
+          }
+        }
+        saens,villa,lobos,raff,gluck,schein,wieck,steffani: {
+           @ferm::rule { "dsa-ftp":
+                   domain          => "(ip ip6)",
+                   description     => "Allow ftp access",
+                   rule            => "&SERVICE(tcp, 21)"
+           }
+          @ferm::rule { "dsa-rsync":
+                   domain          => "(ip ip6)",
+                   description     => "Allow rsync access",
+                   rule            => "&SERVICE(tcp, 873)"
+          }
+        }
+
     }
     case $brokenhosts {
         "true":    { include hosts }
@@ -84,4 +127,8 @@ node default {
     case $hoster {
         "ubcece", "darmstadt", "ftcollins", "grnet":  { include resolv }
     }
+    case $portforwarder_user_exists {
+        "true":    { include portforwarder }
+    }
+    include samhain
 }