首页主机资讯TigerVNC在Linux上如何远程控制

TigerVNC在Linux上如何远程控制

时间2026-01-21 18:34:04发布访客分类主机资讯浏览280
导读:TigerVNC在Linux上的远程控制实操指南 一 环境准备与安装 选择桌面环境:VNC需要图形会话,常见有Xfce(轻量)、GNOME(现代)。在较新的发行版(如Ubuntu 24.04)上,GNOME 默认使用 Wayland,而...

TigerVNC在Linux上的远程控制实操指南

一 环境准备与安装

  • 选择桌面环境:VNC需要图形会话,常见有Xfce(轻量)、GNOME(现代)。在较新的发行版(如Ubuntu 24.04)上,GNOME 默认使用 Wayland,而 VNC 通常基于 X11,建议优先使用 Xfce 或切换到 GNOME 的 Xorg 会话以获得更稳定的体验。
  • 安装 TigerVNC 服务器:
    • Debian/Ubuntu 系:sudo apt update & & sudo apt install tigervnc-standalone-server [tigervnc-common]
    • RHEL/CentOS 系:sudo yum install tigervnc-server
  • 设置 VNC 访问密码(在目标机上执行):执行 vncpasswd,输入并确认密码;如提示是否创建“仅查看”密码,通常选 n

二 配置桌面与会话启动

  • 创建并编辑会话启动脚本 ~/.vnc/xstartup,并赋予可执行权限:chmod +x ~/.vnc/xstartup。
  • 常用桌面示例(二选一或按你的桌面调整):
    • Xfce(轻量稳定,推荐):
      #!/bin/sh
      xrdb $HOME/.Xresources
      startxfce4 &
          
      
    • GNOME(会话变量与 gnome-session 搭配):
      #!/bin/sh
      unset SESSION_MANAGER
      unset DBUS_SESSION_BUS_ADDRESS
      export GNOME_SHELL_SESSION_MODE=ubuntu
      export XDG_CURRENT_DESKTOP=ubuntu:GNOME
      export XDG_CONFIG_DIRS=/etc/xdg/xdg-ubuntu:/etc/xdg
      exec gnome-session
      
  • 端口规则:显示编号 :n 对应 RFB 端口 5900+n(如 :1→5901,:2→5902)。

三 启动与系统服务管理

  • 手动启动(快速验证):vncserver :1 -geometry 1920x1080 -depth 24 -localhost no
    查看状态:vncserver -list;停止会话:vncserver -kill :1
  • 注册为 systemd 服务(开机自启与统一管理,推荐):
    • 创建服务文件:sudo nano /etc/systemd/system/vncserver@:1.service
      示例(将 替换为实际用户名):
      [Unit]
      Description=Remote desktop service (VNC)
      After=syslog.target network.target
      
      [Service]
      Type=forking
      User=<
          username>
          
      Environment=HOME=/home/<
          username>
          
      Environment="DISPLAY=:%i"
      PIDFile=/home/<
          username>
          /.vnc/%H:%i.pid
      ExecStartPre=-/usr/bin/vncserver -kill :%i >
           /dev/null 2>
          &
          1
      ExecStart=/usr/bin/vncserver :%i -geometry 1920x1080 -depth 24 -localhost no
      ExecStop=/usr/bin/vncserver -kill :%i
      
      [Install]
      WantedBy=multi-user.target
      
    • 启用并启动:sudo systemctl daemon-reload & & sudo systemctl enable --now vncserver@:1
  • 多用户场景(RHEL/CentOS 常见做法):编辑 /etc/tigervnc/vncserver.users 映射显示编号与用户(如 :2=user1),为用户设置 vncpasswd,再用 systemctl 启停对应实例。

四 客户端连接与安全加固

  • 直连方式(仅在受信网络):客户端输入 < 服务器IP> :< 显示编号> (如 192.168.1.10:1,端口为 5901)。
  • SSH 隧道(推荐,加密且可穿越防火墙):
    • 本地端口转发:ssh -L 5901:127.0.0.1:5901 @< server_ip>
    • 客户端连接:vncviewer localhost:1
  • 防火墙放行(示例):
    • firewalld:sudo firewall-cmd --permanent --add-service=vnc-server & & sudo firewall-cmd --reload
    • ufw:sudo ufw allow 5901
  • 安全建议:
    • 优先使用 SSH 隧道 或限制 VNC 仅监听 127.0.0.1 并通过跳板机转发
    • 使用强密码,必要时禁用“仅查看”密码
    • 避免使用 root 直接运行 VNC 会话

五 常见问题与排查

  • 端口未监听或连接被拒:确认实例已启动(vncserver -list),检查端口 5901+ 是否开放,以及云主机安全组/本机防火墙策略。
  • 黑屏或桌面未加载:检查 ~/.vnc/xstartup 是否有可执行权限、启动命令是否与已安装桌面匹配(GNOME 与 Xfce 配置不同)。
  • 会话残留导致端口占用:先 vncserver -kill :1,再重新启动;必要时检查 ~/.vnc/*.log 定位错误。
  • 在较新桌面环境(如 Ubuntu 24.04)体验不佳:优先选择 Xfce,或在登录界面切换到 GNOME on Xorg 后再启动 VNC。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: TigerVNC在Linux上如何远程控制
本文地址: https://pptw.com/jishu/788944.html
ubuntu中cximage的官方文档在哪里找 Linux Jellyfin是否支持移动设备访问

游客 回复需填写必要信息