SSH Public Key Authentifizierung unter Linux

SSH Public Key Authentifizierung unter Linux

In diesem Tutorial wird erklärt.

Nach dem Lesen dieses Tutorials wissen Sie, wie Sie Ihren SSH -Zugriff mithilfe der Schlüsselauthentifizierung konfigurieren. Nach den praktischen Anweisungen finden Sie Informationen zum wichtigsten Authentifizierungsprozess, den Vor- und Nachteilen über die Kennwortauthentifizierung.

Konfigurieren der SSH -Schlüsselauthentifizierung unter Linux

Zunächst müssen Sie öffentliche und private Schlüssel generieren. Private und öffentliche Schlüssel werden gleichzeitig von demselben Gerät generiert und dann mit Geräten gemeinsam.

In diesem Beispiel generieren wir Authentifizierungsschlüssel von einem Client mit dem Befehl ssh-keygen und senden dann den öffentlichen Schlüssel an den Server, um Verbindungen zwischen ihnen zu ermöglichen.

Um die Schlüssel zu generieren, müssen Sie sich anmelden, um sich der Benutzer zu verbinden. In diesem Tutorial ist der Benutzer, der sowohl im Server als auch im Client erstellt wurde.

Nachdem Sie den Befehl ssh-keygen ausgeführt haben, werden Sie mit dem Vorgang gefragt, in welcher Datei Sie die Taste speichern möchten. Drücken Sie die Eingabetaste, um den Standardpunkt zu hinterlassen (~/.ssh/id_rsa).

Sie werden auch nach einer Passphrase gebeten, um Ihren Schlüssel zu verschlüsseln. Dies wird empfohlen, aber die meisten wichtigen authentifizierten Geräte verwenden es nicht. Sie können eine Passphrase eingeben und die Eingabetaste drücken, oder Sie können einfach die Eingabetaste drücken, sodass das Feld leer ist, um zu vermeiden, dass Sie Ihre Taste verschlüsseln können.

Um sowohl öffentliche als auch private Schlüssel zu generieren, führen Sie den folgenden Befehl aus.

Notiz: Im folgenden Beispiel sehen Sie in meinem Fall, dass ich bereits eine Schlüsselauthentifizierung hatte, und der Prozess fragt mich, ob ich den vorherigen Schlüssel überschreiben möchte. Wenn Sie keinen vorherigen Schlüssel hatten, können Sie ihn ignorieren.

$ ssh-keygen

Sehen Sie, wie Sie können, die Schlüssel wurden korrekt erzeugt.

Wie bereits erläutert, müssen Sie nach dem Generieren Ihrer Schlüssel vom Client den öffentlichen Schlüssel an den Server senden, mit dem Sie eine Verbindung herstellen möchten. Um den öffentlichen Schlüssel mit dem Server zu teilen, können Sie den Befehl SSH-Copy-ID verwenden, gefolgt von dem Benutzernamen, den Sie als Verbindung herstellen möchten, und die Server-IP-Adresse, wie unten gezeigt.

$ ssh-copy-id [email protected]

Der Schlüssel wurde auf dem Server ordnungsgemäß installiert. Jetzt können Sie eine Verbindung über SSH herstellen, gefolgt von der unten gezeigten Benutzernamen- und Server -IP -Adresse.

$ SSH [email protected]

In meinem Fall tippte ich eine Passphrase beim Generieren von Schlüssel ein. Wenn ich also versuche, auf einen Schlüssel zuzugreifen, bin ich aufgefordert, die Passphrase einzugeben. Wenn Sie beim Erzeugen von Schlüssel auch eine Passphrase eingegeben haben, füllen Sie das Feld und drücken Sie die Entsperren, um eine Verbindung herzustellen.

Wie Sie im folgenden Screenshot sehen können, wurde die Verbindung erfolgreich hergestellt.

Deaktivieren der Kennwortauthentifizierung

Jetzt haben Sie die SSH -Authentifizierung der SSH -öffentlichen Schlüssel unter Linux aktiviert. Um dies zu erreichen, müssen Sie die SSH -Konfigurationsdatei/etc/ssh/sshd_config bearbeiten.

Sie können den folgenden Befehl verwenden, um/etc/ssh/sshd_config mit dem Nano -Texteditor zu bearbeiten.

$ sudo nano/etc/ssh/sshd_config

Suchen Sie die Zeile mit PasswordAuthentication Ja In dem Screenshot unten gezeigt.

Bearbeiten Sie die Zeile,

PasswortAuthentication Ja

Ändern Sie es in:

PasswortAuthentication -Nr

Speichern und beenden Sie die Datei. Wenn Sie Nano zum Bearbeiten der Datei verwendet haben, können Sie Strg+X drücken, um Speicheränderungen zu beenden.

Um die Änderungen anzuwenden, müssen Sie den SSH -Service neu starten. Führen Sie dazu den Befehl unten aus.

$ sudo systemctl neu starten ssh neu starten

Ihre Passwort -Anmeldung ist deaktiviert und Sie können eine Verbindung über die Schlüsselauthentifizierung herstellen.

Stammanmeldung deaktivieren

Das Deaktivieren der Root -Anmeldung ist auch eine großartige Möglichkeit, die Sicherheit der Systeme zu erhöhen. Der Root -Benutzer ist universell und anfällig für Brute -Force -Angriffe. Auf diese Weise können Sie jeder daran hindern.

Sie können die Stammanmeldung deaktivieren, indem Sie dieselbe Datei bearbeiten/etc/ssh/sshd_config wie unten gezeigt.

$ nano/etc/ssh/sshd_config

Finden Sie die Linie, die enthält Erlaubnisrootlogin Ja unten gezeigt.

Bearbeiten Sie die folgende Zeile:

Erlaubnisrootlogin Ja

Ändern Sie es in:

Erläuterung Nr

Beenden Sie die Änderungen des Speicherns durch Drücken von Strg+x.

Starten Sie den SSH -Service neu:

$ sudo systemctl neu starten ssh neu starten

Ihre Root -Anmeldung ist deaktiviert.

Passwort gegen Schlüsselauthentifizierungsmethoden

Wie Sie sehen können, ist der wichtigste Authentifizierungsprozess einfach zu implementieren. Wenn Sie sich bei dem Server anmelden, mit dem Sie eine Verbindung herstellen möchten, bleibt Ihr privater Schlüssel in Ihrem System sicher und wird nicht an den Server gesendet. Stattdessen sendet der Server seinen öffentlichen Schlüssel an den Client, in dem die Authentifizierung stattfindet.

Es gibt Gründe, warum einige Benutzer sich für die wichtigste Authentifizierung und andere für die Anmeldung des Kennworts entscheiden.

Einige Benutzer wählen eine wichtige Authentifizierungsmethode aus, da sie automatisch Schlüssel generiert, die stärker sind als von Menschen hergestellte Passwörter. Darüber hinaus werden private Schlüssel nicht an den Server geliefert. Sie sind nicht anfällig für Mann-in-the-Middle-Angriffe. Bei Verwendung der Schlüsselauthentifizierung dürfen nur Geräte mit dem privaten Schlüssel eine Verbindung herstellen, wodurch die Sicherheit erhöht wird.

Andererseits wählen einige Benutzer eine Passwort -Anmeldung, da sie von jedem Gerät herstellen dürfen. Kennwortanmeldeinformationen sind auch einfacher zu verteilen, wenn Sie viele Benutzer haben, um zu administrieren.

Abschluss

Wie Sie können. Darüber hinaus erfordert die Deaktivierung der Kennwortauthentifizierung nur ein Ja ohne Nein in der SSH -Konfigurationsdatei und das Neustart des Dienstes. Andere Methoden zur Erhöhung Ihrer SSH-Sicherheit können unter Deaktivieren von Root SSH- und Linux-Zwei-Faktor-Authentifizierungs-Tutorials gelernt werden.

Ich hoffe.