SOCKS5 代理位于我的源服务器和目标服务器之间。源服务器只能从我的本地服务器访问。
我尝试通过 Winscp 中的代理选项和 SSH 隧道选项进行连接,但问题如下:
SOCKS5 代理仅用于我的源服务器(隧道服务器),我想将它用于我的目标服务器。请让我知道如何实现这一目标。
流程:本地系统->源服务器->SOCKS5代理->目标服务器
答案1
所以你正在连接当地的>来源>代理人>目标。
首先测试连接来源通过代理人到目标使用 OpenSSHssh
命令。
这应该可以帮助您: 如何将 SSH 与 SOCKS 5 代理结合使用?
该命令将类似于(未经测试):
ssh -o ProxyCommand='/usr/bin/nc -X 5 -x proxyhost:1080 %h %p' user@host
连接必须在没有任何干预的情况下正常工作(因此通常需要使用未加密的私钥进行身份验证)。
一旦你完成了这个工作,你就可以进入 WinSCP(运行在当地的)并配置它,就好像您正在连接到来源。但除此之外,关于环境 > SFTP 页面在高级站点设置对话框,指定“SFTP 服务器”使用ssh
您刚刚使用的命令来源。只需添加-s sftp
转变:
ssh -o ProxyCommand='/usr/bin/nc -X 5 -x proxyhost:1080 %h %p' -s sftp user@host