X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=modules%2Fferm%2Fmanifests%2Fper-host.pp;h=bb40a0a1633405123edae4379a1ddf8cffd6a493;hb=ec720d8084dc6f05f80056e45175ee5b6e7a5605;hp=d3a8a29aa36f9899da6f7abb889f9f3ef4baf06a;hpb=d25c92104d22de2c402a7d0b4425106e38a0babe;p=dsa-puppet.git diff --git a/modules/ferm/manifests/per-host.pp b/modules/ferm/manifests/per-host.pp index d3a8a29a..bb40a0a1 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,powell,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': @@ -97,6 +145,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 +184,20 @@ 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' } } default: {} @@ -173,7 +253,8 @@ REJECT reject-with icmp-admin-prohibited rule => 'def $ADDRESS_FANO=206.12.19.110; def $ADDRESS_FINZI=206.12.19.111; def $ADDRESS_FISCHER=206.12.19.112; -def $FREEBSD_HOSTS=($ADDRESS_FANO $ADDRESS_FINZI $ADDRESS_FISCHER); +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; @@ -181,7 +262,7 @@ interface br0 outerface br0 ACCEPT; interface br1 outerface br1 ACCEPT; interface br2 outerface br0 jump from-kfreebsd; -interface br0 destination ($ADDRESS_FISCHER) proto tcp dport 22 ACCEPT; +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 @@ -215,8 +296,15 @@ 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: {} } }