Community

Bitte oder Registrieren, um Beiträge und Themen zu erstellen.

ssh zu älterer Cisco Hardware

Das Problem: ssh dh-group1 Fehlermeldung

Eine ssh-Verbindung zu älteren Cisco-Komponenten scheitert von modernen Linux-Betriebssystemen aus (z.B. Ubuntu 16.04) daran, dass unsichere Key-Exchange-Algorithmen und Chiffrierungsverfahren aus openssh herausgenommen wurden.

Das äußert sich so:

ssh dh1 Fehlermeldung

Es gibt mehrere Möglichkeiten, dieses Problem zu umgehen, und die ich hier beschreiben möchte.

 

Lösung 1: ssh-Aufruf mit Angabe des benötigten KexAlgorithms

Etwas sperrig zu tippen, aber immerhin........klappts damit.

In diesem Beispiel habe ich vorsichtshalber den DSA public Key Algorithmus gleich mit enabled, der möglicherweise auch noch für Probleme sorgen könnte (HostKeyAlgorithms...):

ssh-dh1 Lösung 1

Wenn Dir das Abtippen verständlicherweise zuviel wird, kannst Du versuchen, den Teil mit dem HostKeyAlgorithmus wegzulassen oder den gesamten Aufruf selbstverständlich schön in ein kleines wrapper-Skript einbauen.

 

Lösung 2: ~/.ssh/config

Die folgenden Zeilen würde die DSA-Cipher und den Key-Exchange-Algorithmus (Kex) diffie-hellman group1 verwendbar machen, indem sie in eine neue Datei namens config unter dem .ssh Verzeichnis im homedir des jewg. Users eingetragen werden:

KexAlgorithms +diffie-hellman-group1-sha1
HostKeyAlgorithms +ssh-dss

Auf die vielen weiteren Vorteile der config will ich nur auf Nachfrage näher eingehen. Allerdings gilt sie eben leider nur für den user, in dessen Home-Verzeichnis (~) sie steht.

 

Lösung 3: Update der Gegenstelle

Das Optimum besteht natürlich darin, die Serverseite dazu zu bringen, keine unsicheren Protokolle und Algorithmen zu verwenden. Dies sollte auch immer Ziel bleiben. Leider, aber verständlicherweise stellt irgendwann jeder Hersteller den Support für ältere Hardware ein, so dass ein Update nicht mehr möglich ist.

 

Eine Möglichkeit, an der Kommandozeile herauszufinden, was der eigene Client so unterstützt, findest Du hier:

ssh -Q cipher       # Listet die unterstützten Cipher-Algorithmen
ssh -Q mac          # Listet die untestützten MACs oder Hashing-Algorithmen
ssh -Q key          # Listet die unterstützten public key Typen
ssh -Q kex          # Listet die unterstützten key exchange Algorithmen

 

Weiterführende Info zu diesem Thema gibt es auf der Webseite von OpenSSH unter Legacy.