ssh

SSH-Schlüssel unter Linux generieren

SSH-Schlüssel unter Linux generieren

SSH steht für Ssicher Schell, und wie der Name schon sagt, wird es verwendet, um eine sichere Verbindung zwischen dem Client und seinem Server herzustellen. Standardmäßig unterstützt jedes Linux-basierte Betriebssystem SSH. Das SSH-Protokoll wird in der Regel für den Fernzugriff auf, die Befehle und die Übertragung von Dateien verwendet. In diesem Beitrag demonstrieren Sie also, wie Sie SSH-Schlüssel generieren und sie verwenden, um den Server und wertvolle Informationen zu schützen.

SSH-Schlüsselgenerierung

Wenn wir ein SSH-Schlüsselpaar generieren, wird es in zwei Schritten generiert. Eine ist die Erstellung eines SSH-Schlüssels auf der Client-Seite und die zweite ist das Kopieren auf den Server oder einen entfernten Host. Ein Schlüsselpaar besteht aus privaten und öffentlichen Schlüsseldateien namens id_rsa und id_rsa.Kneipe bzw. im ~/.ssh-Verzeichnis.

Die IP-Adresse meines Client-Systems lautet

$ ip a

192.168.18.130

Ein SSH-Schlüssel kann durch Ausführen des Befehls „ssh-keygen“ im Terminal generiert werden.

$ ssh-keygen

Es fordert Sie auf, den Dateinamen einzugeben, in dem Sie den privaten und öffentlichen Schlüssel speichern möchten, oder Sie können mit den standardmäßig ausgewählten Dateien „id_rsa“ und „id_rsa“ gehen.Kneipe“ in der „.ssh“-Verzeichnis (/home/user/.ssh/id_rsa). Drücken Sie die Eingabetaste, um die standardmäßig bereitgestellte Datei auszuwählen.

Als nächstes wird nach der Passphrase gefragt. Eine Passphrase ist eigentlich eine Art zusätzliche Sicherheitsschicht zur Sicherung der Verbindung zwischen Host und Client. Wenn Sie sich beim Host anmelden, wird erneut nach der Passphrase gefragt. Geben Sie also entweder die Passphrase ein oder lassen Sie sie leer und drücken Sie die Eingabetaste, ohne eine Passphrase anzugeben.

Sobald Sie mit der Passphrase fertig sind, sollte der SSH-Schlüssel generiert werden.

Sie können im Screenshot erkennen, dass der generierte Schlüssel „RSA 3072“ ist. Was bedeutet das?

Algorithmustyp und Größe des SSH-Schlüssels

Der Algorithmustyp des generierten Schlüssels ist standardmäßig RSA und seine Bitgröße beträgt 3072 Bit. Aber du kannst es ändern, wenn du willst.

Es gibt drei Haupttypen von Algorithmen zum Generieren von SSH-Schlüsseln.

RSA - Rivest Shamir Adleman. Es ist ein Schlüssel mit einer Mindestgröße von 2048 und basiert auf der Schwierigkeit, große Zahlen zu faktorisieren.

DSA - Digitaler Signaturalgorithmus. Dieser Schlüssel wird meistens mit der Größe 1024 verwendet.

ECDSA - Digitaler Signaturalgorithmus für elliptische Kurven. Es unterstützt 256, 384 und 521 Bit.

Wenn Sie nun Ihren gewünschten Algorithmustyp und die gewünschte Bitgröße angeben möchten, können Sie den Algorithmustyp gefolgt von der -t-Phrase nach dem ssh-keygen-Befehl angeben, und Sie können auch die Bitgröße zusammen mit diesem gefolgt von -b . angeben Phrase. Das Beispiel ist wie folgt,

$ ssh-keygen -t rsa -b 4096

Wie Sie im Screenshot sehen können, ist der Algorithmustyp des Schlüssels RSA und die Bitgröße beträgt 4096. Das ist großartig.

Kopieren des SSH-Schlüssels auf den Host

Sie können den SSH-Schlüssel einfach auf den Host kopieren, indem Sie den unten angegebenen Befehl im Terminal des Clients ausführen.

$ ssh-copy-id username@host-ip-address

Stellen Sie sicher, dass Sie den Benutzernamen und die Host-IP-Adresse durch Ihren Benutzernamen und die IP-Adresse des Hosts ersetzen. Der Benutzername und die IP-Adresse meines Hosts sind

Benutzername: linuxuser
IP-Adresse: 192.168.18.131

Zu diesem Zeitpunkt kann es zu einem Fehler bei der von Port 22 abgelehnten Verbindung kommen. Im Fehlerfall besuchen Sie bitte unseren speziellen Artikel (So beheben Sie: Verbindung verweigert von Port 22 Debian/Ubuntu - Linux-Hinweis) zur Behandlung eines solchen Fehlers.

Nachdem Sie den obigen Befehl ausgeführt haben, wird die Fortsetzung der Verbindung von Ihnen bestätigt. Geben Sie "ja" ein, um fortzufahren.

Sobald es erfolgreich kopiert wurde, können Sie sich mit dem SSH-Schlüssel am Computer des Servers anmelden.

Melden Sie sich beim Server an

Nachdem wir den SSH-Schlüssel erfolgreich auf den Host kopiert haben, können wir uns mit dem ssh-Befehl beim Host anmelden und den Benutzernamen und die IP-Adresse des Hosts mit der folgenden Syntax angeben.

$ ssh-Benutzername@Host-IP-Adresse

Vergessen Sie nicht, den Benutzernamen und die IP-Adresse durch den Benutzernamen und die IP-Adresse Ihres Hosts zu ersetzen.

Und hier sind Sie jetzt beim Rechner des Hosts angemeldet, wenn Sie den Befehl „ip a“ in das Terminal eingeben.

$ ip a

Es wird die IP-Adresse des Host-Rechners angezeigt, da Sie sich gerade auf dem Server befinden.

Einpacken

So können Sie SSH-Schlüssel generieren, auf den Host-Rechner kopieren und mit den SSH-Schlüsseln auf den Host zugreifen. Ich danke dir sehr!

Python-Befehlszeilen-Parsing-Tutorial
Beim Parsen wird eine Reihe von Texten analysiert, um herauszufinden, was das Programm mit den gegebenen Befehlen tun soll. Der Text wird in kleine St...
Virtuelle Umgebungen in Python 3
Wie die meisten Menschen hasse ich es, unnötige Pakete auf meiner Workstation zu installieren. Nachdem Sie mit ihnen fertig sind, reicht es nie aus, s...
Anmelden bei Websites mit Python
Die Login-Funktion ist eine wichtige Funktion in den heutigen Webanwendungen. Diese Funktion hilft, spezielle Inhalte von Nicht-Benutzern der Website ...