如今在伊朗,全球互联网被封锁,我们只能访问内部互联网。
因此,我必须连接到伊朗的服务器(Ubuntu 20),然后连接到另一个国家的第二台服务器。(VMESS 方法)
在伊朗服务器中,我使用此命令通过 Putty 连接到第二台服务器
ssh -o GatewayPorts=true -L 80:0.0.0.0:80 [email protected]
它运行正常,我可以将客户的 VPN 软件连接到伊朗服务器。这样我就可以访问互联网了。
但如果我关闭 Putty,连接就会丢失。
我怎样才能使此连接永久化?关闭 Putty 后如何连接到第二台服务器?
答案1
您需要保持 SSH 连接处于活动状态才能使隧道存在,因此如果您不想运行完整的 PuTTY GUI,那么您应该查看 plink 命令。它与 PuTTY 来自同一个开发人员,但完全基于 shell。(此处的替代二进制文件部分https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html)
您还应该考虑使用 Jump 服务器(也称为 Bastion)和代理命令选项(请参阅此问题和答案如何使用 putty (和/或 plink)命令行通过 2 个中间主机转发到数据库?),这样您就可以将其设置为自动运行 ssh 命令。
例如
plink -A -proxycmd "ssh -o GatewayPorts=true -L 80:0.0.0.0:80 [email protected]" user@ubuntu
假设您还在 PuTTY 中配置了端口转发,那么您应该将其作为-L
选项添加到上述命令中