X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fferm%2Fmanifests%2Fper-host.pp;h=82d68270f86ce8e85e8d52764ac89b4741e96c3d;hb=ced749a4693ec3ed1d1586bce92092b458ecbc3c;hp=169ae7d8a08766fdc43db8df8fa616fdec93043b;hpb=0f179fe3d284b2d70c65918eadc7fc28a87ef34b;p=mirror%2Fdsa-puppet.git diff --git a/modules/ferm/manifests/per-host.pp b/modules/ferm/manifests/per-host.pp index 169ae7d8a..82d68270f 100644 --- a/modules/ferm/manifests/per-host.pp +++ b/modules/ferm/manifests/per-host.pp @@ -3,6 +3,14 @@ class ferm::per-host { include ferm::zivit } + if $::hostname in [glinka,klecker,merikanto,ravel,rietz,senfl,sibelius,stabile] { + ferm::rule { 'dsa-rsync': + domain => '(ip ip6)', + description => 'Allow rsync access', + rule => '&SERVICE(tcp, 873)' + } + } + case $::hostname { piatti,samosa: { @ferm::rule { 'dsa-udd-stunnel': @@ -10,19 +18,59 @@ class ferm::per-host { rule => '&SERVICE_RANGE(tcp, http-alt, ( 192.25.206.16 70.103.162.29 217.196.43.134 ))' } } + ullmann: { + @ferm::rule { 'dsa-postgres-udd': + description => 'Allow postgress access', + # quantz, wagner, master + rule => '&SERVICE_RANGE(tcp, 5452, ( 206.12.19.122/32 217.196.43.134/32 217.196.43.132/32 82.195.75.110/32 ))' + } + @ferm::rule { 'dsa-postgres-udd6': + domain => '(ip6)', + description => 'Allow postgress access', + # quantz + rule => '&SERVICE_RANGE(tcp, 5452, ( 2607:f8f0:610:4000:216:36ff:fe40:3860/128 2001:41b8:202:deb:216:36ff:fe40:4001/128 ))' + } + } + grieg: { + @ferm::rule { 'dsa-postgres-ullmann': + description => 'Allow postgress access', + rule => '&SERVICE_RANGE(tcp, 5433, ( 206.12.19.141/32 ))' + } + @ferm::rule { 'dsa-postgres-ullmann6': + domain => '(ip6)', + description => 'Allow postgress access', + rule => '&SERVICE_RANGE(tcp, 5433, ( 2607:f8f0:610:4000:6564:a62:ce0c:138d/128 ))' + } + } + 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 ))' + } + } danzi: { @ferm::rule { 'dsa-postgres-danzi': description => 'Allow postgress access', rule => '&SERVICE_RANGE(tcp, 5433, ( 206.12.19.0/24 ))' } + @ferm::rule { 'dsa-postgres-danzi6': + domain => 'ip6', + description => 'Allow postgress access', + rule => '&SERVICE_RANGE(tcp, 5433, ( 2607:f8f0:610:4000::/64 ))' + } + @ferm::rule { 'dsa-postgres2-danzi': description => 'Allow postgress access2', rule => '&SERVICE_RANGE(tcp, 5437, ( 206.12.19.0/24 ))' } @ferm::rule { 'dsa-postgres3-danzi': - description => 'Allow postgress access2', + description => 'Allow postgress access3', rule => '&SERVICE_RANGE(tcp, 5436, ( 206.12.19.0/24 ))' } + @ferm::rule { 'dsa-postgres4-danzi': + description => 'Allow postgress access4', + rule => '&SERVICE_RANGE(tcp, 5438, ( 206.12.19.0/24 ))' + } } abel,alwyn,rietz: { @ferm::rule { 'dsa-tftp': @@ -40,17 +88,6 @@ class ferm::per-host { rule => '&SERVICE(udp, 69)' } } - powell: { - @ferm::rule { 'dsa-powell-v6-tunnel': - description => 'Allow powell to use V6 tunnel broker', - rule => 'proto ipv6 saddr 212.227.117.6 jump ACCEPT' - } - @ferm::rule { 'dsa-powell-btseed': - domain => '(ip ip6)', - description => 'Allow powell to seed BT', - rule => 'proto tcp dport 8000:8100 jump ACCEPT' - } - } lotti,lully: { @ferm::rule { 'dsa-syslog': description => 'Allow syslog access', @@ -97,6 +134,29 @@ class ferm::per-host { description => 'Allow ldaps access', rule => '&SERVICE(tcp, 636)' } + @ferm::rule { 'dsa-vpn': + description => 'Allow openvpn access', + rule => '&SERVICE(udp, 17257)' + } + @ferm::rule { 'dsa-routing': + description => 'forward chain', + chain => 'FORWARD', + rule => 'policy ACCEPT; +mod state state (ESTABLISHED RELATED) ACCEPT; +interface tun+ ACCEPT; +REJECT reject-with icmp-admin-prohibited +' + } + @ferm::rule { 'dsa-vpn-mark': + table => 'mangle', + chain => 'PREROUTING', + rule => 'interface tun+ MARK set-mark 1', + } + @ferm::rule { 'dsa-vpn-nat': + table => 'nat', + chain => 'POSTROUTING', + rule => 'outerface !tun+ mod mark mark 1 MASQUERADE', + } } cilea: { ferm::module { 'nf_conntrack_sip': } @@ -113,11 +173,26 @@ class ferm::per-host { rule => '&TCP_UDP_SERVICE(5080)' } } - scelsi: { - @ferm::rule { 'dc11-icecast': - domain => '(ip ip6)', - description => 'Allow icecast access', - rule => '&SERVICE(tcp, 8000)' + unger: { + @ferm::rule { 'dsa-notrack-dns-diamond-in': + domain => 'ip', + description => 'NOTRACK for nameserver traffic', + table => 'raw', + chain => 'PREROUTING', + rule => 'destination 82.195.75.108 proto (tcp udp) dport 53 jump NOTRACK' + } + @ferm::rule { 'dsa-notrack-dns-diamond-out': + domain => 'ip', + description => 'NOTRACK for nameserver traffic', + table => 'raw', + chain => 'PREROUTING', + rule => 'source 82.195.75.108 proto (tcp udp) sport 53 jump NOTRACK' + } + } + 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 206.12.19.140 ))' } } default: {} @@ -172,7 +247,9 @@ REJECT reject-with icmp-admin-prohibited chain => 'FORWARD', rule => 'def $ADDRESS_FANO=206.12.19.110; def $ADDRESS_FINZI=206.12.19.111; -def $FREEBSD_HOSTS=($ADDRESS_FANO $ADDRESS_FINZI); +def $ADDRESS_FISCHER=206.12.19.112; +def $ADDRESS_FALLA=206.12.19.117; +def $FREEBSD_HOSTS=($ADDRESS_FANO $ADDRESS_FINZI $ADDRESS_FISCHER $ADDRESS_FALLA); policy ACCEPT; mod state state (ESTABLISHED RELATED) ACCEPT; @@ -180,6 +257,7 @@ interface br0 outerface br0 ACCEPT; interface br1 outerface br1 ACCEPT; interface br2 outerface br0 jump from-kfreebsd; +interface br0 destination ($ADDRESS_FISCHER $ADDRESS_FALLA) proto tcp dport 22 ACCEPT; interface br0 destination ($FREEBSD_HOSTS) jump to-kfreebsd; ULOG ulog-prefix "REJECT FORWARD: "; REJECT reject-with icmp-admin-prohibited @@ -213,8 +291,23 @@ REJECT reject-with icmp-admin-prohibited } default: {} } - - if $::rsyncd { - include ferm::rsync + 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', + } + } + default: {} + } + case $::hostname { + bm-bl1,bm-bl2,bm-bl3,bm-bl4,bm-bl5,bm-bl6,bm-bl7,bm-bl8,bm-bl9,bm-bl10,bm-bl11,bm-bl12,bm-bl13,bm-bl14: { + @ferm::rule { 'dsa-hwnet-vlan20': + rule => 'interface vlan20 jump ACCEPT', + } + } + default: {} } }