Я пытаюсь подключиться к удаленному серверу, используя SSH ForwardAgent
но я все время сталкиваюсь с одной и той же проблемой:
ssh_exchange_identification: Connection closed by remote host
Я настроил свой ~ / .ssh / config следующим образом:
#Proxy
Host my.remote.proxy.com
Hostname IPProxy.IP.IP.IP
User my.user
IdentityFile ~/.ssh/id_rsa
ForwardAgent yes
#Remote server
Host my.remote.server.com
Hostname IPRemote.IP.IP.IP
User my.user
IdentityFile ~/.ssh/id_rsa
ProxyCommand ssh my.user@my.remote.proxy.com nc -w 10 %h %p 2> /dev/null
Я могу правильно использовать ssh в my.remote.proxy.com. Я могу правильно использовать ssh из my.remote.proxy.com к my.remote.server.com используя ssh (и частный в тестовых целях).
Моя проблема в том, что я не могу использовать ssh с моего хоста на my.remote.server.com с помощью forwardagent.
Я установил / etc / ssh / sshd_config для обоих my.remote.proxy.com и my.remote.server.com следующим образом :
AllowAgentForwarding yes
AllowTcpForwarding yes
#GatewayPorts no
X11Forwarding yes
Я проверил, и оба сервера используют рабочую версию openssl с forwardagent:
openssh-7.4p1-13.el7_4.x86_64
openssh-clients-7.4p1-13.el7_4.x86_64
openssh-server-7.4p1-13.el7_4.x86_64
/ Var / log / secure из my.remote.proxy.com возвращаются:
Nov 15 04:39:07 [localhost] sshd[7866]: Accepted publickey for my.user
Nov 15 04:39:07 [localhost] sshd[7866]: pam_unix(sshd:session): session opened for user my.user by (uid=0)
Nov 15 04:39:08 [localhost] sshd[7869]: Received disconnect from IPPUBLIC port 61378:11: disconnected by user
Nov 15 04:39:08 [localhost] sshd[7869]: Disconnected from IPPUBLIC port 61378
Nov 15 04:39:08 [localhost] sshd[7866]: pam_unix(sshd:session): session closed for user my.user
На my.remote.server.com ничего не отображается из / var / log / secure.
Решением было использовать -W вместо nc для пересылки соединения, потому что пакеты nc не были установлены удаленно на my.remote.server
ProxyCommand ssh my.user@my.remote.proxy.com -W %h:%p 2> /dev/null
-W хост: порт Запрашивает, чтобы стандартный ввод и вывод на клиенте был перенаправлен на хост на порт по защищенному каналу. Подразумевает -N, -T, ExitOnForwardFailure и ClearAllForwardings. Работает только с протоколом версии 2.