X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Froles%2Fmanifests%2Fsnapshot_web.pp;h=bcaa7050eddab14ac811089abb7a0a5d6c495397;hb=29cbe59430d1e7d7d5575579b48513c56227e2f7;hp=aa17c97ba5500dd0faa2117bb12bbdf2a88aab1c;hpb=e15a0448ceb332965f469910452465ba42c21d85;p=mirror%2Fdsa-puppet.git diff --git a/modules/roles/manifests/snapshot_web.pp b/modules/roles/manifests/snapshot_web.pp index aa17c97ba..bcaa7050e 100644 --- a/modules/roles/manifests/snapshot_web.pp +++ b/modules/roles/manifests/snapshot_web.pp @@ -23,9 +23,28 @@ class roles::snapshot_web { # 99.137.191.34 # 20181110 crawler # 51.15.215.91 - @ferm::rule { 'dsa-snapshot-abusers': + # 20181222, excessive number of requests + # 208.91.68.213 + # 198.11.128.0/18 + # running jugdo against snapshot + # 159.226.95.0/24 + # 84.204.194.0/24 + # 211.13.205.0/24 + # 20190512 tens of thousands of queries + # 63.32.0.0/14 + # 54.72.0.0/15 + # 95.115.66.23 + # 52.192.0.0/11 + # 54.72.0.0/15 + # 34.192.0.0/10 + # 34.240.0.0/13 + # 52.192.0.0/11 + # 90.44.107.223 + # 195.154.173.12 + # 74.121.137.108 + ferm::rule { 'dsa-snapshot-abusers': prio => "005", - rule => "saddr (61.69.254.110 18.128.0.0/9 3.120.0.0/14 35.156.0.0/14 52.58.0.0/15 99.137.191.34 51.15.215.91) DROP", + rule => "saddr (61.69.254.110 18.128.0.0/9 3.120.0.0/14 35.156.0.0/14 52.58.0.0/15 99.137.191.34 51.15.215.91 208.91.68.213 198.11.128.0/18 159.226.95.0/24 84.204.194.0/24 211.13.205.0/24 63.32.0.0/14 54.72.0.0/15 95.115.66.23 52.192.0.0/11 54.72.0.0/15 34.192.0.0/10 34.240.0.0/13 52.192.0.0/11 90.44.107.223 195.154.173.12 74.121.137.108) DROP", } ensure_packages ( [ @@ -55,17 +74,17 @@ class roles::snapshot_web { } } - @ferm::rule { 'dsa-snapshot-connlimit': + ferm::rule { 'dsa-snapshot-connlimit': domain => '(ip ip6)', prio => "005", - rule => "proto tcp mod state state (NEW) daddr (${ipv4addr} ${ipv6addr}) mod multiport destination-ports (80 443) mod connlimit connlimit-above 3 DROP; - proto tcp mod state state (NEW) dport 6081 mod connlimit connlimit-above 3 DROP; + rule => "proto tcp mod state state (NEW) interface ! lo daddr (${ipv4addr} ${ipv6addr}) mod multiport destination-ports (80 443) mod connlimit connlimit-above 3 DROP; + proto tcp mod state state (NEW) interface ! lo dport 6081 mod connlimit connlimit-above 3 DROP ", } # varnish cache ############### - @ferm::rule { 'dsa-nat-snapshot-varnish-v4': + ferm::rule { 'dsa-nat-snapshot-varnish-v4': table => 'nat', chain => 'PREROUTING', rule => "proto tcp daddr ${ipv4addr} dport 80 REDIRECT to-ports 6081",