; Beispiel-Konfiguration fuer aria_geoblock.py ; ; countries: Komma-getrennte ISO-3166-1-alpha-2-Laendercodes (klein- oder ; grossgeschrieben, egal), die geblockt werden sollen. ; Liste der Codes: https://www.ipdeny.com/ipblocks/ ; ; chain: iptables-Chain, in die die DROP-Regel eingehaengt wird. ; INPUT = Verbindungen ZU diesem Host (Standard-Anwendungsfall). ; ; interface: optional, z.B. eth0 -- nur Traffic auf diesem Interface pruefen. ; Leer lassen = alle Interfaces. ; ; log: true/false -- wenn true, wird vor dem DROP ein iptables LOG- ; Eintrag geschrieben (dmesg / /var/log/kern.log), praefixed ; mit log_prefix. Das ist NICHT dasselbe wie log_file (siehe unten)! ; ; ipset_name: Name des ipset-Sets, das alle IP-Bereiche der Laender enthaelt. ; ; log_file: optional Pfad zu einer eigenen Log-Datei des Scripts selbst ; (zusaetzlich zu stderr/systemd-Journal). Bei jedem Lauf wird ; eine Zeile angehaengt, u.a. eine maschinenlesbare ; "RESULT status=OK/ERROR ..."-Zeile. Genau diese wertet das ; mitgelieferte checkmk-Plugin (aria_geoblock_checkmk) aus. ; Leer lassen = keine Datei-Logs. ; Verzeichnis muss existieren und fuer root beschreibbar sein ; (das Installer-Script legt es automatisch an). [geoblock] countries = RU, CN, KP, IR chain = INPUT interface = log = true log_prefix = GEOBLOCK-DROP: ipset_name = geoblock log_file = /var/log/aria_geoblock/aria_geoblock.log ; --- Test-Webserver (aria_geoblock_testserver.py) -------------------------- ; Kleiner HTTP-Server ohne Abhaengigkeiten, um Geoblocking-Regeln von aussen ; zu testen (z.B. vom Handy im Mobilfunknetz oder per VPN aus einem anderen ; Land). Siehe README.md Abschnitt "Verbindungstest". ; ; port: TCP-Port, auf dem der Testserver lauscht. ; bind: Bind-Adresse, 0.0.0.0 = alle IPv4-Interfaces (:: fuer IPv6). ; log_file: Pfad zur Request-Log-Datei (Zeit, Client-IP, Pfad, User-Agent ; pro Zeile). Leer lassen = keine Datei-Logs (nur stderr/Journal). [testserver] port = 8899 bind = 0.0.0.0 log_file = /var/log/aria_geoblock/testserver.log