Ubuntu22.04 安装配置VNC Server

如果转载, 请注明出处 https://www.cnblogs.com/milton/p/16730512.html
Ubuntu22.40下VNC和远程桌面的区别

  • 使用远程桌面时, 用户必须在host上登入桌面环境. 可以是锁屏或非锁屏, 但是必须要有一个用户桌面会话存在.
  • 使用VNC时, host上需要启动vncserver. 但是vncserver与用户在host上的桌面会话是无关的, vncserver会给连接后的用户启动桌面会话
启动vncserver失败的问题在Ubuntu22.04下, 用户在启动vncserver之前必须退出所有桌面会话, 否则会报错.
安装步骤安装并启用 SSH 服务如果host上还没有ssh服务, 安装一下, 方便后面的安装步骤, 远程通过ssh进行. 如果不安装, 本机关闭桌面在命令行下也可以, 就是调试起来不方便
sudo apt install openssh-serversudo systemctl status ssh.service# 确认是否开机自启动sudo systemctl is-enabled ssh.service初始安装安装XFCE桌面. 如果想使用自带的 Ubuntu桌面, 后面可以配置
sudo apt install xfce4 xfce4-goodies安装vncserver
sudo apt install tigervnc-standalone-server上面的安装完之后, 用普通用户在ssh连接(或者命令行终端)中启动一次
vncserver过程中会让你设置密码和只读密码, 会自动分配端口号. 查看启动后的实例
$ vncserver -listTigerVNC server sessions:X DISPLAY # RFB PORT # RFB UNIX PATH PROCESS ID # SERVER2590211368Xtigervnc如果-list看不到实例, 说明启动失败, 需要journalctl -fe看一下具体原因
如果事后想再修改密码, 可以用vncpasswd命令
上面启动的服务, 默认是只监听本地127.0.0.1, 所以从其它机器是无法连接的, 如果需要连接, 可以用这个命令启动
vncserver -localhost no配置为服务关闭刚才的实例, :2根据自己的实例修改
vncserver -kill :2开启 tigervncservice 服务, :2根据自己的实例修改
sudo systemctl start tigervncserver@:2.servicesudo systemctl enable tigervncserver@:2.service服务配置文件在 /lib/systemd/system/tigervncserver@.service , 因为服务使用的是 /usr/libexec/tigervncsession-start 这个脚本, 脚本里面调用的是 /usr/sbin/tigervncsession , 参考 https://manpages.ubuntu.com/manpages/impish/man8/tigervncsession.8.html, 需要在 ~/.vnc/ 下创建文件 config, 输入内容
session=xfcegeometry=1366x768securitytypes=vncauth,tlsvnc
  • session=xfcexfce 能用哪些值, 取决于 /usr/share/xsessions 目录下包含哪些 desktop. 如果想使用自带的 Ubuntu桌面, 可以改成 session=ubuntu
  • geometry=1366x768 是开启时的默认分辨率
  • 如果要只允许本地连接, 可以加一行 localhost
修改完重启服务生效
sudo systemctl restart tigervncserver@:2.serviceVNC客户端TigerVNC
  • 项目地址: https://github.com/TigerVNC/tigervnc/
  • 下载地址: https://sourceforge.net/projects/tigervnc/files/stable/1.12.0/
如果使用Win10 64bit, 下载其中的vncviewer64-x.xx.x.exe, 不需要安装, 直接运行, 地址填host地址加vnc编号, 例如 112.12.12.12:2, 或者112.12.12.12:5902也可以
连接安全上面的配置, 仅适合在内网使用, 因为连接是不加密的. 如果需要加密, 一般将vnc服务启动为监听本地, 再使用ssh建立隧道对外提供服务. 具体可以参考下面的链接
参考
  • https://www.howtoforge.com/how-to-install-vnc-server-ubuntu-22-04/
  • https://www.linuxbuzz.com/install-configure-vnc-ubuntu-server/
  • https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-vnc-on-ubuntu-22-04
【Ubuntu22.04 安装配置VNC Server】

经验总结扩展阅读