IP´s über Geoip blocken

Sicherheit
Linux

Man kennt es, der Server wird angegriffen und der Angriff erfolgt recht leicht erkennbar über ein spezielles Land.

Nun blockt man die ggf. angreifende IP, aber so schnell wie man diese geblockt wird, erhält man 10 neue angreifende IP´s aus dem gleichen Land.

Dies deutet in der Regel darauf hin, dass es sich um einen mehr oder minder gezielten Angriff handelt, welcher lokal ausgeführt wird.

Um dieses Problem nun zu lösen kann man folgende Schritte nutzen.

Warnung: Jeder Eintrag geht auf die IP-Table Werte! Sollten Sie hier also harte Beschränkungen haben, wird diese Lösung nur bedingt funktionieren! Diese Lösung ist vor allem für dedizierte Server und Server auf KVM Virtualisierung geeignet, welche keine UBC Beschränkungen haben!

 

Installieren Sie die notwendigen Pakete, falls noch nicht installiert:

Debian Distros (Debian, Ubuntu, etc..):

# apt-get update && apt-get upgrade
# apt-get install iptables-dev xtables-addons-common libtext-csv-xs-perl pkg-config

RedHat Distros (CentOS, RHEL, etc…):

# yum update
# yum install gcc-c++ make automake kernel-devel-`uname -r` wget unzip iptables-devel perl-Text-CSV_XS

Danach machen wir uns daran, die notwendige Erweiterung zu installieren, welche “Xtables-addons” heißt:

(Bitte prüfen Sie vorher auf Sourceforge ob es ggf. eine neuere Version gibt)

# wget http://downloads.sourceforge.net/project/xtables-addons/Xtables-addons/xtables-addons-2.13.tar.xz
# tar xf xtables-addons-2.13.tar.xz
# cd xtables-addons-2.13
# ./configure
# make
# make install

Für RedHat Distros müssen wir zusätzlich danach noch folgendes ausführen:

# chcon -vR –user=system_u /lib/modules/$(uname -r)/extra/*.ko
# chcon -vR –type=lib_t /lib64/xtables/*.so

 

Als nächstes müssen wir dem System beibringen zu erkennen, wo welche IP herkommt. Hierfür können wir die kostenfreie MaxMind Datenbank nutzen. Den Download führt das gerade installierte Addon entsprechend aus, wenn alles korrekt ist.

Danach müssen wir unsere Liste einbinden, damit diese dann auch genutzt werden kann:

# cd geoip
# ./xt_geoip_dl
# ./xt_geoip_build GeoIPCountryWhois.csv
# mkdir -p /usr/share/xt_geoip/
# cp -r {BE,LE} /usr/share/xt_geoip/

 

Jetzt kommen wir zu dem Punkt, warum wir uns das Ganze hier antun. Die entsprechende Hinterlegung der entsprechenden Länder:

Der Code ist prinzipiell nach folgendem System aufgebaut:

iptables -m geoip –src-cc country[,country…] –dst-cc country[,country…]

Wenn wir beispielsweise Traffic aus Indien und China aussperren möchten, wäre der Code:

# iptables -I INPUT -m geoip –src-cc IN,CN -j DROP

Wenn wir stattdessen jeden Traffic, welcher NICHT aus beispielsweise den USA kommt, sperren möchten, wäre der Code folgendermaßen:

# iptables -I INPUT -m geoip ! –src-cc US -j DROP

Wir können auch ausgehenden Traffic sperren, hier ein Beispiel mit Indien:

# iptables -A OUTPUT -m geoip –dst-cc IN -j DROP

 

Sollten wir firewalld als Frontend nutzen, wären die Codes folgendermaßen:

# firewall-cmd –direct –add-rule ipv4 filter INPUT 0 -m geoip –src-cc IN,UN -j DROP

# firewall-cmd –direct –add-rule ipv4 filter INPUT 0 -m geoip ! –src-cc US -j DROP

# firewall-cmd –direct –add-rule ipv4 filter OUTPUT 0 -m geoip –dst-cc IN -j DROP

 

Viel Erfolg beim abwehren der üblichen Angriffe wie Brute Force, DOS Attacken und ähnlichem. Sollte alles korrekt sein, werden Sie je nach Ihren Einstellungen dann entsprechend Ihre “Ruhe” aus den entsprechenden IP Bereichen haben. 🙂

 

Ideengeber und Befehle teilweise entnommen von: https://linoxide.com/linux-how-to/block-ips-countries-geoip-addons/

0
Linux
Plesk Firewall

Eine Firewall muss immer an die Bedürfnisse der Dienste, welche Sie auf dem Server betreiben möchten angepasst sein. Da wir Ihnen an dieser Stelle nur sehr allgemeine Informationen zum Thema Firewall bieten können, möchten wir Ihnen mit Verweisen auf die regelmäßig aktualisierten Seiten von Firewall-Anbietern helfen. Parallels Plesk Sollten Sie …

Sicherheit
Powerpanel Firewall server4you

Server4you Firewall konfigurieren übers Powerpanel – Man kann nur vorgefertigte Firewall-Templates einrichten, davon gibt es drei. Eine erlaubt im Wesentlichen nur den Zugriff auf SSH, eine ist für Webserver ohne und eine für Webserver mit Mailserver. – Eigene Ports kann man leider nicht freischalten. –Den Server muss neu gestartet werden …

Linux
Aktuelle Systemstatus-Informationen

Auf dieser Seite informieren wir Sie über aktuelle Störungen und Ausfälle, an deren schnellstmöglicher Behebung wir selbstverständlich arbeiten – ebenso wie über notwendige Wartungsarbeiten, die wir nach Möglichkeit frühzeitig ankündigen. https://server4you.statuspage.io Server4you Kunden können auch im Powerpanel unter News eine E-Mail hinterlegen.Sie bekommen dann Status Informationen per E-Mail zugeschickt.   …