X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fferm%2Fmanifests%2Fper_host.pp;h=5e1f835ca148d034b0c7316b53c1907f06043906;hb=b77282b8c52490555cc69902f71838a7183220af;hp=6b4fceadc6c490e9362d3eb8756368a3fb0db5b3;hpb=a9bd0396f79339214576a881e6efcf679e53ed5c;p=mirror%2Fdsa-puppet.git diff --git a/modules/ferm/manifests/per_host.pp b/modules/ferm/manifests/per_host.pp index 6b4fceadc..5e1f835ca 100644 --- a/modules/ferm/manifests/per_host.pp +++ b/modules/ferm/manifests/per_host.pp @@ -8,32 +8,12 @@ class ferm::per_host { } case $::hostname { - vittoria: { - @ferm::rule { 'debconf17': - description => 'temporarily allow DC17 access', - rule => '&SERVICE_RANGE(tcp, 5432, ( 206.167.44.99/32 206.167.36.195/32 ))' - } - } czerny,clementi: { @ferm::rule { 'dsa-upsmon': description => 'Allow upsmon access', rule => '&SERVICE_RANGE(tcp, 3493, ( 82.195.75.64/26 192.168.43.0/24 ))' } } - bendel: { - @ferm::rule { 'listmaster-ontp-in': - description => 'ONTP has a broken mail setup', - table => 'filter', - chain => 'INPUT', - rule => 'source 188.165.23.89/32 proto tcp dport 25 jump DROP', - } - @ferm::rule { 'listmaster-ontp-out': - description => 'ONTP has a broken mail setup', - table => 'filter', - chain => 'OUTPUT', - rule => 'destination 78.8.208.246/32 proto tcp dport 25 jump DROP', - } - } lotti,lully,loghost-grnet-01: { @ferm::rule { 'dsa-syslog': description => 'Allow syslog access', @@ -80,47 +60,14 @@ class ferm::per_host { rule => '&SERVICE(tcp, 636)' } } - sonntag: { - @ferm::rule { 'dsa-bugs-search': - description => 'port 1978 for bugs-search from bug web frontends', - rule => '&SERVICE_RANGE(tcp, 1978, ( 140.211.166.26 209.87.16.39 ))' - } - } default: {} } - # redirect snapshot into varnish - case $::hostname { - sibelius: { - @ferm::rule { 'dsa-snapshot-varnish': - rule => '&SERVICE(tcp, 6081)', - } - @ferm::rule { 'dsa-nat-snapshot-varnish': - table => 'nat', - chain => 'PREROUTING', - rule => 'proto tcp daddr 193.62.202.30 dport 80 REDIRECT to-ports 6081', - } - } - lw07: { - @ferm::rule { 'dsa-snapshot-varnish': - rule => '&SERVICE(tcp, 6081)', - } - @ferm::rule { 'dsa-nat-snapshot-varnish': - table => 'nat', - chain => 'PREROUTING', - rule => 'proto tcp daddr 185.17.185.185 dport 80 REDIRECT to-ports 6081', - } - } - default: {} - } case $::hostname { bm-bl1,bm-bl2: { @ferm::rule { 'dsa-vrrp': rule => 'proto vrrp daddr 224.0.0.18 jump ACCEPT', } - @ferm::rule { 'dsa-conntrackd': - rule => 'interface vlan2 daddr 225.0.0.50 jump ACCEPT', - } @ferm::rule { 'dsa-bind-notrack-in': domain => 'ip', description => 'NOTRACK for nameserver traffic', @@ -156,75 +103,62 @@ class ferm::per_host { default: {} } - # elasticsearch stuff - case $::hostname { - stockhausen: { - @ferm::rule { 'dsa-elasticsearch-bendel': - domain => '(ip)', - description => 'Allow elasticsearch access from bendel', - rule => '&SERVICE_RANGE(tcp, 9200:9300, ( 82.195.75.100/32 ))' - } - @ferm::rule { 'dsa-elasticsearch-bendel6': - domain => '(ip6)', - description => 'Allow elasticsearch access from bendel', - rule => '&SERVICE_RANGE(tcp, 9200:9300, ( 2001:41b8:202:deb:216:36ff:fe40:4002/128 ))' - } - } - } - # postgres stuff case $::hostname { ullmann: { @ferm::rule { 'dsa-postgres-udd': description => 'Allow postgress access', - # quantz, moszumanska, master, coccia - rule => '&SERVICE_RANGE(tcp, 5452, ( 5.153.231.28/32 5.153.231.21/32 82.195.75.110/32 5.153.231.11/32 ))' - } - @ferm::rule { 'dsa-postgres-udd6': - domain => '(ip6)', - description => 'Allow postgress access', - rule => '&SERVICE_RANGE(tcp, 5452, ( 2001:41c8:1000:21::21:28/128 2001:41b8:202:deb:216:36ff:fe40:4001/128 2001:41c8:1000:21::21:11/32 2001:41c8:1000:21::21:21/128 ))' + domain => '(ip ip6)', + # quantz, master, coccia + rule => @("EOF") + &SERVICE_RANGE(tcp, 5452, ( + ${ join(getfromhash($site::allnodeinfo, 'quantz.debian.org', 'ipHostNumber'), " ") } + ${ join(getfromhash($site::allnodeinfo, 'master.debian.org', 'ipHostNumber'), " ") } + ${ join(getfromhash($site::allnodeinfo, 'coccia.debian.org', 'ipHostNumber'), " ") } + ${ join(getfromhash($site::allnodeinfo, 'respighi.debian.org', 'ipHostNumber'), " ") } + )) + | EOF } } fasolo: { - @ferm::rule { 'dsa-postgres-fasolo': + @ferm::rule { 'dsa-postgres': description => 'Allow postgress access', - rule => '&SERVICE_RANGE(tcp, 5433, ( 5.153.231.10/32 ))' - } - @ferm::rule { 'dsa-postgres-fasolo6': - domain => 'ip6', - description => 'Allow postgress access', - rule => '&SERVICE_RANGE(tcp, 5433, ( 2001:41c8:1000:21::21:10/128 ))' - } - - @ferm::rule { 'dsa-postgres-backup': - description => 'Allow postgress access', - rule => '&SERVICE_RANGE(tcp, 5433, ( $HOST_PGBACKUPHOST_V4 ))' - } - @ferm::rule { 'dsa-postgres-backup6': - domain => 'ip6', - description => 'Allow postgress access', - rule => '&SERVICE_RANGE(tcp, 5433, ( $HOST_PGBACKUPHOST_V6 ))' + domain => '(ip ip6)', + rule => @("EOF"/$) + &SERVICE_RANGE(tcp, 5433, ( + ${ join(getfromhash($site::allnodeinfo, 'bmdb1.debian.org', 'ipHostNumber'), " ") } + \$HOST_PGBACKUPHOST + )) + | EOF } } bmdb1: { @ferm::rule { 'dsa-postgres-main': - description => 'Allow postgress access', - rule => '&SERVICE_RANGE(tcp, 5435, ( 5.153.231.23/32 5.153.231.25/32 209.87.16.38/32 5.153.231.26/32 5.153.231.18/32 5.153.231.28/32 5.153.231.249/32 5.153.231.29/32 5.153.231.43/32 5.153.231.33/32 ))' - } - @ferm::rule { 'dsa-postgres-main6': - domain => 'ip6', - description => 'Allow postgress access', - rule => '&SERVICE_RANGE(tcp, 5435, ( 2001:41c8:1000:21::21:23/128 2001:41c8:1000:21::21:25/128 2607:f8f0:614:1::1274:38/128 2001:41c8:1000:21::21:26/128 2001:41c8:1000:21::21:18/128 2001:41c8:1000:21::21:28/128 2001:41c8:1000:20::20:249/128 2001:41c8:1000:21::21:29/128 2001:41c8:1000:21::21:43/128 2001:41c8:1000:21::21:33/128 ))' + description => 'Allow postgress access to cluster: main', + domain => '(ip ip6)', + rule => @("EOF"/$) + &SERVICE_RANGE(tcp, 5435, ( + ${ join(getfromhash($site::allnodeinfo, 'ticharich.debian.org', 'ipHostNumber'), " ") } + ${ join(getfromhash($site::allnodeinfo, 'petrova.debian.org', 'ipHostNumber'), " ") } + ${ join(getfromhash($site::allnodeinfo, 'ullmann.debian.org', 'ipHostNumber'), " ") } + ${ join(getfromhash($site::allnodeinfo, 'olin.debian.org', 'ipHostNumber'), " ") } + ${ join(getfromhash($site::allnodeinfo, 'wuiet.debian.org', 'ipHostNumber'), " ") } + ${ join(getfromhash($site::allnodeinfo, 'quantz.debian.org', 'ipHostNumber'), " ") } + ${ join(getfromhash($site::allnodeinfo, 'respighi.debian.org', 'ipHostNumber'), " ") } + ${ join(getfromhash($site::allnodeinfo, 'rusca.debian.org', 'ipHostNumber'), " ") } + ${ join(getfromhash($site::allnodeinfo, 'tate.debian.org', 'ipHostNumber'), " ") } + \$HOST_PGBACKUPHOST + )) + | EOF } @ferm::rule { 'dsa-postgres-dak': description => 'Allow postgress access', - rule => '&SERVICE_RANGE(tcp, 5434, ( 5.153.231.11/32 5.153.231.28/32 209.87.16.26/32 5.153.231.21/32 5.153.231.18/32 5.153.231.29/32 128.31.0.69/32 ))' + rule => '&SERVICE_RANGE(tcp, 5434, ( 5.153.231.11/32 5.153.231.28/32 209.87.16.26/32 5.153.231.18/32 5.153.231.29/32 128.31.0.69/32 ))' } @ferm::rule { 'dsa-postgres-dak6': domain => 'ip6', description => 'Allow postgress access', - rule => '&SERVICE_RANGE(tcp, 5434, ( 2001:41c8:1000:21::21:11/128 2001:41c8:1000:21::21:28/128 2607:f8f0:614:1::1274:26/128 2001:41c8:1000:21::21:21/128 2001:41c8:1000:21::21:18/128 2001:41c8:1000:21::21:29/128 ))' + rule => '&SERVICE_RANGE(tcp, 5434, ( 2001:41c8:1000:21::21:11/128 2001:41c8:1000:21::21:28/128 2607:f8f0:614:1::1274:26/128 2001:41c8:1000:21::21:18/128 2001:41c8:1000:21::21:29/128 ))' } @ferm::rule { 'dsa-postgres-wannabuild': # wuiet, ullmann @@ -249,12 +183,12 @@ class ferm::per_host { @ferm::rule { 'dsa-postgres-backup': description => 'Allow postgress access', - rule => '&SERVICE_RANGE(tcp, (5435 5436 5440), ( $HOST_PGBACKUPHOST_V4 ))' + rule => '&SERVICE_RANGE(tcp, (5436 5440), ( $HOST_PGBACKUPHOST_V4 ))' } @ferm::rule { 'dsa-postgres-backup6': domain => 'ip6', description => 'Allow postgress access', - rule => '&SERVICE_RANGE(tcp, (5435 5436 5440), ( $HOST_PGBACKUPHOST_V6 ))' + rule => '&SERVICE_RANGE(tcp, (5436 5440), ( $HOST_PGBACKUPHOST_V6 ))' } @ferm::rule { 'dsa-postgres-dedup': @@ -280,7 +214,7 @@ class ferm::per_host { } danzi: { @ferm::rule { 'dsa-postgres-danzi': - # ubc, wuit + # ubc, wuiet description => 'Allow postgress access', rule => '&SERVICE_RANGE(tcp, 5433, ( 206.12.19.0/24 209.87.16.0/24 5.153.231.18/32 ))' } @@ -292,25 +226,12 @@ class ferm::per_host { @ferm::rule { 'dsa-postgres2-danzi': description => 'Allow postgress access2', - rule => '&SERVICE_RANGE(tcp, 5437, ( 206.12.19.0/24 209.87.16.0/24 ))' + rule => '&SERVICE_RANGE(tcp, 5434, ( 209.87.16.0/24 ))' } - @ferm::rule { 'dsa-postgres3-danzi': - description => 'Allow postgress access3', - rule => '&SERVICE_RANGE(tcp, 5436, ( 206.12.19.0/24 209.87.16.0/24 ))' - } - @ferm::rule { 'dsa-postgres4-danzi': - description => 'Allow postgress access4', - rule => '&SERVICE_RANGE(tcp, 5438, ( 206.12.19.0/24 209.87.16.0/24 ))' - } - - @ferm::rule { 'dsa-postgres-backup': - description => 'Allow postgress access', - rule => '&SERVICE_RANGE(tcp, 5433, ( $HOST_PGBACKUPHOST_V4 ))' - } - @ferm::rule { 'dsa-postgres-backup6': - domain => 'ip6', - description => 'Allow postgress access', - rule => '&SERVICE_RANGE(tcp, 5433, ( $HOST_PGBACKUPHOST_V6 ))' + @ferm::rule { 'dsa-postgres2-danzi6': + domain => 'ip6', + description => 'Allow postgress access2', + rule => '&SERVICE_RANGE(tcp, 5434, ( 2607:f8f0:614:1::/64 ))' } } seger: { @@ -324,24 +245,24 @@ class ferm::per_host { rule => '&SERVICE_RANGE(tcp, 5432, ( $HOST_PGBACKUPHOST_V6 ))' } } - sibelius: { + sallinen: { @ferm::rule { 'dsa-postgres-backup': description => 'Allow postgress access', - rule => '&SERVICE_RANGE(tcp, 5433, ( $HOST_PGBACKUPHOST_V4 ))' + rule => '&SERVICE_RANGE(tcp, 5473, ( $HOST_PGBACKUPHOST_V4 ))' } @ferm::rule { 'dsa-postgres-backup6': domain => 'ip6', description => 'Allow postgress access', - rule => '&SERVICE_RANGE(tcp, 5433, ( $HOST_PGBACKUPHOST_V6 ))' + rule => '&SERVICE_RANGE(tcp, 5473, ( $HOST_PGBACKUPHOST_V6 ))' } @ferm::rule { 'dsa-postgres-replication': description => 'Allow postgress access', - rule => '&SERVICE_RANGE(tcp, 5433, ( 185.17.185.187/32 ))' + rule => '&SERVICE_RANGE(tcp, 5473, ( 185.17.185.187/32 ))' } @ferm::rule { 'dsa-postgres-replication6': domain => 'ip6', description => 'Allow postgress access', - rule => '&SERVICE_RANGE(tcp, 5433, ( 2001:1af8:4020:b030:deb::187/128 ))' + rule => '&SERVICE_RANGE(tcp, 5473, ( 2001:1af8:4020:b030:deb::187/128 ))' } } lw07: { @@ -355,28 +276,6 @@ class ferm::per_host { rule => '&SERVICE_RANGE(tcp, 5439, ( 2001:1af8:4020:b030::/64 ))' } } - melartin,vittoria: { - @ferm::rule { 'dsa-postgres-backup': - description => 'Allow postgress access', - rule => '&SERVICE_RANGE(tcp, 5432, ( $HOST_PGBACKUPHOST_V4 ))' - } - @ferm::rule { 'dsa-postgres-backup6': - domain => 'ip6', - description => 'Allow postgress access', - rule => '&SERVICE_RANGE(tcp, 5432, ( $HOST_PGBACKUPHOST_V6 ))' - } - } - buxtehude: { - @ferm::rule { 'dsa-postgres-backup': - description => 'Allow postgress access', - rule => '&SERVICE_RANGE(tcp, (5433 5441), ( $HOST_PGBACKUPHOST_V4 ))' - } - @ferm::rule { 'dsa-postgres-backup6': - domain => 'ip6', - description => 'Allow postgress access', - rule => '&SERVICE_RANGE(tcp, (5433 5441), ( $HOST_PGBACKUPHOST_V6 ))' - } - } default: {} } # vpn fu