如何在Centos 8/RHEL 8上安装和配置VNC服务器
创始人
2025-03-19 03:50:25
0次

[[279125]]

 VNC(虚拟网络计算Virtual Network Computing)服务器是基于 GUI 的桌面共享平台,它可让你访问远程桌面计算机。在 Centos 8 和 RHEL 8 系统中,默认未安装 VNC 服务器,它需要手动安装。在本文中,我们将通过简单的分步指南,介绍如何在 Centos 8 / RHEL 8 上安装 VNC 服务器。

在 Centos 8 / RHEL 8 上安装 VNC 服务器的先决要求

要在你的系统中安装 VNC 服务器,请确保你的系统满足以下要求:

  • CentOS 8 / RHEL 8
  • GNOME 桌面环境
  • root 用户权限
  • DNF / YUM 软件包仓库

在 Centos 8 / RHEL 8 上安装 VNC 服务器的分步指导

步骤 1)安装 GNOME 桌面环境

在 CentOS 8 / RHEL 8 中安装 VNC 服务器之前,请确保已安装了桌面环境(DE)。如果已经安装了 GNOME 桌面或安装了 GUI 支持,那么可以跳过此步骤。

在 CentOS 8 / RHEL 8 中,GNOME 是默认的桌面环境。如果你的系统中没有它,请使用以下命令进行安装:

  1. [root@linuxtechi ~]# dnf groupinstall "workstation"
  2. 或者
  3. [root@linuxtechi ~]# dnf groupinstall "Server with GUI

成功安装上面的包后,请运行以下命令启用图形模式:

  1. [root@linuxtechi ~]# systemctl set-default graphical

现在重启系统,进入 GNOME 登录页面(LCTT 译注:你可以通过切换运行态来进入图形界面)。

  1. [root@linuxtechi ~]# reboot

重启后,请取消注释 /etc/gdm/custom.conf 中的 WaylandEnable=false,以使通过 vnc 进行的远程桌面会话请求由 GNOME 桌面的 xorg 处理,来代替 Wayland 显示管理器。

注意: Wayland 是 GNOME 中的默认显示管理器 (GDM),并且未配置用于处理 X.org 等远程渲染的 API。

步骤 2)安装 VNC 服务器(tigervnc-server)

接下来,我们将安装 VNC 服务器,有很多 VNC 服务器可以选择,出于安装目的,我们将安装 TigerVNC 服务器。它是最受欢迎的 VNC 服务器之一,并且高性能还独立于平台,它使用户可以轻松地与远程计算机进行交互。

现在,使用以下命令安装 TigerVNC 服务器:

  1. [root@linuxtechi ~]# dnf install tigervnc-server tigervnc-server-module -y

步骤 3)为本地用户设置 VNC 密码

假设我们希望用户 pkumar 使用 VNC 进行远程桌面会话,然后切换到该用户并使用 vncpasswd 命令设置其密码,

  1. [root@linuxtechi ~]# su - pkumar
  2. [root@linuxtechi ~]$ vncpasswd
  3. Password:
  4. Verify:
  5. Would you like to enter a view-only password (y/n)? n
  6. A view-only password is not used
  7. [root@linuxtechi ~]$
  8. [root@linuxtechi ~]$ exit
  9. logout
  10. [root@linuxtechi ~]#

步骤 4)设置 VNC 服务器配置文件

下一步是配置 VNC 服务器配置文件。创建含以下内容的 /etc/systemd/system/vncserver@.service,以便为上面的本地用户 pkumar 启动 tigervnc-server 的服务。

  1. [root@linuxtechi ~]# vim /etc/systemd/system/vncserver@.service
  2. [Unit]
  3. Description=Remote Desktop VNC Service
  4. After=syslog.target network.target
  5.  
  6. [Service]
  7. Type=forking
  8. WorkingDirectory=/home/pkumar
  9. User=pkumar
  10. Group=pkumar
  11.  
  12. ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
  13. ExecStart=/usr/bin/vncserver -autokill %i
  14. ExecStop=/usr/bin/vncserver -kill %i
  15.  
  16. [Install]
  17. WantedBy=multi-user.target

保存并退出文件,

注意:替换上面文件中的用户名为你自己的。

默认情况下,VNC 服务器在 tcp 端口 5900+n 上监听,其中 n 是显示端口号,如果显示端口号为 “1”,那么 VNC 服务器将在 TCP 端口 5901 上监听其请求。

步骤 5)启动 VNC 服务并允许防火墙中的端口

我将显示端口号设置为 1,因此请使用以下命令在显示端口号 “1” 上启动并启用 vnc 服务,

  1. [root@linuxtechi ~]# systemctl daemon-reload
  2. [root@linuxtechi ~]# systemctl start vncserver@:1.service
  3. [root@linuxtechi ~]# systemctl enable vncserver@:1.service
  4. Created symlink /etc/systemd/system/multi-user.target.wants/vncserver@:1.service → /etc/systemd/system/vncserver@.service.
  5. [root@linuxtechi ~]#

使用下面的 netstat 或 ss 命令来验证 VNC 服务器是否开始监听 5901 上的请求,

  1. [root@linuxtechi ~]# netstat -tunlp | grep 5901
  2. tcp 0 0 0.0.0.0:5901 0.0.0.0:* LISTEN 8169/Xvnc
  3. tcp6 0 0 :::5901 :::* LISTEN 8169/Xvnc
  4. [root@linuxtechi ~]# ss -tunlp | grep -i 5901
  5. tcp LISTEN 0 5 0.0.0.0:5901 0.0.0.0:* users:(("Xvnc",pid=8169,fd=6))
  6. tcp LISTEN 0 5 [::]:5901 [::]:* users:(("Xvnc",pid=8169,fd=7))
  7. [root@linuxtechi ~]#

使用下面的 systemctl 命令验证 VNC 服务器的状态,

  1. [root@linuxtechi ~]# systemctl status vncserver@:1.service

vncserver-status-centos8-rhel8

上面命令的输出确认在 tcp 端口 5901 上成功启动了 VNC。使用以下命令在系统防火墙中允许 VNC 服务器端口 “5901”,

  1. [root@linuxtechi ~]# firewall-cmd --permanent --add-port=5901/tcp
  2. success
  3. [root@linuxtechi ~]# firewall-cmd --reload
  4. success
  5. [root@linuxtechi ~]#

步骤 6)连接到远程桌面会话

现在,我们已经准备就绪,可以查看远程桌面连接是否正常工作。要访问远程桌面,请在 Windows / Linux 工作站中启动 VNC Viewer,然后输入 VNC 服务器的 IP 地址和端口号,然后按回车。

VNC-Viewer-Windows10

接下来,它将询问你的 VNC 密码。输入你先前为本地用户创建的密码,然后单击 “OK” 继续。

VNC-Viewer-Connect-CentOS8-RHEL8-VNC-Server

现在你可以看到远程桌面,

VNC-Desktop-Screen-CentOS8

就是这样,你已经在 Centos 8 / RHEL 8 中成功安装了 VNC 服务器。

总结

希望这篇在 Centos 8 / RHEL 8 上安装 VNC 服务器的分步指南为你提供了轻松设置 VNC 服务器并访问远程桌面的所有信息。请在下面的评论栏中提供你的意见和建议。下篇文章再见。谢谢再见!!!

 

 

相关内容

热门资讯

PHP新手之PHP入门 PHP是一种易于学习和使用的服务器端脚本语言。只需要很少的编程知识你就能使用PHP建立一个真正交互的...
网络中立的未来 网络中立性是什... 《牛津词典》中对“网络中立”的解释是“电信运营商应秉持的一种原则,即不考虑来源地提供所有内容和应用的...
各种千兆交换机的数据接口类型详... 千兆交换机有很多值得学习的地方,这里我们主要介绍各种千兆交换机的数据接口类型,作为局域网的主要连接设...
粉嫩如何诠释霸道 东芝M805... “霸道粉”是个什么玩意东芝M805拿过来的时候,笔者扑哧笑了,不是笑这款笔记本,而是笑这款产品的颜色...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
什么是大数据安全 什么是大数据... 在《为什么需要大数据安全分析》一文中,我们已经阐述了一个重要观点,即:安全要素信息呈现出大数据的特征...
只需三步,让你掌握阿尔法路由器... 请参照以下阿尔法路由器设置方法,通过浏览器进入及设置宽带路由器。经过这三个步骤的设置,基本上能够熟悉...
如何更省钱? 近期特价热门硒鼓... 如今激光打印设备已经成为商务或企业的绝对主力办公设备,但采购者往往忽视了激光打印设备所用的耗材,相对...
全面诠释网络负载均衡 负载均衡的出现大大缓解了服务器的压力,更是有效的利用了资源,提高了效率。那么我们现在来说一下网络负载...
如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...