Ländersperre
Ganze Länder an der Firewall sperren mit InfraFence: wie die Ländersets entstehen, was der Server dafür braucht und wie Whitelist-Adressen und das Dashboard erreichbar bleiben.
Zuletzt aktualisiert:
Einschalten
Unter Einstellungen › Agent, Gesperrte Länder: Such ein Land nach Namen und füg es hinzu; jedes gesperrte Land erscheint als Chip, den du entfernen kannst. Die Einstellung gilt für jeden Server der Organisation. Auf der Angriffskarte in der Übersicht sperrt Land sperren ein Land in einem Schritt (Inhaber und Administratoren, ab Pro); die Sperre erscheint unter Aktivität mit Rückgängig.
Nur auf einem Server
Auf der Seite eines Servers, Tab Netzwerk, Nur auf diesem Server gesperrte Länder: dieselbe Ländersuche, für Länder, die auf diesem Server zusätzlich zu den auf allen Servern gesperrten gesperrt sind. Diese stehen darüber, mit einem Link zu Einstellungen › Agent. Inhaber und Administratoren ändern sie ab dem Tarif Basic (auf Starter wird eine Liste aus einem bezahlten Tarif angezeigt, aber nicht angewendet), Mitglieder sehen sie. Der Server bekommt beide Listen zusammen und braucht deshalb nichts anderes als für die Liste der Organisation (Agent 1.0.33 oder neuer, ipset); es gelten dieselben Ausnahmen. Auf der Angriffskarte kann Land sperren ein Land auch nur auf einem der Server sperren, die es angegriffen hat. AutoMode und der Notfallmodus sperren Länder nur auf allen Servern und ändern nie die eigene Liste eines Servers.
Was der Server braucht
- Eine Länderdatenbank. Ab Version 1.0.33 lädt der Agent sie vom Dashboard, sobald ein Land gesperrt ist, und nur dann, nach
/etc/infrafence/geoip-country.mmdb, und sucht höchstens einmal am Tag nach einer neuen Ausgabe. Eine geladene Datei wird geprüft, bevor sie die verwendete ersetzt; schlägt der Download fehl, behält der Agent die bisherige Datei und versucht es später erneut. Für eine eigene Datenbank im MaxMind-Format setzt duGEOIP_DB_PATH: dann wird nichts heruntergeladen. Ältere Agents lesen nur/etc/infrafence/GeoLite2-Country.mmdb, von Hand installiert. ipset, um ganze Länder an der Firewall zu sperren.
Länderdaten: IP to Country Lite von DB-IP, lizenziert unter CC BY 4.0.
So funktioniert es
- An der Firewall: Jedes Netz des Landes aus der Datenbank kommt in ein ipset namens
infrafence-geo-<code>(zum Beispielinfrafence-geo-cn), das in der ChainINFRAFENCEverworfen wird. Nichts aus diesem Land erreicht den Server. Jedes Set ist auf sein Land zugeschnitten, sodass auch das größte, die USA (etwa 155.000 Netze), vollständig geladen wird (Agent 1.0.33 und neuer). - In den Logs: Eine Adresse aus einem gesperrten Land, die in den Logs von SSH, Web, Mail, Datenbank oder FTP auftaucht, wird beim ersten Versuch gesperrt.
Ohne ipset funktioniert nur die zweite Ebene, und das Log meldet: country blocks NOT applied at kernel level (falling back to reactive per-IP blocking).
Ausnahmen
Adressen und Netze auf der Whitelist werden nie nach Land gesperrt, ebenso wenig die Adresse des Dashboards und die eigenen Adressen des Servers. SSH-Sitzungen, die beim Anwenden einer Ländersperre offen sind, laufen weiter: Ihre Adressen bleiben aus dem Länderset heraus (eine neue Anmeldung aus diesem Land wird gesperrt). Im Überwachungsmodus wird kein Länderset angewendet.
Bevor du ein Land sperrst, denk daran, dass auch Kunden und Kollegen, die dorthin reisen, den Zugang verlieren. Der Notfallmodus und AutoMode sperren nie ein Land, aus dem SSH-Anmeldungen kommen.
