Featured image of post 远程桌面(二):VNC配置

远程桌面(二):VNC配置

使用VNC进行远程桌面连接

缘起

之前一直在用AnyDesk作为远程桌面软件,但最近学校的IT部门说AnyDesk有安全隐患,不能再使用了。在Linux上允许使用的远程桌面软件只有VNC和XRDP。VNC和RDP都是远程桌面协议,但VNC是一个开源的协议,而RDP是微软的专有协议。VNC的优点是跨平台,支持Linux、Windows、macOS等操作系统;虽然RDP是微软的专有协议,但Linux上也有开源的实现,比如XRDP。

VNC的缺点是速度较慢,延迟较高。其优点是在Linux系统上使用VNC时,远程桌面和本地桌面是完全分开的,互不影响。而且很多Linux系统和macOS默认支持VNC服务,不需要额外安装软件。

macOS连接Ubuntu

Ubuntu自带VNC服务,macOS自带VNC客户端,因此在macOS上连接Ubuntu非常简单。在连接之前,我们需要做一些准备工作。

  1. 在Ubuntu上打开VNC服务。虽然Ubuntu上自带VNC服务,但默认是关闭的,我们需要先打开它。如果使用Gnome桌面环境,进入“设置”界面,点击“共享”,然后打开“远程桌面”选项:

    ubuntu-vnc

  2. 设置VNC密码。在开启“远程桌面”选项后,就可以看到VNC服务的设置界面。按照提示进行设置:

    ubuntu-vnc

  3. 开启密码验证。勾选"Enable Legacy VNC Protocol"选项后,点击右边的三个点,勾选“Require a password”:

    ubuntu-vnc

    如果不勾选这个选项,那么在每次连接时都会弹出一个确认窗口,要求确认是否允许连接。如果远程电脑没有人在旁边,就无法连接了:

    ubuntu-vnc

  4. 在macOS上连接Ubuntu。使用macOS自带的文件浏览器Finder,就可以通过VNC连接远程电脑。但在此之前,我们需要先用ssh连接远程电脑,并做端口转发:

    1
    
    ssh -L 22590:localhost:5900 username@remote_ip
    

    上述命令在连接远程电脑的同时,将远程电脑的5900端口映射到本地的22590端口。之所以这么做,是因为VNC服务默认使用5900端口,但由于安全性的原因,很多系统会将5900端口关闭,因此我们需要使用ssh进行端口转发。ssh连接成功后,就可以在Finder中连接远程电脑了:

    ubuntu-vnc ubuntu-vnc

    在弹出的窗口中输入VNC密码: ubuntu-vnc

    如果一切顺利,就可以看到远程电脑的桌面了。

comments powered by Disqus