remote我可以使用端口 4000 上的用户 ssh 访问我的工作网络:
ssh remote@123.123.123.123 -p 4000
Run Code Online (Sandbox Code Playgroud)
使用 ssh 密钥进行身份验证
然而,我目前在中国,连接非常不稳定。
我们在香港有一个云服务器,我们可以通过它进行隧道连接,从而提供更稳定的连接
foo我可以使用相关密码以用户身份登录。
ssh foo@100.100.100.100
Run Code Online (Sandbox Code Playgroud)
如何将两者放在一起,以便我可以通过 ssh 从本地计算机以 as user 身份打开交互式shell123.123.123.123:4000会话?remote100.100.100.100:22foo
编辑:
我无法对以下答案发表评论,因为 Javascript 在中国已被屏蔽,并且评论使用 Javascript。
直接隧道不起作用,因为身份验证是使用我的 ssh 密钥完成的。
当我启动 ssh 会话时remote@123.123.123.123身份foo@100.100.100.100验证失败
Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
Run Code Online (Sandbox Code Playgroud)
我以某种方式需要我的 ssh 会话看起来像是来自我的本地主机,带有我的 ssh 密钥,但要通过隧道传输foo@100.100.100.100
你应该能够像这样把它们放在一起
ssh -t foo@100.100.100.100 ssh remote@123.123.123.123 -p 4000
Run Code Online (Sandbox Code Playgroud)
因为 ssh 命令允许您指定要在远程服务器上运行的命令。
编辑:
如果您只有本地 ssh 密钥(密钥123.123.123.123不在云服务器上),您应该能够添加-A转发身份验证,因此命令将是
ssh -At foo@100.100.100.100 ssh remote@123.123.123.123 -p 4000
Run Code Online (Sandbox Code Playgroud)
请注意,要使其工作,您需要ssh-agent在本地运行,并且您的密钥必须使用注册ssh-add(您可以使用它ssh-add -L来检查您的密钥是否可用于 ssh 代理)。
| 归档时间: |
|
| 查看次数: |
2926 次 |
| 最近记录: |