X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fferm%2Ftemplates%2Fdefs.conf.erb;h=35fb7a1abb20fbdb88031082c5a6fa35f58e342f;hb=fc8a2e887766e10b6c33a00c547049d6bf38801c;hp=82ca5f5bd519989e885248a0a71f2541f04c90e6;hpb=06f8e083701d1c0886668573295fa2dc7bb7980c;p=mirror%2Fdsa-puppet.git diff --git a/modules/ferm/templates/defs.conf.erb b/modules/ferm/templates/defs.conf.erb index 82ca5f5bd..35fb7a1ab 100644 --- a/modules/ferm/templates/defs.conf.erb +++ b/modules/ferm/templates/defs.conf.erb @@ -8,36 +8,162 @@ } @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 $HOST_MAILRELAY_V4 = (<%= + mailrelay = [] + localinfo.keys.sort.each do |node| + if localinfo[node]['mailrelay'] + keyinfo[node][0]['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'] + keyinfo[node][0]['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'] or localinfo[node]['extranrpeclient'] + keyinfo[node][0]['ipHostNumber'].each do |ip| + next if ip =~ /:/ + nagii << ip + end + end + end + + nagii.join(' ') +%>); + +@def $HOST_NAGIOS_V6 = (<%= 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'] + keyinfo[node][0]['ipHostNumber'].each do |ip| + next if ip =~ /\./ + nagii << ip + end + end end nagii.join(' ') %>); -@def $HOST_MUNIN = (<%= +@def $HOST_NAGIOS = ( $HOST_NAGIOS_V4 $HOST_NAGIOS_V6 ); + +@def $HOST_MUNIN_V4 = (<%= munins = [] localinfo.keys.sort.each do |node| - if localinfo[node]['muninmaster'] == "true" - munins << keyinfo[node][0]['ipHostNumber'] - end + if localinfo[node]['muninmaster'] + keyinfo[node][0]['ipHostNumber'].each do |ip| + next if ip =~ /:/ + munins << ip + end + end end munins.join(' ') %>); -@def $sgran = (91.103.132.24/29); +@def $HOST_MUNIN_V6 = (<%= + munins = [] + localinfo.keys.sort.each do |node| + if localinfo[node]['muninmaster'] + keyinfo[node][0]['ipHostNumber'].each do |ip| + next if ip =~ /\./ + munins << ip + end + end + end + + munins.join(' ') +%>); + +@def $HOST_MUNIN = ( $HOST_MUNIN_V4 $HOST_MUNIN_V6 ); + +@def $HOST_DB_V6 = (<%= + dbs = [] + localinfo.keys.sort.each do |node| + if localinfo[node]['dbmaster'] + keyinfo[node][0]['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'] + keyinfo[node][0]['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 = [] + keyinfo.keys.sort.each do |node| + next unless keyinfo[node][0].has_key?('ipHostNumber') + keyinfo[node][0]['ipHostNumber'].each do |ip| + next if ip =~ /:/ + dbs << ip + end + end + + dbs.join(' ') +%>); + +@def $HOST_DEBIAN_V6 = (<%= + dbs = [] + keyinfo.keys.sort.each do |node| + next unless keyinfo[node][0].has_key?('ipHostNumber') + keyinfo[node][0]['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 @@ -45,13 +171,20 @@ @def $weasel = ($weasel 141.201.27.0/24); # came @def $weasel = ($weasel 62.99.152.178); # argos.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 $luca6 = (); @def $DSA_V6_IPS = ($sgran6 $weasel6 $zobel6 $luca6);