【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
相关推荐
Ai.den2 小时前
Windows 安装 DeerFlow 2.0
人工智能·windows·python·ai
weixin_433179332 小时前
python - 存储数据
python
捞的不谈~2 小时前
解决在Ubuntu系统下使用Lucid 相机(HTR003S-001)-Ubuntu 20.04系统遇到GLIBC和GLIBCXX版本不兼容的问题
linux·运维·ubuntu
阿坤带你走近大数据2 小时前
数据API接口的数据源和目标源分别是什么?怎么设置?
java·python·api
别退2 小时前
env_TensorFlow2.20.0_PyTorch2.9.0+cpu
python
ak啊2 小时前
Python后端开发准则
python
悠然南风2 小时前
【云原生学习】Linux网络知识操作精讲 + 实战踩坑
linux
李李李li2 小时前
linux x86 离线安装docker 27.5.0
linux·docker·eureka
雨墨✘2 小时前
如何解决SQL多表查询数据重复问题_使用DISTINCT与JOIN优化
jvm·数据库·python