通过 ssh 隧道使用 vnc 客户端

amp*_*mpc 4 ssh vnc tunnel ssh-tunnel macos

笔记本电脑(osx-home network)------>Host1(linux-pc-college network)---->Host2(linux-pc-使用vncserver在5901端口,只能从host1访问)

我可以使用以下方法通过 ssh 访问 host2:

  • [user@laptop ~]$ ssh user1@host1
  • [user1@host1 ~]$ ssh user2@host2

我需要使用来自“笔记本电脑”的 ssh 隧道访问 host2 vncserver。还有什么建议,哪个 vnclient 适合这个任务?

Ser*_*rge 5

有多种选择。首先你需要设置一个TCP隧道。

如果在主机 1 的 sshd_conf 中没有禁用转发到本地网络的端口,那么这就足够了:

ssh -t -L 5901: ip-of-host2 :5901 user@Host1

否则你需要建立一个端口转发链:

ssh -L 5901:127.0.0.1:15901 user1@Host1 ssh -L 15901:127.0.0.1:5901 user@host2
Run Code Online (Sandbox Code Playgroud)

如果使用密码身份验证连接到 host2,则-t在第一个选项中添加一个选项ssh

ssh -t -L 5901:127.0.0.1:15901 user1@Host1 ssh -L 15901:127.0.0.1:5901 user@host2
Run Code Online (Sandbox Code Playgroud)

然后使用vncviewer您选择的显示器连接到显示器localhost:1。我更喜欢使用 TigerVNC。