【Linux】CentOS 7 VNC 远程桌面配置

CentOS 7 VNC 远程桌面配置

适用环境

  • CentOS 7 系统
  • 已安装图形桌面环境(GNOME/KDE)
  • 网络连接正常

配置步骤

1. 安装VNC服务器

bash 复制代码
# 安装TigerVNC服务器
sudo yum install tigervnc-server tigervnc-server-module -y

2. 安装桌面环境(如果未安装)

bash 复制代码
sudo yum groupinstall "GNOME Desktop" "Graphical Administration Tools" -y

3. 设置VNC密码

bash 复制代码
vncpasswd
# 输入密码并确认

4. 配置VNC服务

bash 复制代码
# 复制配置文件
sudo cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service

# 编辑配置文件,将<USER>替换为实际用户名
sudo vim /etc/systemd/system/vncserver@:1.service

修改配置文件内容

找到并修改这两行:

复制代码
ExecStart=/usr/sbin/runuser -l <USER> -c "/usr/bin/vncserver %i"
PIDFile=/home/<USER>/.vnc/%H%i.pid

例如,使用root用户:

复制代码
ExecStart=/usr/sbin/runuser -l root -c "/usr/bin/vncserver %i"
PIDFile=/home/root/.vnc/%H%i.pid

5. 启动VNC服务

bash 复制代码
# 重新加载systemd
sudo systemctl daemon-reload

# 启动VNC服务(:1表示5901端口)
sudo systemctl start vncserver@:1.service

# 设置开机自启
sudo systemctl enable vncserver@:1.service

6. 配置防火墙(可选)

如果防火墙开启,需要开放VNC端口:

bash 复制代码
# 开放5901端口
sudo firewall-cmd --permanent --add-port=5901/tcp
sudo firewall-cmd --reload

7. 连接方式

  1. 下载VNC Viewer客户端:https://www.realvnc.com/en/connect/download/viewer/
  2. 安装并打开VNC Viewer
  3. 输入连接地址:CentOS_IP:5901CentOS_IP:1
  4. 输入之前设置的VNC密码
  5. 点击"Connect"连接

常见问题排查

问题 解决方法
连接黑屏 检查桌面环境是否正确安装,重启VNC服务
连接被拒绝 检查防火墙是否开放5901端口,或临时关闭防火墙测试
密码错误 重新运行 vncpasswd 设置密码
服务启动失败 检查配置文件中的用户名是否正确

注意事项

  • VNC默认使用5900+端口(:1对应5901,:2对应5902等)
  • 建议在安全网络环境中使用,或配置防火墙限制访问IP
  • 对于生产环境,建议使用SSH隧道加密VNC连接
  • 多个用户可以使用不同的显示器号(:1, :2等)

验证命令

bash 复制代码
# 查看VNC服务状态
sudo systemctl status vncserver@:1.service

# 检查5901端口是否开放
netstat -tlnp | grep 5901
相关推荐
金銀銅鐵1 天前
[Python] 从《千字文》中随机挑选汉字
后端·python
cup111 天前
[技术复盘] Windows Python 打包实战:Nuitka 环境踩坑总结与 CI 自动化构建全指南
python·ai·环境变量·ci·nuitka·skill
aqi001 天前
15天学会AI应用开发(七)有了大模型为什么还要引入RAG
人工智能·python·大模型·ai编程·ai应用
金銀銅鐵2 天前
用 Python 实现 Take-Away 游戏
python·游戏
copyer_xyf2 天前
Agent 流程编排
后端·python·agent
copyer_xyf2 天前
Agent RAG
后端·python·agent
copyer_xyf2 天前
【RAG】向量数据库:milvus
后端·python·agent
copyer_xyf2 天前
Agent 记忆管理
后端·python·agent
星云穿梭2 天前
用Python写一个带图形界面的学生管理系统——完整教程
python