geoblock: eigene Block-IPs/CIDRs zusaetzlich zu den Laendern (block_ips)

Neue Option 'block_ips': komma-getrennte Liste eigener IPv4-IPs/CIDRs, die
zusaetzlich zu den ipdeny-Laender-Ranges ins selbe ipset kommen (z.B. bekannte
Angreifer, einzelne Hosts/Netze). Werden von denselben iptables-Regeln/Ports
erfasst.

- load_config validiert + normalisiert jede Angabe (ip_network strict=False,
  Host -> /32); IPv6 wird mit klarer Meldung abgelehnt (ipset ist IPv4).
- apply_geoblock nimmt sie nach den Laender-CIDRs mit ins Set auf; Fuell-Log und
  --status weisen die Anzahl/Liste aus.
- Doku: geoblock.ini.example (Kommentar + block_ips-Zeile) + README-Optionsliste.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
duffyduck
2026-07-28 10:37:40 +02:00
co-authored by Claude Opus 4.8
parent 161d90de45
commit 830e9a61f6
3 changed files with 39 additions and 2 deletions
+5
View File
@@ -541,6 +541,11 @@ Siehe Kommentare in der Datei selbst — kurz:
den **urspruenglichen** Zielport (vor DNAT) statt des umgeschriebenen. Dann in
`ports` die oeffentlichen Ports eintragen. Siehe Abschnitt "INPUT vs FORWARD"
bzw. "Dienst hinter Portweiterleitung/DNAT" unten.
- `block_ips`: optional, komma-getrennte Liste **eigener** IPs/CIDRs (IPv4), die
**zusaetzlich** zu den Laender-Ranges geblockt werden (z.B. bekannte Angreifer,
einzelne Hosts/Netze). Einzel-IP (`203.0.113.7`) oder CIDR (`203.0.113.0/24`).
Kommt ins selbe `ipset` wie die Laender, wird also von denselben Regeln/Ports
erfasst. Leer = keine.
- `proxy`: optional, HTTP(S)-Proxy fuer den Abruf der Zonefiles von ipdeny.com
(z.B. `http://10.0.0.5:3128`, mit Auth `http://user:pass@host:port`). Nur
noetig, wenn der Host selbst keine direkte Internetverbindung hat, aber