OpenSSH – Login ohne Passwort mit öffentlichen und privaten SchlüsselKeys

Inhalt

Beschreibung

In diesem Artikel wird die Einrichtung einer SSH Verbindung unter der Verwendung von öffentlichen und privaten RSA Schlüssel Zertifikaten beschrieben. 

Hersteller OpenBSD Foundation
Autor(en) ohne
Lizenz Opne Source
OS Linux – Ubuntu Studio 16.04.5 lts
Openhabian 2.3.0-1
Kernel Linux WS-WYN-STUD01 4.4.0-138-lowlatency #164-Ubuntu SMP PREEMPT Tue Oct 2 18:11:47 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
Linux openHABianPi 4.9.80-v7+ #1098 SMP Fri Mar 9 19:11:42 GMT 2018 armv7l GNU/Linux
Funktion io
Status open

Installationsvoraussetzung

Es wurde hier auf ein bestehendes Ubuntu Studio 16.04.05 lts und einer OpenHABianPi Installation zurückgegriffen.

Auf dem Ubuntu Rechner wurde die aktuelle Version von OpenSSH nachinstalliert und der Root Zugang aktiviert werden.

Installation

Server – Root SSH Zugang auf dem Ubuntu Server installieren und aktivieren (1)

In der sshd_config die folgende Zeile abändern, und root ein Passwort verpassen (ohne dem kein Login)

ändern in 

Den SSH Dienst neu starten

Für den Benutzer root ein Passwort vergeben

Konfiguration

Client – Auf openHABian RSA Schlüssel Zertifikate erstellen (2, 3)

Mit dem im SSH Server Paket enthaltenen Tool ssh-keygeyn müssen der private und der öffentliche, über den Parameter -t kann die Art des Schlüssels bestimmt werden (hier nun RSA mit 4096 bit) 

Es folgt die Abfrage zum Speicherortes: Der private Schlüssel befindet sich standardmäßig im Home Verzeichnis des Benutzers unter .ssh/id_rsa, der öffentliche Schlüssel unter .ssh/id_rsa.pub. Nach Bestätigung des Speicherortes wird die Passphrase zum Schutz der Schlüssel abgefragt.

Für eine spätere Anmeldung ohne Passwort oder besser Passphrasen Abfrage, wird hier dieser Punkt durch “geentert”. Sollten die Schlüssel nicht mit durch eine Passphrase geschützt werden, muss der Server System durch andere Mechanismen gegen Mißbrauch geschützt werden!

Mit folgenden Befehl kann man sich das Zertifikat anschauen

Wenn das Zertifikat verschlüssel ist, ist dies durch die zwei Zeile zu erkennen:

Wurde die Passphrase nicht vergebe sein, beginnt in der zweiten Zeile gleich das Zertifikat:

Das öffentliche Schlüssel Zertifikat auf den Remote Server kopieren

Das kopieren muss nicht von Hand erfolgen und kann über das mitgelieferte Tool ssh-copy-id erfolgen. Die Systax hiervon ist sehr einfach:

Nach Eingabe des Benutzer Passwortes beginnt die Übertragung

Der öffentliche Schlüssel wird in folgender Zeile im Home Verzeichniss gespeichert

Bei den Schlüsseldateien ist zu beachten, dass nur der Eigentümer der Datei exklusive Lese- und Schreibrechte besitzt. Sollten diese geändert werden, hagelt es Fehlermeldungen.

Sichern der Schlüssel

Für spätere Verwendung empfiehlt sich eine Sicherung der erstellten Zertifkate

Wenn die Schlüssel zurückgespielt werden, ist wichtig dass auch die Berechtigungen angepasst werden

Die Schlüssel via SSH Agent auf dem Clientvorhalten

Damit die ständige Passphrasen Eingabe einen nicht vollständig den Nerv raubt, können die Schlüssel und die Passphrase über einen SSH Agenten vorgehalten werden. Dazu muss die Software keychain nachinstalliert werden.

Anschließend muss der Start von keychain beim Login eingerichtet werden. Dazu entweder in der Datei .bash_profile oder .profile im Home Verzeichnis folgenden Zusatz anhängen

Nach der Neuanmeldung auf der Konsole sollten folgende neuen Zeilen begrüßen

Ändern der Passphrase des Privaten Schlüssel

Zum ändern der Passphrase des privaten Schlüssel kann folgender Befehl genutzt werden

Fazit

Es darf bei der Verwendung von KEINER Passphrase nicht vergessen werden, den Login auf den Client Maschinen auf z.B. das lokale Netzwerk einzuschränken (4)

Print Friendly, PDF & Email

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

*

Time limit is exhausted. Please reload the CAPTCHA.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.