【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:5901 或 CentOS_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
相关推荐
全栈练习生36 分钟前
AI Agent 沙箱
python·ai
广州浮点FLOATLIC1 小时前
许可证服务器迁移后软件打不开:研发 IT 怎样定位连接问题
linux·服务器·数据库
BLUcoding2 小时前
接口服务公网超时排查记录:SecureRandom 阻塞问题分析与解决
java·linux·springboot·aes·securerandom
AIgorithmGEEK2 小时前
[Linux]从手写报头到内核套路:序列化、反序列化与自定义协议全链路
linux·运维·服务器·网络·序列化·反序列化
SEO_juper2 小时前
用 Python 写一个 GEO 可见性检查脚本:你的网站现在能被 AI 引用吗
开发语言·人工智能·爬虫·python·seo·外贸独立站
Nil2082 小时前
leetcode 139单词拆分
linux·运维·服务器
Starry-sky(jing)2 小时前
BUG: unable to handle kernel paging request 完整排查:dmesg 四要素与三路定罪
linux·运维·服务器·内核·排障
mounter6252 小时前
从硬件互连到操作系统变革:CXL 技术演进与 Linux 内核工程挑战
linux·运维·服务器
用户8356290780513 小时前
使用 Python 对 Excel 工作表进行排序
后端·python
for_ever_love__3 小时前
MySQL 全文索引实战:FULLTEXT、ngram 中文分词与 MATCH AGAINST 到底该怎么用
java·python·mysql·全文检索·分词·索引·ngram