blog.bartlweb - a technologist's external brain

Server mit iptables absichern

Die folgende Anleitung erläutert wie mit Hilfe von iptables der Zugriff auf Serverdienste aus dem Netzwerk abgesichert werden kann. Nähere Information zu iptables finden sich auch in der Online-Dokumentation von Ubuntu: https://help.ubuntu.com/community/IptablesHowTo

iptables konfigurieren

Als erstes müssen die iptabels-Regeln erstellt werden. Dazu müssen Sie die folgenden Befehle auf der Konsole eingeben.

iptables -A INPUT -p tcp --dport 22 -m recent --set --name ssh --rsource
iptables -A INPUT -p tcp --dport 22 -m recent ! --rcheck --seconds 60 --hitcount 4 --name ssh --rsource -j ACCEPT
 
iptables -A INPUT -p tcp --dport 3306 -s 127.0.0.1 -j ACCEPT
iptables -A INPUT -p tcp --dport 3306 -j DROP

Die erste Regel unterbindet eine Dictionary-Attacke auf den SSH-Zugang in dem nur 4 Verbindungsversuche pro 60 Sekunden zugelassen werden . Die zweite Regel unterbindet jeglichen Zugriff auf den MySQL-Standardport.

iptables-Konfiguration bei jedem Neustart laden

Standardmäßig vergißt iptables bei jedem Neustart die zuvor durchgeführten Änderungen. Um unsere Einstellungen nun bei jedem Neustart wieder zu laden müssen die Regeln mittels Skript geladen werden.

Als erstes sichern wir die gerade aktive Konfiguration.

sh -c "iptables-save > /etc/iptables.rules"

Danach erstellen wir ein Hilfsskript das unsere Regeln bei jedem Start des Interfaces lädt. Dazu legen wir das Skript /etc/network/if-pre-up.d/iptablesload mit folgendem Inhalt an.

#!/bin/sh
/sbin/iptables-restore < /etc/iptables.rules
exit 0

Dieser Artikel hat Dir deinen Tag gerettet?

... und mühevolles Probieren, Recherchieren und damit Stunden an Zeit gespart? Oder einfach nur Dein Problem gelöst?

Dann würde ich mich freuen, wenn Du meine Zeit für die Erstellung dieses Blogartikels mit einer kleinen Anerkennung honorierst:

Zahlung mit PayPal oder Kreditkarte.

Hinweis zur Verwendung

Die Übermittlung einer Zahlung ist eine persönliche Anerkennung Ihrerseits an den Entwickler (Christian Bartl, Privatperson). Eine Zahlung ist nicht zweckgebunden und es ist keine Gegenleistung zu erwarten. Bitte beachten Sie, dass für eine übermittelte Zahlung keine Quittung ausgestellt werden kann.

Über den Autor

Christian Bartl

Christian Bartl Requirements Engineer
& Solution Architect für Online und Mobile

Als Technologie-Enthusiast und begeisterter Programmierer entwickle ich in meiner Freizeit Websites, Software und IT-Lösungen, die mir selbst und anderen den Alltag vereinfachen.

mehr auf christian.bartl.me

Kommentare

Noch kein Kommentar vorhanden.
Sei der Erste! - Ich freue mich über deine Anmerkung, Kritik oder Frage.

Kommentar schreiben

Der hier angegebene Name wird gemeinsam mit deinem Kommentar auf der Website veröffentlicht.

Deine E-Mail-Adresse wird zur einmaligen Benachrichtigung bei Veröffentlichung des Kommentars genutzt.

Benachrichtigung per E-Mail über Antworten auf meinen Kommentar erhalten.

Bitte tippe die Zahlenkombination "7308" ein, nur dann kann ich deinen Kommentar entgegennehmen.

Bitte fülle dieses Feld nicht aus, nur dann kann ich deinen Kommentar entgegennehmen.