SSH im Xterm
Sicherheit

SSH: Benutzer-Zertifikate

Verwendung von SSH-Keys mit Exceed

Die klassische Authentifizierungsmethode von SSH verwendet assymetirsche Schlüsselpaare. So wird grundsätzlich die Identität der Hosts, mit denen SSH-Verbindungen aufgebaut werden, anhand von Host-Keys sichergestellt. Der SSH-Client führt dazu ein Verzeichnis der öffentlichen Schlüssel ("Public Keys") der Hosts mit SSH-Server. Jeder Host besitzt einen einmaligen prinvaten Schlüssel ("Privat Key"), mit dessen Hilfe er sich erfolgreich beim SSH-Verbindungsaufbau identifizieren kann. Passen öffentlicher und privater Schlüssel nicht zusammen, so wird der Verbindungsaufbau gestoppt und der Anwerder erhält eine Warnung.

Genau umgekehrt funktioniert die User-Authentifizierung. Dem SSH-Server muss der öffentliche Schlüssel des Users zugänglich sein; dagegen liegt der private Schlüssel nur für den User zugänglich auf dem Client. Beim Verbindungsaufbau muss nun der SSH-Client mit Hilfe dieses privaten Schlüssels die Identität des Users beweisen. Passen privater und öffentlicher Schlüssel nicht zusammen, verweigert der SSH-Server den Verbindungsaufbau mit der Begründung"Authentication failed".

CSS Benutzerschlüssel
Key-Generatoren gehören zur Standard-Ausstattung einer guten SSH-Implementierung. Die Management-Konsole von CSS ist in der Lage, Benutzerschlüssel-Paare zu erzeugen und die jeweiligen öffentlichen Schlüssel über sftp auf dem Server abzulegen. Darüber hinaus ist CSS in der Lange, Schlüssel aus allen gängigen Formaten zu importieren und ebenso in diese Formate zu exportieren.
Mit OpenSSH auf Linux (sowie vielen UNIX-Varianten) erzeugt man ein User-Schlüsselpaar am einfachsten so:

ssh-keygen -t dsa

Dabei werden per Default im Verezichnis ~/.ssh/ (~ steht für das Home-Verzeichnis des Users) die Dateien id_dsa und id_dsa.pub erzeugt. Der öffentliche Schlüssel in id_dsa.pub muss dann an die Datei ~/.ssh/authorized_keys2 angehängt werden, denn dort wird ihn der SSH-Server bei der Benutzerauthentifizierung suchen. Für den SSH-Client ist dagegen der private Schlüssel in der Datei id_dsa relevant; diese Datei muss von CSS importiert werden (z.B. wie oben abgebildet in der Verwaltungskonsole), damit sie von Xstart für die Authentifizierung genutzt werden kann.

Xstart: Benutzerschlüssel
Diese Aktionen (Schlüssel importieren, erzeugen etc.) können auch direkt in Xstart durchgeführt werden.

Man aktiviere dazu - wie in der Abb. rechts - "Ausgewählten Benutzer-Schlüssel verwenden" und klicke dann unten auf das mittlere Icon (in der Abb. rot umrandet), um einen Schlüssel zu wählen.
Daraufhin erscheint folgendes Fenster:
Xstart: Benutzerschlüssel auswählen
Nachdem hier der richtige private Schlüssel ausgewählt wurde, wird die Authentifizierung ohne Passwort-Eingabe funktionieren. Zusätzlich kann der Schlüssel aber mit einer sog. "Passphrase" gesichert sein, die dann beim Import und bei jeder Anmeldung eingegeben werden muss. Diese Passphrase dient aber nur der Aktivierung des Schlüssels (so dass Unbefungte den Schlüssel nicht verwenden können) und wird nicht an den SSH-Server übertragen.

Alternativ lässt sich der Import von privaten Benutzerschlüsseln mit einem Kommanzeilen-Tool bewerkstelligen:
CKUtil -importkey -f <keyfile>
CKUtil.exe ist Teil von CSS und befindet sich im normalerweise im Verzeichnis \Programme\Hummingbird\Connectivity\12.00\Security\. Ein Aufruf ohne Argumente listet die möglichen Parameter und ihre Bedeutung auf ("Usage").
SSH im Xterm
     ©2005, 2007 Andreas Gottwald
SSH: Benutzer-Zertifikate