Mit Hardware-Beschleunigung und schnellem Netz hilft Desktop-Virtualisierung, Administrationsaufwand und Kosten sparen, ADMIN 04/2013 verrät, wie die ... (mehr)

Schlüsselfragen

Windows-Admins und -Anwender können die sichere Public-Key-Authentifizierung auch mit Putty nutzen. Die bei SSH per Default aktive Passwortabfrage ist nämlich nur eine der Möglichkeiten, mit SSH eine Authentifizierung durchzuführen. Die Funktionsweise ist mit der unter Linux identisch, allerdings kommen bei Putty andere Tools und Konfigurationsdateien zum Einsatz. Zur Erinnerung: Unter Linux erzeugt der Admin mit »ssh-keygen -t rsa« (optional »ssh-keygen -t dsa« ) ein neues RSA- oder DSA-Schlüsselpaar aus öffentlichen und privaten Schlüsseln (Abbildung 3).

Abbildung 3: Ein RSA-Schlüsselpaar unter Linux erzeugen.

SSH speichert die Schlüsseldateien unter der Bezeichnung »id_rsa/id_dsa« und »id_rsa.pub« im Unterverzeichnis ».ssh« im Heimatverzeichnis des jeweiligen Benutzers. Der öffentliche Schlüssel wird dagegen an die Datei »$HOME/.ssh/authorized_keys« des Benutzers angehängt. In Gegenrichtung passiert das durch Kopieren des eigenen öffentlichen Schlüssels in das entsprechende Verzeichnis des jeweiligen Benutzers auf den Server mit

ssh-copy-id -i ~/.ssh/id_rsa.pub entfernter nutzername @ IP-AdresseRemote-System

Bei Putty dient das Tool »puttygen.exe« (Putty Key Generator) (anstelle von »ssh-keygen« ) zum Erzeugen von RSA- (Default) oder DSA-Schlüsselpaaren (Abbildung 4). Der Admin findet das Tool zwar auf der Putty-Download-Seite, hat man allerdings zuvor das vollständige Zip-Archiv heruntergeladen und installiert, sollte »puttygen« bereits im Windows-Startmenü unter »Putty« verfügbar sein. Zum Erzeugen eines RSA-Schlüsselpaares genügt ein Klick auf die Schaltfläche »Generate« . Admins, die DSA- oder SSH1-RSA-Schlüssel benötigen, markieren den entsprechenden Typ unmittelbar darunter im Dialog. Für den notwendigen Zufallsfaktor kann der Admin übrigens selbst sorgen, indem er bei der Schlüsselerzeugung im freien Bereich des Dialogfensters die Maus hin- und herbewegt. Anschließend gibt er wie bei »ssh-keygen« unter Linux bei »Key passphrase« das gewünschte Schlüssel-Mantra ein.

Abbildung 4: Ein RSA-Schlüsselpaar unter Putty.

Zum Speichern des Public- und Private-Keys auf dem Client stehen die gleichnamigen Schaltflächen zur Verfügung. Name und Pfad kann der Admin im Datei-Selektor frei wählen. Für Putty-Schlüssel hat sich jedoch die Endung »*.ppk« eingebürgert, als Hinweis auf das vom Linux-Standard abweichende Format. Putty-RSA-Keys sind also zu OpenSSH-Keys nicht kompatibel. Allerdings steht dem Admin im Menü »Conversions« eine Möglichkeit zur Verfügung, vorhandene OpenSSH-Keys zu importieren oder Putty-Keys zu exportieren.

Zum Übertragen des eigenen Public-Keys auf den Server kann der Admin zwar theoretisch WinSCP oder psftp (Putty-SFTP) benutzen, einfacher und schneller ist es aber, den angezeigten Key im Schlüsselfeld vollständig zu markieren und mit [Strg]+[C] in die Zwischenablage zu kopieren. Danach kann sich der Admin noch einmal konventionell via Putty am entfernten Server anmelden, dort einen beliebigen Linux-Editor (zum Beispiel Nano) mit der Datei »/$HOME/.ssh/authorized_keys« öffnen und den Key aus der Zwischenablage einfügen.

Public-Key-Authentifizierung mit Putty

Möchte der Admin beim nächsten Login auf Public-Key-Authentifizierung umschalten, trägt er am Client auf der Putty-Startseite im Bereich »Sessions« die Adresse des gewünschten Hosts ein, klickt im hierarchisch gegliederten Category-Menübaum auf »SSH/Auth« und gibt unter »Private key file for authentication« den Dateinamen seines Private-Keys ein. Den kann er mit einem Klick auf »Browse« im Datei-Selektor auswählen (Abbildung 5).

Abbildung 5: Putty-Keys heißen geringfügig anders.

Optional kann der Admin die Anmeldedaten für jede einzelne Session als Profil speichern. Der Ablauf der Authentifizierung ist dann wiederum unter Linux und Unix identisch. Baut der Admin eine Verbindung zum entfernten Server auf, möchte der einen Beweis, dass der angegebene Benutzer einen in der Datei »authorized_keys« dieses Nutzers am Server gespeicherten öffentlichen Schlüssel besitzt. SSH fordert daher zur Eingabe der Passphrase für das Aktivieren des in der lokalen Datei »id_rsa.ppk« gespeicherten privaten Schlüssels auf. Erst wenn beide Schlüssel zusammenpassen, klappt die Verbindung.

Ähnliche Artikel

comments powered by Disqus

Artikel der Woche

Eigene Registry für Docker-Images

Wer selber Docker-Images herstellt, braucht auch eine eigene Registry. Diese gibt es ebenfalls als Docker-Image, aber nur mit eingeschränkter Funktionalität. Mit einem Auth-Server wird daraus ein brauchbares Repository für Images. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2021