So verwenden Sie Port Klotzing, um den SSH -Service unter Linux zu sichern

So verwenden Sie Port Klotzing, um den SSH -Service unter Linux zu sichern

Port Klopfen ist eine raffinierte Technik zur Steuerung des Zugriffs auf einen Port, indem nur legitime Benutzer Zugriff auf den auf einem Server ausgeführten Dienst ermöglicht werden. Es funktioniert so, dass die Firewall, wenn die richtige Abfolge von Verbindungsversuchen durchgeführt wird, gerne den geschlossenen Hafen öffnet.

Die Logik hinter dem Port Klopfen besteht darin, Ihr Linux -System vor automatisierten Portscannern zu schützen, die nach offenen Ports streifen. In diesem Handbuch untersuchen wir, wie Sie das Port -Klopfen installieren können und wie Sie ihn so konfigurieren können, dass Sie den SSH -Service sichern können. Zu Demonstrationszwecken werden wir verwenden Ubuntu 18.04.

Schritt 1: Installieren und Konfigurieren von Knockd

Melden Sie sich zu Ihrem Linux -System an und installieren Sie die Anmeldung, und installieren Sie die Knockd Dämon wie gezeigt.

$ sudo apt installieren Sie Knockd 

Nach der Installation öffnen Sie die Knockd.Conf Konfiguration mit Ihrem bevorzugten Texteditor. Hier verwenden wir den VIM-Befehlszeilen-Texteditor.

$ sudo vim /etc /Knockd.Conf 

Die Standardkonfigurationsdatei wird wie folgt angezeigt.

Knockd -Konfigurationsdatei

Unter dem [OpenSSH] Abschnitt müssen wir die Standard -Klopfen -Sequenz ändern - 7000,8000,9000 - zu etwas anderem. Dies liegt daran, dass diese Werte bereits bekannt sind und die Sicherheit Ihres Systems beeinträchtigen können.

Für Testzwecke haben wir die Werte auf festgelegt 10005, 10006, 10007. Dies ist die Sequenz, mit der der SSH -Port von einem Client -System geöffnet wird.

In der dritten Zeile - beginnend mit Befehl, ändern -A Zu -ICH kurz nach dem /sbin/iptables Befehl und vorher EINGANG.

Und schließlich unter dem [Closessh] Ändern Sie erneut die Standardsequenz in Ihre bevorzugte Wahl. Dies ist die Sequenz, mit der die SSH -Verbindung schließ.

Hier ist unsere vollständige Konfiguration.

Knockd -Konfigurationseinstellungen

Sobald Sie fertig sind, speichern Sie die Änderungen und beenden Sie.

Eine weitere Konfiguration, die wir ändern müssen, ist die /etc/Standard/Knockd. Öffnen Sie es erneut mit Ihrem Texteditor.

$ sudo vim/etc/Standard/Knockd 
Standard -Knockd -Konfigurationseinstellungen

Suchen Sie die Linie Start_knockd = 0. Sich anwenden und den Wert auf festlegen 1.

Als nächstes gehen Sie zur Linie Knockd_opts = "-i Eth1" Überzeugen Sie es und ersetzen Sie die Standardeinstellung Eth1 Wert mit der aktiven Netzwerkschnittstelle Ihres Systems. Um Ihre Netzwerkschnittstelle zu überprüfen.

Für unser System, ENP0S3 ist die aktive Netzwerkkarte.

Aktive Netzwerkschnittstelle

Die vollständige Konfiguration ist wie gezeigt.

Knockd -Konfigurationswerte

Speichern Sie die Änderungen und beenden Sie.

Dann starten Sie und aktivieren Sie Knockd Dämon wie gezeigt.

$ sudo systemctl start klopf $ sudo systemctl aktivieren kockd 

Um den Status von zu überprüfen Knockd Daemon, den Befehl ausführen:

$ sudo systemctl Status Knockd 
Überprüfen Sie den Knockd -Status

Schritt 2: Schließen Sie den SSH -Port 22 auf der Firewall

Da das Ziel des Knockd Der Service besteht darin, den SSH -Service entweder zu gewähren oder zu verweigern. Wir werden den SSH -Anschluss an der Firewall schließen. Lassen Sie uns zunächst den Status der UFW -Firewall überprüfen.

$ sudo UFW Status nummeriert 
Überprüfen Sie den UFW -Status

Aus der Ausgabe können wir das deutlich sehen Ssh Hafen 22 ist offen für beide IPv4 Und IPv6 Protokolle nummeriert 5 Und 9 bzw.

Wir müssen diese beiden Regeln wie gezeigt löschen, beginnend mit dem höchsten Wert - das heißt 9.

$ sudo ufw löschen 9 $ sudo ufw löschen 5 
UFW -Regeln löschen

Wenn Sie sich nun versuchen, sich im Server aus der Ferne anzumelden, erhalten Sie einen Verbindungs ​​-Timeout -Fehler wie gezeigt.

SSH -Verbindungszeitüberschreitung

Schritt 3: Konfigurieren Sie einen Knock -Client, um eine Verbindung zum SSH -Server herzustellen

Im letzten Schritt konfigurieren wir einen Client und versuchen, sich anzumelden, indem wir zuerst die auf dem Server konfigurierte Klopfsequenz senden.

Aber zuerst installieren Sie zuerst Knockd Daemon genau wie Sie auf dem Server getan haben.

$ sudo apt installieren Sie Knockd 

Senden Sie nach Abschluss der Installation die Klopfsequenz mit der gezeigten Syntax

$ Knock -v Server_ip Knock_Sequence 

In unserem Fall bedeutet dies:

$ knock -v 192.168.2.105 10005 10006 10007 

Sie sollten je nach Ihrer Sequenz ähnlich wie wir haben, was wir haben. Dies zeigt, dass die Klopfversuche erfolgreich waren.

Klopfsequenz

Zu diesem Zeitpunkt sollten Sie in der Lage sein, sich mit SSH erfolgreich bei dem Server anzumelden.

Stellen Sie mit Knockd eine Verbindung zum Server her

Sobald Sie Ihren Job auf dem Remote -Server erledigt haben, schließen Sie den SSH -Port, indem Sie die Schließklopfsequenz senden.

$ knock -v 192.168.2.105 10007 10006 10005 

Alle Versuche, sich beim Server anzumelden.

SSH -Ports schließen
Gedanken schließen

Dadurch werden diese Anleitung abgeschlossen, wie Sie Port einsetzen können, um den SSH -Dienst auf Ihrem Server zu sichern. Ein besserer und einfacherer Ansatz wäre die Konfiguration der SSH -Authentifizierung der Kennwort mithilfe von SSH -Schlüsselpaaren. Dies stellt sicher, dass sich nur der Benutzer mit dem privaten Schlüssel mit dem Server authentifizieren kann, auf dem der öffentliche Schlüssel gespeichert ist.