通过 ssh 隧道使用 vnc 客户端

通过 ssh 隧道使用 vnc 客户端

笔记本电脑(osx-家庭网络)------>主机 1(linux-pc-大学网络)---->主机 2(linux-pc-使用端口 5901 上的 vncserver,只能从主机 1 访问)

我可以使用以下命令通过 ssh 访问 host2:

  • [用户@笔记本电脑 ~]$ ssh 用户1@主机1
  • [用户1@主机1 ~]$ ssh 用户2@主机2

我需要从“笔记本电脑”使用 ssh 隧道访问 host2 vncserver。还有,有哪款 vnclient 适合执行此任务吗?

答案1

有多种选择。首先,您需要设置 TCP 隧道。

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

ssh-t-L 5901:主机 2 的 IP 地址:5901 用户@主机1

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

ssh -L 5901:127.0.0.1:15901 user1@Host1 ssh -L 15901:127.0.0.1:5901 user@host2

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

ssh -t -L 5901:127.0.0.1:15901 user1@Host1 ssh -L 15901:127.0.0.1:5901 user@host2

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

相关内容