我有一台本地笔记本电脑,需要连接到公司 VPN 才能访问我们的暂存环境和私人存储库。
我有一台用于开发的远程机器,我通过 SSH 进入该机器并运行构建命令。
该远程机器无权访问 VPN(因为我们使用了一些需要 MFA 并且无法通过非 GUI 会话进行身份验证的奇怪的 VPN)。
是否可以通过 SSH 连接到远程计算机并解析来自我客户端网络的网络流量?或者更好的是,只解析来自我客户端网络的某些 URL?
我知道我可以使用 SOCKS 5 代理通过远程网络来解析客户端上的 URL,可以反过来吗?
ssh -D 1337 [email protected]
答案1
我知道我可以使用 SOCKS 5 代理通过远程网络来解析客户端上的 URL,可以反过来吗?
ssh -D 1337 [email protected]
-L
就像的逆运算一样-R
, 的逆运算-D
… -R
。参见man 1 ssh
[强调我的]:
-R [bind_address:]端口:主机:主机端口 -R [绑定地址:]端口:本地套接字 -R 远程套接字:主机:主机端口 -R 远程套接字:本地套接字 -R [绑定地址:]端口指定将与远程(服务器)主机上给定 TCP 端口或 Unix 套接字的连接转发到本地。这通过分配一个套接字来侦听远程端的 TCP 端口或 Unix 套接字来实现。每当与此端口或 Unix 套接字建立连接时,该连接都会通过安全通道转发,并从本地计算机连接到由
host
端口hostport
、or local_socket
或 指定的明确目标,如果没有指定明确的目标,ssh
将充当 SOCKS 4/5 代理,并将连接转发到远程 SOCKS 客户端请求的目标。[…]
然后在 SSH 服务器端,你可以使用类似proxychains
或单独配置每个相关程序以使用代理。请注意,程序可能支持或不支持通过代理进行 DNS。即使支持,可能需要正确配置。