Schlagwort-Archive: apple

Per SSH auf alte Kisten

Aus Sicherheitsgründen sind bei SSH bestimmte Algorithmen deaktiviert. Wenn man nun z.B. alte Netzwerkhardware rumliegen hat, auf die erst mal ein Firmwareupdate drauf muss, scheitert es schon daran, dass man nicht mal mehr per SSH drauf kommt.

Ein möglicher Fehler kann sein, dass der Typ des Host-Schlüssels nicht mehr unterstützt wird.

Unable to negotiate with 192.168.1.1 port 22: no matching host key type found. Their offer: ssh-dss

Die Fehlermeldung sagt es schon, hier müssen wir ssh-dss wieder aktivieren. Das geht entweder einmalig

ssh -oHostKeyAlgorithms=+ssh-dss root@192.168.1.1

oder dauerhaft in der ~/.ssh/config, falls sich der Host nicht updaten lässt:

Host 192.168.1.1
  HostKeyAlgorithms=+ssh-dss

Eine weitere Problemquelle ist die Verschlüsselung selbst:

Unable to negotiate with 192.168.1.2 port 22: no matching cipher found. Their offer: aes128-cbc,3des-cbc,aes192-cbc,aes256-cbc

Auch hier kann man wieder direkt in der Kommandozeile oder in der Konfiguration Abhilfe schaffen.

ssh -c aes256-cbc root@192.168.1.2

bzw.

Host 192.168.1.2
  Ciphers +aes256-cbc

SSH AgentForwarding unter macOS

Seit macOS sierra gibt es eine kleine Änderung im mitgelieferten OpenSSH. Diese verhindert, dass ein genutzter Schlüssel automatisch dem ssh-agent hinzugefügt wird. Will man sich also mit ssh -A user@server auf einem anderen Server einloggen, wird ein leerer Agent mitgeschickt und man hat auf dem Zielserver nicht mehr seinen SSH-Key zur Verfügung.

Beheben lässt sich dieses Problem mit folgender Ergänzung der ~/.ssh/config:

Host *
    UseKeychain yes
    AddKeysToAgent yes

Nun hat man auch unter macOS das gewohnte vVerhalten.