Приведенная ниже команда зависает при попытке подключиться к серверу SSH из клиента Mac OS. Тем не менее, он прекрасно работает в Linux env.
$ 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
Как предлагается во многих постах, я удалил переменную env SSH_AUTH_SOCK
но ничего не изменилось. Сервер SSH - это контейнер Docker, порты которого отображаются как 0.0.0.0:2222->22/tcp
в « Шлюзе "Gateway": "172.18.0.1", "IPAddress": "172.18.0.2"
. Посмотрите подробности конфигурации SSH и SSHD контейнера ниже, если это поможет.
/ И т.д. / SSH / ssh_config
Host *
HashKnownHosts yes
GSSAPIAuthentication yes
/ И т.д. / 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
Я могу подтвердить, что ssh-agent на клиентской ОС работает.
$ 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;
ЭТО ВИЗУАЛЬНОЕ ПОЯСНЕНИЕ ПРОБЛЕМЫ