]> git.donarmstrong.com Git - dsa-puppet.git/blobdiff - modules/ferm/templates/defs.conf.erb
Try allowing port 53 through firewalls for recursors
[dsa-puppet.git] / modules / ferm / templates / defs.conf.erb
index 82ca5f5bd519989e885248a0a71f2541f04c90e6..cb2014c8499ff1da5e1e105b7e276d670aa658bf 100644 (file)
 }
 
 @def &SERVICE_RANGE($proto, $port, $srange) = {
- proto $proto mod state state (NEW) dport $port saddr ($srange) ACCEPT;
+ proto $proto mod state state (NEW) dport $port @subchain "$port" { saddr ($srange) ACCEPT; }"
 }
 
 @def &TCP_UDP_SERVICE($port) = {
  proto (tcp udp) mod state state (NEW) dport $port ACCEPT;
 }
 
-@def $HOST_NAGIOS = (<%=
+@def &TCP_UDP_SERVICE_RANGE($port, $srange) = {
+ proto (tcp udp) mod state state (NEW) dport $port @subchain "$port" { saddr ($srange) ACCEPT; }"
+}
+
+@def $HOST_MAILRELAY_V4 = (<%=
+  mailrelay = []
+  localinfo.keys.sort.each do |node|
+      if localinfo[node]['mailrelay']
+          allnodeinfo[node]['ipHostNumber'].each do |ip|
+             next if ip =~ /:/
+             mailrelay << ip
+          end
+      end
+  end
+
+  mailrelay.join(' ')
+%>);
+
+@def $HOST_MAILRELAY_V6 = (<%=
+  mailrelay = []
+  localinfo.keys.sort.each do |node|
+      if localinfo[node]['mailrelay']
+          allnodeinfo[node]['ipHostNumber'].each do |ip|
+             next if ip =~ /\./
+             mailrelay << ip
+          end
+      end
+  end
+
+  mailrelay.join(' ')
+%>);
+
+@def $HOST_MAILRELAY = ( $HOST_MAILRELAY_V4 $HOST_MAILRELAY_V6 );
+
+@def $HOST_NAGIOS_V4 = (<%=
   nagii = []
   localinfo.keys.sort.each do |node|
-      if localinfo[node]['nagiosmaster'] == "true"
-            nagii << keyinfo[node][0]['ipHostNumber']
-              end
+      if localinfo[node]['nagiosmaster'] or localinfo[node]['extranrpeclient']
+          allnodeinfo[node]['ipHostNumber'].each do |ip|
+             next if ip =~ /:/
+             nagii << ip
+          end
+      end
   end
 
   nagii.join(' ')
 %>);
 
-@def $HOST_MUNIN  = (<%=
+@def $HOST_NAGIOS_V6 = (<%=
+  nagii = []
+  localinfo.keys.sort.each do |node|
+      if localinfo[node]['nagiosmaster'] or localinfo[node]['extranrpeclient']
+          allnodeinfo[node]['ipHostNumber'].each do |ip|
+             next if ip =~ /\./
+             nagii << ip
+          end
+      end
+  end
+
+  nagii.join(' ')
+%>);
+
+@def $HOST_NAGIOS = ( $HOST_NAGIOS_V4 $HOST_NAGIOS_V6 );
+
+@def $HOST_MUNIN_V4 = (<%=
+  munins = []
+  localinfo.keys.sort.each do |node|
+      if localinfo[node]['muninmaster']
+          allnodeinfo[node]['ipHostNumber'].each do |ip|
+             next if ip =~ /:/
+             munins << ip
+          end
+      end
+  end
+
+  munins.join(' ')
+%>);
+
+@def $HOST_MUNIN_V6 = (<%=
   munins = []
   localinfo.keys.sort.each do |node|
-      if localinfo[node]['muninmaster'] == "true"
-            munins << keyinfo[node][0]['ipHostNumber']
-              end
+      if localinfo[node]['muninmaster']
+          allnodeinfo[node]['ipHostNumber'].each do |ip|
+             next if ip =~ /\./
+             munins << ip
+          end
+      end
   end
 
   munins.join(' ')
 %>);
 
-@def $sgran   = (91.103.132.24/29);
+@def $HOST_MUNIN = ( $HOST_MUNIN_V4 $HOST_MUNIN_V6 );
+
+@def $HOST_DB_V6  = (<%=
+  dbs = []
+  localinfo.keys.sort.each do |node|
+      if localinfo[node]['dbmaster']
+          allnodeinfo[node]['ipHostNumber'].each do |ip|
+             next if ip =~ /\./
+             dbs << ip
+          end
+      end
+  end
+
+  dbs.join(' ')
+%>);
+
+@def $HOST_DB_V4 = (<%=
+  dbs = []
+  localinfo.keys.sort.each do |node|
+      if localinfo[node]['dbmaster']
+          allnodeinfo[node]['ipHostNumber'].each do |ip|
+             next if ip =~ /:/
+             dbs << ip
+          end
+      end
+  end
+
+  dbs.join(' ')
+%>);
+
+@def $HOST_DB = ($HOST_DB_V4 $HOST_DB_V6);
+
+@def $HOST_DEBIAN_V4 = (<%=
+  dbs = []
+  allnodeinfo.keys.sort.each do |node|
+      next unless allnodeinfo[node].has_key?('ipHostNumber')
+      allnodeinfo[node]['ipHostNumber'].each do |ip|
+         next if ip =~ /:/
+         dbs << ip
+      end
+  end
+
+  dbs.join(' ')
+%>);
+
+@def $HOST_DEBIAN_V6  = (<%=
+  dbs = []
+  allnodeinfo.keys.sort.each do |node|
+      next unless allnodeinfo[node].has_key?('ipHostNumber')
+      allnodeinfo[node]['ipHostNumber'].each do |ip|
+         next if ip =~ /\./
+         dbs << ip
+      end
+  end
+
+  dbs.join(' ')
+%>);
+
+@def $HOST_DEBIAN = ($HOST_DEBIAN_V4 $HOST_DEBIAN_V6);
+
+@def $sgran   = (91.103.132.24/29 85.158.45.51/32);
 @def $weasel  = ();
 @def $weasel  = ($weasel 86.59.118.144/28); # debian@sil
 @def $weasel  = ($weasel 86.59.21.32/29); # anguilla1
 @def $weasel  = ($weasel 86.59.30.32/28); # anguilla2
 @def $weasel  = ($weasel 141.201.27.0/24); # came
-@def $weasel  = ($weasel 62.99.152.178); # argos.campus-sbg
+@def $weasel  = ($weasel 62.99.152.176/28); # campus sbg
 @def $zobel   = ();
+@def $zobel   = ($zobel 87.139.82.80/32); # exit.credativ.com
+@def $zobel   = ($zobel 87.193.134.192/27); # credativ qsc
+@def $zobel   = ($zobel 78.47.2.104/29); # baldur, bragi, saga
 @def $luca    = ();
 @def $DSA_IPS = ($sgran $weasel $zobel $luca);
 
 @def $sgran6     = (2001:4b10:100b::/48);
+@def $sgran6     = ($sgran6 2001:4b10:0000:810b::/64);
 @def $weasel6    = ();
 @def $weasel6    = ($weasel6 2001:826:408:200::/56); # came
 @def $weasel6    = ($weasel6 2001:858:10f::/48); # anguilla
 @def $zobel6     = ();
+@def $zobel6     = ($zobel6 2001:6f8:1215::/48); # baldur
+@def $zobel6     = ($zobel6 2001:6f8:928::/48); # WS2 
+@def $zobel6     = ($zobel6 2a01:198:549::/48); # WGS20
+@def $zobel6     = ($zobel6 2a01:198:6b2::/48); # AdS20
 @def $luca6      = ();
 @def $DSA_V6_IPS = ($sgran6 $weasel6 $zobel6 $luca6);
+
+@def $USER_kibi = ();
+@def $USER_kibi = ($USER_kibi 90.80.97.98); # gruyere.kerlabs.com
+@def $USER_kibi = ($USER_kibi 88.164.242.219); # home.ikibiki.org
+@def $USER_kibi = ($USER_kibi 82.244.158.68); # @parents'
+@def $USER_aurel32 = ();
+@def $USER_aurel32 = ($USER_aurel32 88.191.126.93); # hall.aurel32.net
+@def $USER_aurel32 = ($USER_aurel32 82.232.2.251); # farad.aurel32.net
+@def $FREEBSD_SSH_ACCESS = ();
+@def $FREEBSD_SSH_ACCESS = ($FREEBSD_SSH_ACCESS $DSA_IPS $USER_kibi $USER_aurel32);
+@def $FREEBSD_SSH_ACCESS = ($FREEBSD_SSH_ACCESS 194.177.211.200); # grieg