So sichern Sie den SSH -Server in Ubuntu Top 10.Top 10 von grundlegend bis fortgeschritten

So sichern Sie den SSH -Server in Ubuntu Top 10.Top 10 von grundlegend bis fortgeschritten
Wie alle anderen Server ist auch der SSH -Server anfällig für nicht autorisierte Zugriffsversuche. Wenn Sie also einen SSH -Server verwenden möchten, müssen Sie daher überlegt haben, ihn zuerst zu sichern, um sich auf längere Sicht vor einer unerwünschten Situation zu retten. Im Allgemeinen wird der Begriff „Sicherung eines Servers“ auch als „Härten eines Servers“ bezeichnet.Dies kann durch mehrere Maßnahmen erfolgen. Diese Maßnahmen hängen von dem Sicherheitsniveau ab, den Sie benötigen.

Die Maßnahmen zur Sicherung des SSH -Servers reichen von grundlegend bis fortgeschritten. Sie können eine der vorgeschriebenen Maßnahmen überspringen, wenn Sie über ausreichende Kenntnisse über die Konsequenzen verfügen und wenn Sie sich in einer guten Position befinden, um sich ihnen zu stellen. Außerdem können wir nie sagen, dass ein einziger Schritt eine Sicherheit von 100% sicherstellt, oder ein bestimmter Schritt ist besser als der andere.

Es hängt alles davon ab, welche Art von Sicherheit wir tatsächlich benötigen. Daher beabsichtigen wir heute, Ihnen einen sehr tiefen Einblick in die grundlegenden und erweiterten Schritte zur Sicherung eines SSH -Servers in Ubuntu 20 zu geben.04. Abgesehen von diesen Methoden werden wir auch einige zusätzliche Tipps zur Sicherung Ihres SSH -Servers als Bonus mit Ihnen teilen. Lassen Sie uns mit der heutigen interessanten Diskussion beginnen.

Methode zur Sicherung des SSH -Servers in Ubuntu 20.04:

Alle SSH -Konfigurationen werden in der Datei/etc/ssh/sshd_config gespeichert. Diese Datei wird für die normale Funktion Ihres SSH -Servers als sehr entscheidend angesehen. Bevor Sie Änderungen an dieser Datei vornehmen, wird daher dringend empfohlen, eine Sicherung dieser Datei zu erstellen, indem Sie den folgenden Befehl in Ihrem Terminal ausführen:

sudo cp/etc/ssh/sshd_config/etc/ssh/sshd_config.Bak


Wenn dieser Befehl erfolgreich ausgeführt wird, werden Sie nicht mit Ausgabe präsentiert, wie im Bild unten gezeigt:

Nach dem Erstellen einer Sicherung dieser Datei ist dieser Schritt optional und wird durchgeführt, wenn Sie alle Optionen überprüfen möchten, die derzeit in dieser Konfigurationsdatei aktiviert sind. Sie können es überprüfen, indem Sie den folgenden Befehl in Ihrem Terminal ausführen:

sudo sshd -t


Die derzeit aktivierten Optionen der SSH -Konfigurationsdatei sind im Bild unten angezeigt. Sie können diese Liste nach unten scrollen, um alle Optionen anzuzeigen.

Jetzt können Sie mit der Sicherung Ihres SSH -Servers beginnen, während Sie sich von den grundlegenden Schritten zu den erweiterten Schritten in Ubuntu 20 bewegen.04.

Grundlegende Schritte zur Sicherung des SSH -Servers in Ubuntu 20.04:

Die grundlegenden Schritte zur Sicherung eines SSH -Servers in Ubuntu 20.04 sind wie folgt:

Schritt 1: Öffnen der SSH -Konfigurationsdatei:

Sie können die SSH -Konfigurationsdatei öffnen, indem Sie den unten in Ihrem Terminal angegebenen Befehl ausführen:

sudo nano/etc/ssh/sshd_config


Die SSH -Konfigurationsdatei wird im folgenden Bild angezeigt:

Schritt 2: Deaktivieren der kennwortbasierten Authentifizierung:

Anstatt Passwörter zur Authentifizierung zu verwenden, werden SSH -Tasten als sicherer angesehen. Wenn Sie die SSH-Tasten für die Authentifizierung generiert haben, müssen Sie daher eine kennwortbasierte Authentifizierung deaktivieren. Dafür müssen Sie die Variable „PasswordAuthentication“ finden, sie in Überzeugung und den Wert „Nein“ einstellen, wie in dem unten gezeigten Bild hervorgehoben:

Schritt 3: Ablehnen/ Ablehnung leerer Passwörter:

Manchmal finden Benutzer es äußerst bequem, leere Passwörter zu erstellen, um sich vor dem Auswendiglernen komplexer Passwörter zu speichern. Diese Praxis kann sich als schädlich für die Sicherheit Ihres SSH -Servers erweisen. Daher müssen Sie alle Authentifizierungsversuche mit leeren Passwörtern ablehnen. Dazu müssen Sie die Variable „Erläuterungspasswörter“ finden und sie nur in Überzeugung überzeugen, da der Wert bereits standardmäßig auf „Nein“ eingestellt ist, wie im folgenden Bild hervorgehoben:

Schritt Nr. 4: Verbot der Root -Login:

Sie sollten die Stammanmeldungen ausschließlich verbieten, um einen Eindringling vor dem Zugriff auf Ihren Server zu schützen. Sie können dies tun, indem Sie die Variable „Genehmigungsrootlogin“ finden, sie überzeugen und ihren Wert auf "Nein" festlegen, wie in dem unten gezeigten Bild hervorgehoben:

Schritt 5: Verwenden von SSH -Protokoll 2:

SSH Server kann auf zwei verschiedenen Protokollen arbeiten, ich.e., Protokoll 1 und Protokoll 2. Protokoll 2 implementiert fortschrittlichere Sicherheitsfunktionen, weshalb es gegenüber Protokoll 1 bevorzugt wird. Protokoll 1 ist jedoch das Standardprotokoll von SSH und wird in der SSH -Konfigurationsdatei nicht explizit erwähnt. Wenn Sie also mit Protokoll 2 anstelle von Protokoll 1 arbeiten möchten, müssen Sie die Zeile „Protokoll 2“ explizit zu Ihrer SSH -Konfigurationsdatei hinzufügen, wie sie im folgenden Bild hervorgehoben sind:

Schritt 6: Setzen Sie eine Sitzungs -Zeitüberschreitung:

Manchmal lassen die Benutzer ihre Computer sehr lange unbeaufsichtigt. In der Zwischenzeit kann jeder Eindringling vorbeikommen und Zugang zu Ihrem System erhalten und gleichzeitig gegen seine Sicherheit verstoßen. Hier kommt das Konzept der Sitzungszeitüberschreitung ins Spiel. Diese Funktion wird verwendet, um einen Benutzer anzumelden, wenn er lange inaktiv bleibt, damit kein anderer Benutzer Zugriff auf sein System erhalten kann.

Diese Zeitüberschreitung kann festgelegt werden, indem die Variable „clientaliveInterval“ aufgeführt ist, sie übernimmt und ihm jeden Wert (in Sekunden) Ihrer Wahl zuweisen. In unserem Fall haben wir ihm den Wert von "300 Sekunden" oder "5 Minuten" zugewiesen. Wenn der Benutzer „300 Sekunden“ vom SSH -Server fernhält, wird er automatisch als hervorgehoben in dem unten gezeigten Bild ausgeloggt:

Schritt 7: Ermöglichen, dass bestimmte Benutzer auf den SSH -Server zugreifen:

Der SSH -Server ist kein Server, dessen Zugriff von jedem anderen Benutzer verlangt wird. Daher muss sein Zugriff nur auf diejenigen Benutzer beschränkt sein, die ihn tatsächlich benötigen. Damit bestimmte Benutzer auf den SSH -Server zugreifen können, müssen Sie der SSH -Konfigurationsdatei eine Variable mit dem Namen „Zulässer“ hinzufügen und dann die Namen aller Benutzer schreiben, die Sie auf den SSH -Server zulassen möchten, der durch einen Speicherplatz getrennt ist. In unserem Fall wollten wir nur einem Benutzer erlauben, auf den SSH -Server zuzugreifen. Deshalb haben wir seinen Namen nur so hinzugefügt, wie im folgenden Bild hervorgehoben:

Schritt 8: Begrenzung der Anzahl der Authentifizierungsversuche:

Immer wenn ein Benutzer versucht, auf einen Server zuzugreifen, und er sich zum ersten Mal nicht authentifizieren kann, versucht er es erneut zu tun, es erneut zu tun. Der Benutzer unternimmt diese Versuche weiter, bis er sich nicht authentifizieren kann, damit er Zugriff auf den SSH -Server erlangt. Dies wird als sehr unsichere Praxis angesehen, da ein Hacker möglicherweise einen Brute -Force -Angriff startet (ein Angriff, der wiederholt versucht, ein Passwort zu erraten, bis die richtige Übereinstimmung gefunden wird). Folgend kann er Zugriff auf Ihren SSH -Server erhalten.

Aus diesem Grund wird dringend empfohlen, die Anzahl der Authentifizierungsversuche zu begrenzen, um das Erraten von Passkassern zu verhindern. Der Standardwert der Authentifizierungsversuche zum SSH -Server wird auf "6" gesetzt. Sie können es jedoch je nach Sicherheitsniveau ändern, die Sie benötigen. Dafür müssen Sie die Variablen „MaxAuthtries“ lokalisieren, sie übernehmen und ihren Wert auf jede gewünschte Zahl einstellen. Wir wollten die Authentifizierungsversuche auf „3“ einschränken, wie in dem unten gezeigten Bild hervorgehoben:

Schritt 9: Ausführen des SSH -Servers im Testmodus:

Inzwischen haben wir alle grundlegenden Schritte unternommen, um unseren SSH -Server auf Ubuntu 20 zu sichern.04. Wir müssen jedoch weiterhin sicherstellen, dass die von uns gerade konfigurierten Optionen ordnungsgemäß funktionieren. Dafür speichern und schließen wir zuerst unsere Konfigurationsdatei. Danach werden wir versuchen, unseren SSH -Server im Testmodus auszuführen. Wenn es im Testmodus erfolgreich ausgeführt wird, bedeutet dies, dass Ihre Konfigurationsdatei keine Fehler gibt. Sie können Ihren SSH -Server im Testmodus ausführen, indem Sie den folgenden Befehl in Ihrem Terminal ausführen:

sudo sshd -t


Wenn dieser Befehl erfolgreich ausgeführt wird. Wenn jedoch Fehler in Ihrer Konfigurationsdatei auftreten, wird diese Fehler auf dem Terminal ausgeführt. Sie sollen dann diese Fehler beheben. Nur dann können Sie weiter fortfahren.

Schritt 10: Laden Sie den SSH -Server mit neuen Konfigurationen neu:

Wenn der SSH -Server im Testmodus erfolgreich ausgeführt wird, müssen wir ihn neu laden, damit die neue Konfigurationsdatei gelesen werden kann, i.e., Die Änderungen, die wir an der SSH -Konfigurationsdatei in den oben gezeigten Schritten vorgenommen haben. Um den SSH -Server mit neuen Konfigurationen neu zu laden, müssen Sie den folgenden Befehl in Ihrem Terminal ausführen:

sudo Service SSHD Reload


Wenn Ihr SSH -Server erfolgreich neu gestartet wird, zeigt das Terminal keine Ausgabe an, wie im folgenden Bild gezeigt:

Erweiterte Schritte zur Sicherung des SSH -Servers in Ubuntu 20.04:

Nachdem Sie alle grundlegenden Schritte für die Sicherung des SSH -Servers in Ubuntu 20 durchgeführt haben.04, Sie können endlich zu den fortgeschrittenen Schritten gehen. Dies ist nur ein Schritt weiter, um Ihren SSH -Server zu sichern. Wenn Sie jedoch nur ein moderates Sicherheitsniveau erreichen möchten, sind die oben beschriebenen Schritte ausreichend. Wenn Sie jedoch etwas weiter gehen möchten, können Sie die unten erläuterten Schritte ausführen:

Schritt 1: Öffnen Sie das ~//.SSH/Autorized_Keys -Datei:

Die grundlegenden Schritte zur Sicherung des SSH -Servers werden in der SSH -Konfigurationsdatei implementiert. Dies bedeutet, dass diese Richtlinien allen Benutzern, die versuchen, auf den SSH -Server zuzugreifen. Dies impliziert auch, dass die grundlegenden Schritte eine generische Methode zur Sicherung des SSH -Servers darstellen. Wenn wir jedoch versuchen, das Prinzip der „Verteidigung eingehend“ zu berücksichtigen, werden wir erkennen, dass wir jeden einzelnen SSH -Schlüssel separat sichern müssen. Dies kann durch Definieren explizite Sicherheitsparameter für jeden einzelnen Schlüssel erfolgen. Die SSH -Tasten werden im ~/ gespeichert.SSH/Autorized_Keys -Datei, sodass wir zunächst auf diese Datei zugreifen, um die Sicherheitsparameter zu ändern. Wir werden den folgenden Befehl im Terminal ausführen, um auf das ~/ zuzugreifen.SSH/Autorized_Keys -Datei:

sudo nano ~/.ssh/autorized_keys

Das Ausführen dieses Befehls wird die angegebene Datei mit dem Nano -Editor geöffnet. Sie können jedoch auch jeden anderen Texteditor Ihrer Wahl verwenden, um diese Datei zu öffnen. Diese Datei enthält alle SSH -Tasten, die Sie bisher generiert haben.

Schritt 2: Definieren spezifischer Konfigurationen für bestimmte Schlüssel:

Um ein fortgeschrittenes Sicherheitsniveau zu erreichen, sind die folgenden fünf Optionen verfügbar:

  • Nicht-Agent-Vorspannung
  • No-Port-Vorspannung
  • No-Pty
  • No-User-RC
  • No-X11-Vorspannung

Diese Optionen können vor einem SSH -Schlüssel Ihrer Wahl geschrieben werden, um sie für diesen bestimmten Schlüssel zur Verfügung zu stellen. Auch mehr als eine Option kann für einen einzelnen SSH -Schlüssel konfiguriert werden. Beispielsweise möchten Sie die Portweiterleitung für einen bestimmten Schlüssel deaktivieren, oder mit anderen Worten, Sie möchten für einen bestimmten Schlüssel no-port-vorwärts implementieren, dann ist die Syntax wie folgt:

No-Port-Vorspannung Wünschend

Hier haben Sie anstelle des gewünschten STHKEKY einen tatsächlichen SSH -Schlüssel in Ihrem ~/ haben.ssh/autorized_keys Datei. Nachdem Sie diese Optionen für die gewünschten SSH -Tasten angewendet haben, müssen Sie das ~/ speichern.ssh/autorized_keys Datei und schließen Sie sie. Ein Gutes über diese erweiterte Methode ist, dass Sie Ihren SSH -Server nach diesen Änderungen nicht neu laden müssen. Vielmehr werden diese Änderungen automatisch von Ihrem SSH -Server gelesen.

Auf diese Weise können Sie jede SSH -Tiefe eingehend sichern, indem Sie die erweiterten Sicherheitsmechanismen anwenden.

Einige zusätzliche Tipps zur Sicherung des SSH -Servers in Ubuntu 20.04:

Abgesehen von all den grundlegenden und fortgeschrittenen Schritten, die wir oben unternommen haben, gibt es auch einige zusätzliche Tipps, die sich als sehr gut erweisen können, um den SSH -Server in Ubuntu 20 zu sichern.04. Diese zusätzlichen Tipps wurden unten erörtert:

Halten Sie Ihre Daten verschlüsselt:

Die Daten, die sich auf Ihrem SSH -Server befinden, sowie die, die im Transport bleiben, müssen verschlüsselt werden, und auch das mit einem starken Verschlüsselungsalgorithmus. Dies schützt nicht nur die Integrität und Vertraulichkeit Ihrer Daten, sondern verhindert auch, dass die Sicherheit Ihres gesamten SSH -Servers gefährdet wird.

Halten Sie Ihre Software auf dem neuesten Stand:

Die Software, die auf Ihrem SSH -Server ausgeführt wird. Dies geschieht, um sicherzustellen, dass keine Sicherheitsfehler in Ihrer Software unbeaufsichtigt bleiben. Vielmehr sollten sie rechtzeitig gut gepatcht werden. Dies speichert Sie auf lange Sicht vor potenziellen Schäden und verhindert auch, dass Ihr Server aufgrund von Sicherheitsproblemen nicht mehr ausfällt oder nicht verfügbar ist.

Stellen Sie sicher, dass Selinux aktiviert ist:

Selinux ist der Mechanismus, der den Grundstein der Sicherheit innerhalb der Linux -basierten Systeme legt. Es funktioniert durch die Implementierung der obligatorischen Zugriffskontrolle (MAC). Es implementiert dieses Zugriffskontrollmodell, indem es die Zugriffsregeln in seiner Sicherheitsrichtlinie definiert. Dieser Mechanismus ist standardmäßig aktiviert. Die Benutzer dürfen diese Einstellung jedoch jederzeit ändern. Es bedeutet, dass sie Selinux deaktivieren können, wann immer sie wollen. Es wird jedoch dringend empfohlen, dass Sie Selinux immer aktiviert halten, damit Ihr SSH -Server von allen potenziellen Schäden vorhanden ist.

Verwenden Sie strenge Passwortrichtlinien:

Wenn Sie Ihren SSH -Server mit Passwörtern geschützt haben, müssen Sie starke Kennwortrichtlinien erstellen. Idealerweise sollten die Passwörter mehr als 8 Zeichen lang sein. Sie sollten nach einer bestimmten Zeit nach allen 2 Monaten geändert werden. Sie sollten keine Wörterbuchwörter enthalten; Sie sollten vielmehr eine Kombination aus Alphabeten, Zahlen und Sonderzeichen sein. In ähnlicher Weise können Sie einige andere extra strenge Maßnahmen für Ihre Passwortrichtlinien definieren, um sicherzustellen, dass sie stark genug sind.

Überwachen und pflegen Sie die Audit -Protokolle Ihres SSH -Servers:

Wenn mit Ihrem SSH -Server etwas schief geht, kann Ihr erster Helfer die Prüfprotokolle sein. Daher müssen Sie diese Protokolle beibehalten, damit Sie die Hauptursache des Problems zurückverfolgen können. Wenn Sie die Gesundheit und Arbeit Ihres SSH -Servers kontinuierlich weiter überwachen, verhindern dies auch, dass alle wichtigen Probleme überhaupt erst auftreten.

Behalten Sie regelmäßige Sicherungen Ihrer Daten bei:

Zu guter Letzt sollten Sie immer eine Sicherung Ihres gesamten SSH -Servers beibehalten. Dies speichert nicht nur, dass Ihre Daten beschädigt oder vollständig verloren gehen. Vielmehr können Sie diesen Backup -Server auch verwenden, wenn Ihr Hauptserver ausfällt. Dies schränkt auch die Ausfallzeit des Servers ein und gewährleistet die Verfügbarkeit.

Abschluss:

Durch die Pflege aller in diesem Artikel vorgeschriebenen Maßnahmen können Sie Ihren SSH -Server in Ubuntu 20 leicht sichern oder verhärten.04. Wenn Sie jedoch aus einem Hintergrund der Informationssicherheit stammen, müssen Sie sich dieser Tatsache bewusst sein, dass es nichts Schöneres als 100% Sicherheit gibt. Alles, was wir bekommen können, ist das beste Versprechen, und diese beste Anstrengung wird nur bis zu dem Zeitpunkt sicher sein, wenn es auch verletzt wird. Deshalb können Sie auch nach all diesen Maßnahmen nicht sagen, dass Ihr SSH -Server zu 100% sicher ist. Vielmehr kann es immer noch solche Schwachstellen haben, an die Sie noch nie gedacht hätten können. Solche Sicherheitslücken können nur darauf geachtet werden, wenn wir unseren SSH -Server sehr im Auge behalten und ihn immer wieder aktualisieren, wann immer dies erforderlich ist.