X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fferm%2Ftemplates%2Fdefs.conf.erb;h=2e3f23d6d264a5035f93e4c059f4e9f7742a3ef2;hb=f77499d4ba53abb8e56b1923d25fb1b828e46328;hp=d46bee1eae06df0688f4777d3a813de0fcd52928;hpb=08cd0efc80372b185ec4a830874b53db8b061be2;p=mirror%2Fdsa-puppet.git diff --git a/modules/ferm/templates/defs.conf.erb b/modules/ferm/templates/defs.conf.erb index d46bee1ea..2e3f23d6d 100644 --- a/modules/ferm/templates/defs.conf.erb +++ b/modules/ferm/templates/defs.conf.erb @@ -12,214 +12,105 @@ } @def &TCP_UDP_SERVICE($port) = { - proto (tcp udp) mod state state (NEW) dport $port ACCEPT; + proto (tcp udp) dport $port ACCEPT; } @def &TCP_UDP_SERVICE_RANGE($port, $srange) = { - proto (tcp udp) mod state state (NEW) dport $port @subchain "$port" { saddr ($srange) ACCEPT; }" + proto (tcp udp) 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 +<% + rolehost={} + allnodeinfo = scope.lookupvar('deprecated::allnodeinfo') + roles = scope.lookupvar('deprecated::roles') + + %w{postgres_backup_server}.each do |role| + rolehost[role] = [] + roles[role].each do |node| + next unless allnodeinfo.has_key?(node) and allnodeinfo[node].has_key?('ipHostNumber') + rolehost[role] << allnodeinfo[node]['ipHostNumber'] + end + rolehost[role].flatten!.sort.uniq 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'] or localinfo[node]['extranrpeclient'] - allnodeinfo[node]['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'] 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'] - allnodeinfo[node]['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'] - 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 + dbs << allnodeinfo[node]['ipHostNumber'] end - - dbs.join(' ') -%>); - + dbs.flatten! +%> + +@def $HOST_PGBACKUPHOST_V4 = (<%= scope.function_filter_ipv4([rolehost['postgres_backup_server']]).uniq.join(' ') %>); +@def $HOST_PGBACKUPHOST_V6 = (<%= scope.function_filter_ipv6([rolehost['postgres_backup_server']]).uniq.join(' ') %>); +@def $HOST_PGBACKUPHOST = ( $HOST_PGBACKUPHOST_V4 $HOST_PGBACKUPHOST_V6 ); + + +<% +def getfastlyranges() + begin + data = YAML.safe_load(File.open("/srv/puppet.debian.org/puppet-facts/fastly_ranges.yaml").read) + return data['addresses'] + rescue + return [] + end +end +%> +@def $HOST_FASTLY = (<%= getfastlyranges().join(' ') %>); + +@def $HOST_DEBIAN_V4 = (<%= scope.function_filter_ipv4([dbs]).uniq.join(' ') %>); +@def $HOST_DEBIAN_V6 = (<%= scope.function_filter_ipv6([dbs]).uniq.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 141.201.123.0/24); # cosy -@def $weasel = ($weasel 62.99.152.176/28); # campus sbg +@def $weasel = ($weasel 213.235.231.192/26); # sil-noreply +@def $weasel = ($weasel 141.201.0.0/16); # uni salzburg +@def $weasel = ($weasel 194.118.0.0/16 62.46.0.0/15); # A1 Telekom +@def $weasel = ($weasel 2001:826:408::/48); # unisbg +@def $weasel = ($weasel 2001:858:10f::/48); # anguilla + @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 94.79.138.160/29); # credativ Unitiymedia @def $zobel = ($zobel 78.47.2.104/29); # baldur, bragi, saga +@def $zobel = ($zobel 217.6.179.48/29); # credativ DTAG +@def $zobel = ($zobel 62.154.226.64/27); # credativ DTAG 2 @def $zobel = ($zobel 92.198.42.24/29); # DG-i Office @def $zobel = ($zobel 93.94.128.0/21); # DG-i AS @def $zobel = ($zobel 195.49.152.0/22); # DG-i AS @def $zobel = ($zobel 194.187.64.0/22); # DG-i AS -@def $luca = (64.71.152.109); -@def $paravoid = (83.212.9.72); # faidon.noc.grnet.gr +@def $zobel = ($zobel 88.99.108.200/29); # buri, dag, ... +@def $zobel = ($zobel 2001:6f8:1215::/48); # baldur +@def $zobel = ($zobel 2001:6f8:928::/48); # WS2 +@def $zobel = ($zobel 2a01:198:549::/48); # WGS20 +@def $zobel = ($zobel 2a01:198:6b2::/48); # AdS20 +@def $zobel = ($zobel 2a02:158::/32); # DG-i AS +@def $zobel = ($zobel 2003:5b:203b::/48); # credativ DTAG v6 +@def $zobel = ($zobel 2a01:4f8:10a:1504::/64); # buri, dag, .... + +@def $luca = (); +@def $luca = ($luca 162.210.192.22); # jump snafu.emyr.net +@def $luca = ($luca 2604:9a00:2010:a041:4:ffff:a2d2:c016); # jump snafu.emyr.net + @def $tfheen = (); -@def $tfheen = ($tfheen 194.31.39.0/26); # office network -@def $tfheen = ($tfheen 195.159.200.122); # home -@def $tfheen = ($tfheen 77.40.254.120/29); # home -@def $DSA_IPS = ($sgran $weasel $zobel $luca $paravoid $tfheen); - -@def $sgran6 = (2001:4b10:100b::/48); -@def $sgran6 = ($sgran6 2001:4b10:0000:810b::/64); -@def $weasel6 = (); -@def $weasel6 = ($weasel6 2001:826:408::/48); # unisbg -@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 $zobel6 = ($zobel6 2a02:158::/32); # DG-i AS -@def $luca6 = (); -@def $paravoid6 = (2001:648:2340:1:225:64ff:fea4:8590); # faidon.noc.grnet.gr -@def $tfheen6 = (); -@def $tfheen6 = ($tfheen6 2a02:c0:1013:1::/64); # Office -@def $tfheen6 = ($tfheen6 2001:840:f000:4007::/64); # Home, link -@def $tfheen6 = ($tfheen6 2001:840:4007::/48); # Home -@def $DSA_V6_IPS = ($sgran6 $weasel6 $zobel6 $luca6 $paravoid6 $tfheen6); - -@def $USER_christoph = (); -@def $USER_christoph = ($USER_christoph 212.114.250.148/31); -@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 $BUILDD_SSH_ACCESS = (); -@def $BUILDD_SSH_ACCESS = ($BUILDD_SSH_ACCESS 194.177.211.200); # grieg -@def $BUILDD_SSH_ACCESS = ($BUILDD_SSH_ACCESS 70.103.162.29); # master -@def $BUILDD_SSH_ACCESS = ($BUILDD_SSH_ACCESS 206.12.19.5); # ravel -@def $FREEBSD_SSH_ACCESS = (); -@def $FREEBSD_SSH_ACCESS = ($FREEBSD_SSH_ACCESS $DSA_IPS $BUILDD_SSH_ACCESS); -@def $FREEBSD_SSH_ACCESS = ($FREEBSD_SSH_ACCESS $USER_christoph $USER_aurel32); # buildd admins +@def $tfheen = ($tfheen 178.255.151.162); # vuizook +@def $tfheen = ($tfheen 51.174.0.0/15); # Altibox +@def $tfheen = ($tfheen 2a02:20c8:2640::/64); # vuizook +@def $tfheen = ($tfheen 2a01:798::/29); # Altibox + +@def $jcristau = (); +@def $jcristau = ($jcristau 82.255.47.115/32); # home +@def $jcristau = ($jcristau 62.210.122.202/32); # topinambour +@def $jcristau = ($jcristau 2a01:e35:2ff2:f730::/61); # home +@def $jcristau = ($jcristau 2001:bc8:3f1d::/48); # topinambour + +@def $master = (82.195.75.110 2001:41b8:202:deb:216:36ff:fe40:4001); # master.debian.org +@def $people = (5.153.231.30 2001:41c8:1000:21::21:30); # paradis.debian.org +@def $draghi = (82.195.75.106 2001:41b8:202:deb:1a1a:0:52c3:4b6a); # draghi.debian.org + +@def $DSA_IPS = ($weasel $zobel $luca $tfheen $jcristau $master $people $draghi);