Die SSH-Anmeldung hängt in MacOS Sierra, jedoch nicht in einer Linux-Umgebung

489
BentCoder

Der folgende Befehl hängt, wenn ich versuche, vom Mac OS-Client aus eine Verbindung zum SSH-Server herzustellen. In Linux env funktioniert das jedoch einwandfrei.

$ ssh -vvv master@172.18.0.2 -p 22  OpenSSH_7.4p1, LibreSSL 2.5.0 debug1: Reading configuration data /Users/myself/.ssh/config debug1: /Users/myself/.ssh/config line 1: Applying options for * debug1: Reading configuration data /etc/ssh/ssh_config debug2: resolving "172.18.0.2" port 22 debug2: ssh_connect_direct: needpriv 0 debug1: Connecting to 172.18.0.2 [172.18.0.2] port 22. debug1: connect to address 172.18.0.2 port 22: Operation timed out ssh: connect to host 172.18.0.2 port 22: Operation timed out 

Wie in vielen Beiträgen vorgeschlagen, habe ich die SSH_AUTH_SOCKenv-Variable nicht gesetzt, aber es hat sich nichts geändert. Der SSH - Server ist ein Docker Behälter und Anschlüsse freigelegt, wie 0.0.0.0:2222->22/tcpbei "Gateway": "172.18.0.1", "IPAddress": "172.18.0.2". Siehe die SSH- und SSHD-Konfigurationsdetails des Containers, falls dies hilfreich ist.

/ etc / ssh / ssh_config

Host * HashKnownHosts yes GSSAPIAuthentication yes 

/ etc / ssh / sshd_config

ChallengeResponseAuthentication no UsePAM no PrintMotd no X11Forwarding no AllowTcpForwarding no AllowAgentForwarding no PermitTunnel no  Subsystem sftp internal-sftp Match Group sftp ChrootDirectory %h X11Forwarding no AllowTcpForwarding no AllowAgentForwarding no PermitTunnel no ForceCommand internal-sftp 

Ich kann bestätigen, dass der ssh-agent auf dem Client-Betriebssystem läuft.

$ ssh-agent SSH_AUTH_SOCK=/var/folders/gw/89swycgx0gqg8g28nfr1x2r80000gn/T//ssh-dF9lR82eJulp/agent.59018; export SSH_AUTH_SOCK; SSH_AGENT_PID=59019; export SSH_AGENT_PID; echo Agent pid 59019; 

DAS IST VISUAL ERKLÄRUNG DES PROBLEMS

enter image description here

1
Dies funktioniert immer auf dem Rechner, auf dem Docker ausgeführt wird. Auf externen Computern müssen Sie den freigelegten Port verwenden oder viele Routen einrichten, um alle Ihre Container dem größeren Netzwerk auszusetzen (was Sie wahrscheinlich nicht möchten). Michael Hampton vor 5 Jahren 1

1 Antwort auf die Frage

0
Totta

Dies kann mit einem fehlerhaften XQuartz zusammenhängen. Versuchen und deaktivieren Sie die X11-Weiterleitung für den Host in ~ / .ssh / config. Ich hatte genau das gleiche Problem und geändert, ForwardX11=yesum ForwardX11=nofür alle meine Gastgeber in ~/.ssh/config.

Wenn das Problem dadurch gelöst wird, laufen Sie entweder ohne X11-Weiterleitung oder lassen Sie XQuartz reparieren.

Das war mein Fehler:

debug2: client_x11_get_proto: /opt/X11/bin/xauth -f /var/folders/y4/lz_nnc_x7fzxxxkp6q_k7740000gn/T//ssh-KRdxxxxfMNmi/xauthfile generate /private/tmp/com.apple.launchd.oKxxxxYms3/org.macosforge.xquartz:0 MIT-MAGIC-COOKIE-1 untrusted timeout 1260 2>/dev/null