@cryptotaxi247 / infra-1 / commits / ac10f6ed

hydra-proxy: more abusive patterns

Contabo hosting Intel Macs, iPods and iPads.... and VIETEL present with 26k IP addresses in 3 days. Also we are back to banning fake user agents at scale to shed some load.

Martin Weinelt committed Jul 15, 2026 at 22:54 UTC ac10f6ed392620fbd295afad47e53a3dffa8654b
1 file changed +40
build/hydra-proxy.nix
+40
@@ -6,6 +6,12 @@
6 ...
7 }:
8
9 +let
10 + genAgentRange =
11 + agent: from: to: sep: trailer:
12 + map (n: "${agent}${sep}${toString n}${trailer}") (lib.range from to);
13 +in
14 +
15 {
16 imports = [
17 inputs.nixocaine.nixosModules.default
@@ -45,13 +51,47 @@
51 unwanted-asns = {
52 db-path = inputs.geolite2-asn-mmdb;
53 list = map toString [
54 + 7552 # VIETEL-AS-AP
55 37963 # ALIBABA-CN-NET
56 45102 # ALIBABA-CN-NET
57 45899 # VNPT-AS-VN
58 + 51167 # CONTABO
59 62610 # ZEN-DPS
60 132203 # TENCENT-NET-AP-CN
61 ];
62 };
63 + unwanted-visitors =
64 + # broad version ranges
65 + (genAgentRange "Android" 2 12 " " ".")
66 + ++ (genAgentRange "Chrome" 1 142 "/" ".")
67 + ++ (genAgentRange "CriOS" 1 142 "/" ".")
68 + ++ (genAgentRange "Firefox" 1 139 "/" ".")
69 + ++ (genAgentRange "Firefox" 141 150 "/" ".")
70 + ++ (genAgentRange "FxiOS" 1 150 "/" ".")
71 + ++ (genAgentRange "iPhone OS" 1 14 " " "_")
72 + ++ (genAgentRange "Windows NT" 4 7 " " "")
73 + ++ (genAgentRange "Mac OS X" 11 14 " " "")
74 + ++ [
75 + # manually crafted patterns
76 + "Mac OS X 10." # should be 10_
77 + "Mac OS X 10_5"
78 + "Mac OS X 10_6"
79 + "Mac OS X 10_7"
80 + "Mac OS X 10_8"
81 + "Mac OS X 10_9"
82 + "Mac OS X 10_10"
83 + "Mac OS X 10_11"
84 + "Mac OS X 10_12"
85 + "Mac OS X 10_13"
86 + "Mac OS X 10_14"
87 + "iPod;"
88 + "Presto/"
89 + "Trident/"
90 + "Windows CE"
91 + # Missing contact information
92 + "efx-scanner/3.0"
93 + "Go-http-client/1.1"
94 + ];
95 };
96 server.default = {
97 bind = "/run/iocaine/default.sock";