GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Gewusst wie:Sichern Sie Ihren Ubuntu- oder Debian-Server mit IPTables

Einführung

In diesem Tutorial werden wir behandeln, wie Sie einige grundlegende IPTables-Änderungen durchführen, die sehr zur Sicherung Ihres Servers beitragen. Dies erfolgt bei einer Neuinstallation von Ubuntu 14.04 64bit in unserer Cloud. Dies kann auch auf jeder Version unseres Ubuntu 12.04-Betriebssystems sowie auf Debian erfolgen. Alle unsere Befehle werden als root ausgeführt und die Dateibearbeitung erfolgt über vi. Wenn Sie dazu einen anderen Benutzer verwenden, benötigen Sie sudo-Zugriff. Sie können jeden beliebigen Dateieditor verwenden.

Sichern Sie Ihren Cloud-Server mit IPTables

Leider sind auf unserem Ubuntu 14.04 oder 12.04 IPTables nicht bereits installiert. In Debian ist IPTables bereits installiert, Sie können dies also überspringen. Unser erster Schritt mit Ubuntu ist also die Installation von IPTables. Führen Sie dazu einfach Folgendes aus:

apt-get install iptables

Nach der Installation von IPTables können Sie es überprüfen, indem Sie Folgendes ausführen:

iptables –L

Dies listet alle Regeln auf, die Sie ausführen, und bestätigt für Sie, dass Sie iptables installiert haben und es funktioniert. Zu diesem Zeitpunkt ist es nur leer, aber Sie können die drei verfügbaren Arten von Ketten sehen.

Als nächstes werden wir das Paket iptables-persistent installieren. Dies schreibt unsere aktuellen IPTables-Regeln in eine neue Datei (/etc/iptables/rules.v4) und wendet unsere Regeln beim Neustart automatisch an. Ziemlich hilfreich!

/etc/iptables/rules.v4

Wenn Sie die Datei eingeben, sollte sie wie im obigen Bild aussehen. Es gibt ein paar Dinge, die wir vor unserer ersten benutzerdefinierten Regel hinzufügen möchten. Dies wäre eine Regel für die Loopback-Schnittstelle und eine für bereits eingerichteten Datenverkehr. Sie können diese unten sehen. Die erste benutzerdefinierte Regel, die wir hinzufügen werden, ermöglicht den SSH-Zugriff auf unseren Server. Wir möchten die Regeln über der COMMIT-Zeile hinzufügen, da COMMIT das Ende unseres INPUT-, FORWARD- und OUTPUT-Regelsatzes begrenzt. Um herauszufinden, was alle IPTables-Segmente bedeuten, und weitere Informationen darüber, lesen Sie bitte unseren IPTables-Abschnitt.

-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT

Hinweis:Wenn Sie einen benutzerdefinierten SSH-Port haben, wie wir ihn im Tutorial Ändern Ihres SSH-Ports in Ubuntu eingerichtet haben, müssen Sie die 22 in Ihren von Ihnen konfigurierten SSH-Port ändern. In unserem Fall 3389

/etc/iptables/rules.v4

Ihre Regeln sollten dem obigen Bild ähneln. Bevor wir hier abschließen, gibt es noch zwei weitere Dinge, die wir ändern müssen. Wo die Regeln sagen:

:INPUT ACCEPT and :FORWARD ACCEPT

Wir wollen ihnen Folgendes bieten:

:INPUT DROP and :FORWARD DROP

Dies weist IPTables an, den gesamten Datenverkehr zu blockieren und zu verwerfen, der nicht zu den Ports geht, die Sie zum Durchlassen angeben. Dadurch werden Personen daran gehindert, in Dienste einzudringen, die Sie ausführen, es sei denn, Sie haben diese Ports für die Öffentlichkeit geöffnet.

Wenn Sie fertig sind, sollte es ähnlich wie oben aussehen. Sobald Sie dort sind, speichern Sie einfach die Datei und schließen Sie sie. Als letztes müssen wir diese neuen Regeln in die aktuellen IPTables laden. Führen Sie dazu einfach Folgendes aus:

iptables-restore < /etc/iptables/rules.v4

Um zu überprüfen, ob unsere Regeln vorhanden sind, führen Sie einfach denselben Befehl von früher aus:

iptables –L

Sie sollten etwas Ähnliches wie die folgende Seite sehen.

/etc/iptables/rules.v4

Danach ist es soweit! Ihre neuen Regeln treten sofort in Kraft und bleiben auch nach Neustarts erhalten. Wenn Sie mit Ihren IP-Tabellen restriktiver werden möchten, insbesondere beim Zugriff auf SSH, können Sie für jede IP-Adresse, die durchgelassen werden soll, Folgendes tun. Dazu müssen Sie die SSH-Regel bearbeiten und weitere hinzufügen. Dort, wo die zuvor identifizierte SSH-Regel angegeben ist, möchten Sie sie wie folgt ändern:

-A INPUT -s IPADDR –m tcp –p tcp --dport 3389 –j ACCEPT

Wobei IPADDR Ihre IP-Adresse ist, die Sie SSH-Zugriff auf Ihren Server haben möchten. Wenn Sie keinen benutzerdefinierten SSH-Port eingerichtet haben, möchten Sie, dass dieser 22 und nicht 3389 bleibt.

Um bestimmte Ports beispielsweise für den Webzugriff auf Ihre Website zuzulassen, müssen Sie lediglich den Port kennen/finden, auf dem der Dienst ausgeführt wird (oder auf dem Sie ihn konfiguriert haben) und sein Protokoll (TCP oder UDP) und ihn durchlassen. Zum Beispiel Website-Zugriff:

-A INPUT -m tcp -p tcp --dport 80 -j ACCEPT

Und jetzt hat das Internet Zugriff auf das von Ihnen betriebene Webhosting.

Denken Sie daran, dass es beim Hinzufügen neuer Regeln zu INPUT- oder FORWARD-Abschnitten eine gute Praxis ist, die neuen Regeln mit ähnlichen Regeln in einen Topf zu werfen. INPUTs mit INPUTs und FORWARDs mit FORWARDs. Sie sollten auch sicherstellen, dass alle Regeln, die Sie hinzufügen, die einen neuen Port durchlassen, ÜBER allen Ablehnungsanweisungen für diesen Regelsatz aufgeführt werden. Wenn sie nach Ablehnungszeilen aufgeführt werden, treten die Regeln nicht in Kraft.

Um zu sehen, was IPTables mit seinen Regeln tut und/oder blockiert, können Sie das Folgende ausführen. Es druckt die Regeln, die Sie haben, und alles, was mit Paketen zu tun hat, um Verbindungen zu trennen oder durchzulassen.

iptables -L -vn

Um herauszufinden, was alle IPTables-Segmente bedeuten, und weitere Informationen darüber, lesen Sie bitte unseren IPTables-Abschnitt (Link).

Hinweis:Wenn Sie Atlantic.Net Cloud Services verwenden, können Sie jederzeit über unseren VNC-Viewer im Cloud-Portal auf Ihren Server zugreifen, wenn Sie sich aussperren.


Linux
  1. So installieren Sie Puppet 6.x auf Ubuntu 18.04 / Ubuntu 16.04 und Debian 9

  2. So installieren Sie den SSH-Server auf Ubuntu / Debian mit OpenSSH

  3. Sicherung Ihres Ubuntu/Debian-basierten VPS mit IPTABLES/Netfilter-Firewall

  4. So fügen Sie Ihrem Ubuntu 18.04-Server eine zusätzliche IP hinzu

  5. So sichern Sie Ihren Ubuntu-Server mit der CSF-Firewall

So fügen Sie Ihrem Ubuntu- oder Debian-Cloud-Server eine zusätzliche IP hinzu

So sperren Sie Ihren CentOS-Server mit IPTables

So richten Sie einen Seafile-Server mit Nginx unter Ubuntu 18.04 ein

So richten Sie einen FTP-Server mit ProFTPD in Ubuntu 18.04 ein

So richten Sie einen Mailserver mit Modoboa unter Ubuntu 20.04 ein

So richten Sie eine Firewall auf Ihrem Linux-Server ein