Vor einigen Tagen hat Apple das Update auf macOS 10.13.2 freigegeben. Nach diesem Update konnte ich keine SSH-Verbindungen aufbauen, jeder Versuch wurde mit der folgenden Fehlermeldung quittiert:
Unable to negotiate with x.x.x.x port 22: no matching key exchange found. Their offer diffie-hellman-group1-sha1
Nach einer kurzen Recherche wurde ich fündig, Apple kann man hier keinen Vorwurf machen, es liegt allein an OpenSSH. Mit dem Update von macOS wurde das OpenSource-Tool OpenSSH auf Version 7.6p1 aktualisiert.
In dieser Version wurde der SHA1-Algorithmus per default abgeschaltet (aber nicht entfernt), da er potentiell als unsicher eingestuft wird.
Der Server, mit dem ich mich verbinden will, versteht quasi nur SHA1 (Schande über den Admin!).
Mit einigen Handgriffen kann man dieses Feature reaktivieren. Es sollte nur als Übergangslösung dienen, bis die SSH-Server auf einen aktuelleren, sicheren Algorithmus umgestellt wurden.
Zuerst muss das Terminal gestartet werden und folgende Datei zur Bearbeitung geöffnet werden:
sudo nano /etc/ssh/ssh_config
Suche jetzt jeweils die Zeile und entferne die Raute # am Anfang:
# MACs hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd160
# Ciphers aes128-ctr,aes192-ctr,aes256-ctr,aes128-cbc,3des-cbc
Füge am Ende der Datei noch folgenden Zeilen ein:
HostkeyAlgorithms ssh-dss,ssh-rsaKexAlgorithms +diffie-hellman-group1-sha1
KexAlgorithms +diffie-hellman-group1-sha1
Verlasse den Texteditor nano mit dem Shortcut ctrl + X sowie Y als Bestätigung zum Überschreiben der vorhandenen Datei.
Es ist kein Reboot erforderlich, SSH-Verbindungen sollten ab sofort wieder wie gewohnt funktionieren.
Schreibe einen Kommentar