我们有一个Jenkins服务器,它只能从云中的VPC中访问。在Mac和Linux上,我使用sshuttle与bastion实例(充当代理)建立ssh连接,并在浏览器中打开Jenkins控制台。一切都很好。
现在,我在Windows上,并试图在WSL2上做同样的事情。如果我以前没有弄错,sshuttle没有在WSL1上工作(有一些错误消息失败),但是我设法在WSL2上运行它,没有任何问题。ssh连接已经建立,我可以访问我的Jenkins (使用curl)。
然后,我试图通过WSL2访问Windows上的Jenkins:
# lsof -i -n | grep ssh
sshuttle 1234 rad 5u IPv4 39270 0t0 TCP *:socks (LISTEN)
ssh 5678 rad 3u IPv4 40252 0t0 TCP 172.25.236.84:57578->bastion:ssh (ESTABLISHED) Manual proxy configuration
SOCK host: 172.25.236.84
Port: 1080
SOCKS V5 (tested with V4 as well)但是在Firefox上加载页面失败了,出现了“连接被重置”的错误。我通过Powershell测试SOCKS端口是打开的和响应的(使用Test-NetConnection)。
谢谢,
发布于 2020-06-09 07:06:08
我不确定,但我的猜测是,sshuttle实际上并不是SOCKS代理,这就是为什么重新设置连接。
我成功地使用ssh SOCKS代理:ssh -D 0.0.0.0:1080 rad@bastion访问了Windows机器上的Jenkins,并将Firefox配置为使用SOCKS代理。
有趣的是,为此您甚至不需要WSL。看来Windows 10有OpenSSH,您可以使用它。只需打开CMD并键入ssh -D 1080 rad@bastion并安装火狐就可以使用localhost作为代理。
如果有任何更好的解决方案或任何评论/关注(除了DNS的SOCKS),请分享。
谢谢。
发布于 2021-07-14 12:30:22
作为WSL(2)的替代方案,您可以运行一个常规的SSH隧道。
例:
ssh -N -L 127.0.0.1:5432:some_domain_to_forward:5432 user@jumpbox_ip然后连接到127.0.0.1:5432
https://stackoverflow.com/questions/62259147
复制相似问题