X-Git-Url: https://git.distorted.org.uk/~mdw/firewall/blobdiff_plain/994ac8d0782c89a636f47b02a2dc096c72ff58c5..bf63c594388914a69c14796d36f872d5e0fa4798:/local.m4 diff --git a/local.m4 b/local.m4 index c16f94e..d29ecc9 100644 --- a/local.m4 +++ b/local.m4 @@ -27,7 +27,7 @@ m4_divert(6)m4_dnl ## Default NTP servers. defconf(ntp_servers, - "158.152.1.76 158.152.1.204 194.159.253.2 195.173.57.232") + "81.187.26.174 90.155.23.205 2001:8b0:0:23::205 185.73.44.6 2001:ba8:0:2c06::") m4_divert(-1) ###-------------------------------------------------------------------------- @@ -110,11 +110,12 @@ m4_divert(-1) ## Define the available network classes. m4_divert(42)m4_dnl -defnetclass scary scary trusted mcast -defnetclass untrusted scary untrusted trusted mcast -defnetclass trusted scary untrusted trusted safe noloop mcast -defnetclass safe trusted safe noloop mcast -defnetclass noloop trusted safe mcast +defnetclass scary scary trusted vpnnat mcast +defnetclass untrusted scary untrusted trusted mcast +defnetclass trusted scary untrusted trusted safe noloop vpnnat mcast +defnetclass safe trusted safe noloop vpnnat mcast +defnetclass noloop trusted safe mcast +defnetclass vpnnat scary trusted safe mcast defnetclass link defnetclass mcast @@ -223,6 +224,7 @@ defhost precision iface vpn-radius housebdry vpn sgo iface vpn-chiark sgo iface vpn-national upn + iface vpn-mdwdev upn iface vpn-+ vpn defhost telecaster iface eth0 jump colo @@ -243,6 +245,7 @@ defnet hub virtual via housebdry colobdry defnet sgo noloop addr !172.29.198.0/23 + addr !10.165.27.0/24 addr 10.0.0.0/8 addr 172.16.0.0/12 addr 192.168.0.0/16 @@ -254,7 +257,7 @@ defnet vpn trusted host terror 2 ::2:1 host orange 3 ::3:1 host haze 4 ::4:1 - host groove 5 ::5:1 + host spirit 9 ::9:1 defnet anycast trusted addr 172.29.199.224/27 2001:ba8:1d9:0::/64 via dmz unsafe safe untrusted jump colo vpn @@ -267,6 +270,7 @@ defnet upn untrusted addr 172.29.198.160/27 2001:ba8:1d9:a000::/64 via colohub host national 1 ::1:1 + host mdwdev 2 ::2:1 ## Linode hosts. defhost national @@ -274,13 +278,13 @@ defhost national iface vpn-precision colohub ## Satellite networks. -defnet binswood noloop +defnet binswood vpnnat addr 10.165.27.0/24 via colohub defhost mango hosttype router iface eth0 binswood default - iface vpn-precision colo + iface vpn-precision colo default m4_divert(80)m4_dnl ###-------------------------------------------------------------------------- @@ -354,11 +358,29 @@ case $forward in ;; esac +m4_divert(82)m4_dnl +###-------------------------------------------------------------------------- +### Check for source routing. + +clearchain check-srcroute + +run iptables -A check-srcroute -g forbidden \ + -m ipv4options --any --flags lsrr,ssrr +run ip6tables -A check-srcroute -g forbidden \ + -m rt + +for c in INPUT FORWARD; do + for m in $from_scary $from_untrusted; do + run ip46tables -A $c -m mark --mark $m/$MASK_FROM -j check-srcroute + done +done + m4_divert(84)m4_dnl ###-------------------------------------------------------------------------- ### Locally-bound packet inspection. clearchain inbound +clearchain inbound-untrusted ## Track connections. commonrules inbound @@ -382,6 +404,10 @@ m4_divert(88)m4_dnl openports inbound ## Inspect inbound packets from untrusted sources. +run iptables -A inbound -s 172.29.198.0/24 -g inbound-untrusted +run ip6tables -A inbound -s 2001:8b0:c92:8000::/49 -g inbound-untrusted +run ip6tables -A inbound -s 2001:ba8:1d9:8000::/49 -g inbound-untrusted +run ip46tables -A inbound-untrusted -g forbidden run ip46tables -A inbound -g forbidden run ip46tables -A INPUT -m mark --mark $from_scary/$MASK_FROM -g inbound run ip46tables -A INPUT -m mark --mark $from_untrusted/$MASK_FROM -g inbound