]> git.donarmstrong.com Git - dsa-puppet.git/blobdiff - modules/ferm/manifests/per-host.pp
nat out of vpn
[dsa-puppet.git] / modules / ferm / manifests / per-host.pp
index 55edb6cfceaae03066c1b440a21c25eaa2fdef97..3ab8f4ce5483d1f2ad3c3a38779ee70fe1a82e07 100644 (file)
@@ -3,7 +3,7 @@ class ferm::per-host {
                include ferm::zivit
        }
 
-       if $::hostname in [klecker,merikanto,powell,ravel,rietz,senfl,sibelius,stabile] {
+       if $::hostname in [glinka,klecker,merikanto,powell,ravel,rietz,senfl,sibelius,stabile] {
                ferm::rule { 'dsa-rsync':
                        domain      => '(ip ip6)',
                        description => 'Allow rsync access',
@@ -21,14 +21,14 @@ class ferm::per-host {
                ullmann: {
                        @ferm::rule { 'dsa-postgres-udd':
                                description     => 'Allow postgress access',
-                               # quantz, wagner
-                               rule            => '&SERVICE_RANGE(tcp, 5452, ( 206.12.19.122/32 217.196.43.134/32 ))'
+                               # 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 ))'
+                               rule            => '&SERVICE_RANGE(tcp, 5452, ( 2607:f8f0:610:4000:216:36ff:fe40:3860/128 2001:41b8:202:deb:216:36ff:fe40:4001/128 ))'
                        }
                }
                grieg: {
@@ -42,11 +42,23 @@ class ferm::per-host {
                                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 ))'
@@ -133,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': }
@@ -149,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: {}