Artikel

geoip für iptables

In Firewall kann man nach Land filtern. Es ist sehr nützlich beim Sperren bestimmter Ländern oder bei der Verteilung der Anfragen an verschiedene Backends (jedes Backend ist für eigene Region verantwortlich).

Nun gibt es die WorldIP Datenbank auch im Format für geoip-Modul aus dem xtables-addons für iptables. In Anbetracht der geographischen Lage eines Benutzers, kann man mit diesem Modul flexiblere iptables-Regeln ausführen.
  • Die Installation des xtables-addons: Das Standardverfahren der Kompilation und Installation. Die neueste Version herunterladen (für iptables>= 1.4.3), entpacken.
    Wenn Sie eine ältere Version haben (z.B. in Lenny 1.4.2) und möchten sie nicht aktualisieren, Sie sollen xtables-addons v1.12 herunterladen.
    xtables-addons enthält einige interessanten Module, wie z.B. TARPIT. Sie können sie in "mconfig" auswählen. In Konfigurationsdatei lassen Sie "build_geoip = m", so bleibt geoip auch aktiv.

    Notwendige Abhängigkeiten installieren (für Debian-basierende Distributionen):
    aptitude -y install iptables-dev linux-headers-`uname -r`
    Dann
    ./configure --with-xtlibdir=/lib/xtables
    make
    make install
    Prüfen Sie, ob alles erfolgreich verlaufen ist:
    iptables -m geoip --help
  • Die Installation der Datenbank für geoip
    Bereits vorbereitete Datenbank kann hier heruntergeladen werden. Die Datenbank muss in /var/geoip sein (dies ist hardcoded im Modul). Die Datenbank kann man mit cron aktualisieren (ein mal im Monat z.B.), damit sie auch immer aktuell bleibt.
  • Beispiele
    • Wir lassen ssh für unser Land (DE) und das Land, wo wir unser Urlaub verbringen (FR)
      iptables -A INPUT -p tcp --dport 22 -m geoip --src-cc DE,FR -j ACCEPT
      iptables -A INPUT -p tcp --dport 22 -j DROP
    • Wir sperren den FTP-Server für Papua-Neuguinea (PG)
      iptables -A INPUT -p tcp --dport 21 -m geoip --src-cc PG -j DROP
      iptables -A INPUT -p tcp --dport 21 -j ACCEPT
    • Wir bezeichnen einzeln USA und die anderen, und schicken jede Art des Traffics (mit "mark") an ihr Ziel
      iptables -A INPUT -p tcp --dport 80 -m geoip --src-cc US -d <IP> -j MARK --set-mark 1
      iptables -A INPUT -p tcp --dport 80 -m geoip ! --src-cc US -d <IP> -j MARK --set-mark 2
cronfy Rußland15 Apr 2011 05:04#3495Русский   
wipmania logo Alrond 23 Apr 2011 13:04#3543Русский   

Anonymous/Name OpenID OpenID Yahoo! OpenID AOL WordPress LiveJournal TypePad Vox Myvidoop Orange Yandex YandexBlog Mixi Myspace Flickr Verisign MyOpenID ClaimID

Kein Feld ist Pflicht

Für den Hauptartikel bitte leer lassen.
Kommentar - 5000 Zeichen maximum. BBcode ist erlaubt

Abonnieren die Antworten: alle Kommentare:RSS comments (de)

Please have a look at our
Facebook Page and leave a comment

Creative Commons License
Creative Commons Attribution-Noncommercial 3.0 License