Inhaltsverzeichnis
Fehlermeldungen mit macOS Sierra bzw. neueren OpenSSH Clients (u.a. aktuelle Linux Distributionen)
Dieser Artikel gilt nur für AOS Release 6 (z.B. 6.4.6.R01 und 6.7.1.R0x). AOS Release 7/8 basieren auf Linux und zeigen die hier beschriebenen Fehlerbilder nicht.
Secure Shell (SSH)
Beim Versuch sich auf einem OmniSwitch mit AOS Release 6 per SSH anzumelden, kann es zu verschiedenen Fehlermeldungen kommen (abhängig vom Versionsstand des OpenSSH Clients und dessen Konfiguration).
Dies hängt mit den neuen (sichereren) Standardeinstellungen der ausgelieferten OpenSSH Clients zusammen (u.a. sind „ssh-dss“, „hmac-md5“ und „hmac-sha1“ deaktiviert.).
Es gibt verschiedene Wege diese Problematik zu beheben: Workaround oder nachhaltige Lösung (ASA Enhanced)!
Fehler: "No matching host key type found. Their offer: ssh-dss"
Dies ist exemplarisch die Fehlermeldung, falls der OpenSSH Client „ssh-dss“ nicht zulässt. Der OmniSwitch verwendet standardmäßig einen DSA 1024 Host-Key.
Ab AOS 6.7.2.R01 verwendet der OmniSwitch standardmäßig einen ssh-rsa Key und die hier beschriebene Herausforderung tritt nicht mehr auf.
BennyE$ ssh admin@192.168.20.24 Unable to negotiate with 192.168.20.24 port 22: no matching host key type found. Their offer: ssh-dss
Workaround: "ssh-dss" selektiv erlauben
Achtung: Einige Anleitungen im Internet empfehlen diese Änderung in der /etc/ssh_config
unter host *
vorzunehmen, wodurch sie für alle Benutzer des Systems und Zielsysteme gilt. Ein granularer Ansatz für einzelne Komponenten/Switches (wie hier beschrieben) ist dem globalgalaktischen Ansatz vorzuziehen!
BennyE$ cat .ssh/config Host 192.168.20.24 HostKeyAlgorithms ssh-dss # hmac-sha2-256 sicherstes Verfahren MACs hmac-sha2-256,hmac-sha1,hmac-md5,hmac-sha1-96,hmac-md5-96
Nachhaltige Lösung: ASA Enhanced
In den meisten Fällen ist es besser AOS >= 6.7.2.R01 einzusetzen um die Fehlermeldung bzgl. ssh-dss zu beheben. Der ASA-Enhanced Modus empfiehlt sich nur für sehr sicherheitskritische Bereiche.
Der nachhaltige Lösungsansatz sieht vor, dass der OmniSwitch im „ASA Enhanced“-Modus betrieben wird. Dadurch steht SSH mit RSA 2048 Host-Key zur Verfügung.
-> aaa switch-access mode enhanced
Weitere Details zu „ASA Enhanced“ sind hier nachzulesen: Wichtige Information zum "aaa switch-access mode enhanced"
Für den Fall dass es beim Verbindungsversuch die Corrupted MAC on input.
-Fehlermeldung gibt, dann sorgt folgender Eintrag in der ~/.ssh/config
für eine sichere SSH-Verbindung. (Der Fehler kommt vom umac-64@openssh.com MAC der in VxWorks offensichtlich Probleme macht!)
BennyE$ cat .ssh/config Host 192.168.20.24 # In diesem Fall ist es wichtig ssh-dss NICHT zu setzen, wir wollen ja die RSA 2048 Verbindung! #HostKeyAlgorithms ssh-dss MACs hmac-sha2-256,hmac-sha1,hmac-md5,hmac-sha1-96,hmac-md5-96
Fehler: "Corrupted MAC on input."
Auch das hier beschriebene Thema ist mit dem Einsatz von AOS >= 6.7.2.R01 behoben.
Dies ist exemplarisch die Fehlermeldung, falls der OpenSSH Client z.B. „hmac-md5“ oder „hmac-sha1“ nicht zulässt und deshalb „umac-64@openssh.com“ als MAC verwendet (was offensichtlich unter VxWorks nicht ordentlich funktioniert).
BennyE$ ssh admin@192.168.20.24 Corrupted MAC on input. Connection to 192.168.20.24 closed by remote host.
Lösung: Sichere MACs verwenden/aktivieren
BennyE$ cat .ssh/config Host 192.168.20.24 # Folgende Zeile nur auskommentieren wenn OmniSwitch im ASA Default Modus laeuft! #HostKeyAlgorithms ssh-dss MACs hmac-sha2-256,hmac-sha1,hmac-md5,hmac-sha1-96,hmac-md5-96
Weitere Beispielkonfigurationen
Beispiel für Bash-Alias
Mit diesem Bash-Alias kann für einen lokalen Workaround für Einzelsysteme gesorgt werden. Der Verbindungsaufbau erfolgt dann mit Erlaubnis für hmac-sha1 und ssh-dss.
$ alias ssh-switch='ssh -m hmac-sha1 -oHostKeyAlgorithms=+ssh-dss'
Beispiel für mehrere einzelne Einträge
BennyE$ cat .ssh/config Host 192.168.20.24 # Folgende Zeile nur auskommentieren wenn OmniSwitch im ASA Default Modus laeuft! #HostKeyAlgorithms ssh-dss MACs hmac-sha2-256,hmac-sha1,hmac-md5,hmac-sha1-96,hmac-md5-96 Host 192.168.20.25 # Folgende Zeile nur auskommentieren wenn OmniSwitch im ASA Default Modus laeuft! #HostKeyAlgorithms ssh-dss MACs hmac-sha2-256,hmac-sha1,hmac-md5,hmac-sha1-96,hmac-md5-96 Host 192.168.20.26 # Folgende Zeile nur auskommentieren wenn OmniSwitch im ASA Default Modus laeuft! #HostKeyAlgorithms ssh-dss MACs hmac-sha2-256,hmac-sha1,hmac-md5,hmac-sha1-96,hmac-md5-96
Beispiel für ein komplettes Subnetz
BennyE$ cat .ssh/config Host 192.168.20.* # Folgende Zeile nur auskommentieren wenn OmniSwitch im ASA Default Modus laeuft! #HostKeyAlgorithms ssh-dss MACs hmac-sha2-256,hmac-sha1,hmac-md5,hmac-sha1-96,hmac-md5-96
Secure Copy (SCP)
Fehler: "exec request failed on channel 0"
Zwischen macOS (Sierra) und einem ALE OmniSwitch mit AOS Release 6 kommt bei Verwendung von SCP zu folgender Fehlermeldung. Dies gilt auch für Windows mit z.B. WinSCP, allerdings schlägt hier der Verbindungsaufbau nach einiger Zeit ohne weitere Fehlermeldung fehl.
BennyE$ scp -v admin@192.168.20.24:/flash/switch/snmp.engine . admin's password for keyboard-interactive method: exec request failed on channel 0
Workaround: Verwendung von sftp
Oft wird behauptet mit sftp könnte man die Datei nicht direkt herunterladen, was nicht korrekt ist. Folgendes Kommando führt analog den gleichen Befehl aus.
BennyE$ sftp admin@192.168.20.24:/flash/switch/snmp.engine . admin's password for keyboard-interactive method: Connected to 192.168.20.24. Fetching /flash/switch/snmp.engine to ./snmp.engine /flash/switch/snmp.engine 100% 20 0.0KB/s 00:00 Received disconnect from 192.168.20.24 port 22:2: ssh connection closed by server Disconnected from 192.168.20.24 port 22 BennyE$ BennyE$ hexdump -C snmp.engine 00000000 00 00 00 1a 00 0b 80 00 19 56 03 e8 e7 32 90 62 |.........V...2.b| 00000010 23 60 79 74 |#`yt| 00000014
SFTP: Eine Datei hochladen
Soll von lokal eine Datei auf dem OmniSwitch hochgeladen werden, dann kann dies wie folgt erledigt werden.
BennyE$ sftp admin@192.168.10.2:/flash/switch/ <<< $'put testdatei.txt' admin's password for keyboard-interactive method: Connected to 192.168.10.2. Changing to: /flash/switch/ sftp> put testdatei.txt Uploading testdatei.txt to /flash/switch/testdatei.txt testdatei.txt 100% 178KB 67.1KB/s 00:02 Received disconnect from 192.168.10.2 port 22:2: ssh connection closed by server Disconnected from 192.168.10.2 port 22