【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
相关推荐
voidmort19 小时前
3. 微调(Fine-tuning)与强化学习(RL)的核心思想
python·深度学习·算法
biter down19 小时前
基于 Pywinauto 的 QQ 音乐 GUI 自动化测试实践
python
人道领域19 小时前
【LeetCode刷题日记】669.修剪二叉搜索树
开发语言·python·算法
EntyIU21 小时前
mineru从安装部署到测试使用完整指南
python·ocr
运维栈记21 小时前
API Error: 400 Request body format invalid
linux·ai
小白兔奶糖ovo21 小时前
【Leetcode】231. 2的幂
linux·算法·leetcode
安替-AnTi21 小时前
厚朴 APK 搜索接口分析
python·apk·解析·taobao
s_w.h1 天前
【 linux 】动静态库的制作
linux·运维·服务器·算法·bash
山川湖海1 天前
AI时代快速学编程语言的陷阱(以Python为例)
大数据·人工智能·python
H Journey1 天前
Supervisor 进程管理工具介绍
python·supervisor·linux 运维