虚拟网络计算(VNC) 是一种远程共享系统,可以控制连接到互联网上的任何其他计算机,只需键盘和鼠标点击就可以轻松地从一台计算机传输到另一台计算机,它可以帮助管理员和技术人员管理他们的服务器和桌面,而无需身处同一地方。
VNC是1990年代后期创建的开源应用程序,它是独立的,并与Windows和Unix/Linux系统兼容。这意味着普通基于Windows用户可以与基于Linux系统进行交互,而不会出现任何问题。
当然,要使用VNC,必须具有TCP/IP连接和VNC Viewer客户端才能连接到运行VNC服务器组件的计算机,这样VNC服务器将远程计算机的复制显示发送给观看者。
本文简单介绍如何在Linux系统中使用TightVNC安装VNC服务器,TightVNC是旧VNC程序的增强版,是在基于RHEL的Linux发行版上具有GNOME桌面远程访问。
步骤 1:安装GNOME桌面
如果安装了最小版本的操作系统,它只提供命令行界面而不提供GUI。因此需要安装一个名为GNOME Desktop的 GUI(图形用户界面),它在远程 VNC访问上运行比较好。
# yum groupinstall "SERVER WITH GUI" 或者 # dnf groupinstall workstation
步骤 2:安装TightVNC服务器
TightVNC是一款远程桌面控制软件,可以让我们连接到远程桌面。要安装可以使用以下yum命令,如下所示。
# yum -y install tigervnc-server xorg-x11-fonts-Type1
步骤 3:创建普通VNC用户
创建一个普通用户,用于连接到远程桌面。例如,本文使用“ tecmint ”作为用户,你可以可以选择自己的想要设置的用户名。
[root@tecmint ~]# useradd tecmint [root@tecmint ~]# passwd tecmint Changing password for user tecmint. New password: Retype new password: passwd: all authentication tokens updated successfully.
步骤 4:为用户设置VNC密码
首先使用(su – tecmint)切换到用户并运行 ‘ vncpasswd ‘为用户设置VNC密码。
注意:此密码用于访问VNC远程桌面,在步骤3中创建的密码用于访问SSH会话。
[root@tecmint ~]# su - tecmint [tecmint@tecmint ~]$ vncpasswd Password: Verify:
上面的命令要求提供两次密码,并在用户主目录下创建“ .vnc ”目录,其中包含一个passwd文件,可以使用以下命令检查密码文件是否已创建。
# ls -l /home/tecmint/.vnc -rw------- 1 tecmint tecmint 8 Oct 3 21:33 passwd
如果要添加另一个用户,只需切换到该用户并使用vncpasswd命令添加vnc密码即可。
步骤 5:为Gnome配置VNC
这里将使用~/.vnc/config文件中的用户设置来配置TigerVNC以访问Gnome 。
$ vim ~/.vnc/config
将以下内容添加到配置文件中。
session=gnome geometry=1920x1200 localhost alwaysshared
该会话参数定义要访问的会话,几何参数会将设置VNC桌面的分辨率。
现在退出用户登录并返回到root用户登录。
$ exit
TigerVNC带有默认配置设置,允许用户映射到/etc/tigervnc/vncserver.users文件中的特定端口:
# vim /etc/tigervnc/vncserver.users
配置文件使用<display_port>=<username>
参数。在下面的列子中,将显示端口分配:1
给用户tecmint。
# This file assigns users to specific VNC display numbers. # The syntax is =. E.g.: # # :2=andrew # :3=lisa :1=tecmint
如果想要要添加另一个用户,只需将显示端口设置为:2
后跟用户名即可。
第 6 步:启动Tigervnc服务器
进行所有更改后,运行以下命令以启动VNC服务器。当然,在与“ tecmint ”用户开始VNC会话之前,小编简单介绍下端口号和ID。
默认情况下,VNC在端口5900和ID:0(用于root用户)上运行。在本文中,小编创建了tecmint、ravi、Navin和avishek。因此,这些用户使用的端口和ID如下
User's Port's ID's 5900 root :0 5901 tecmint :1 5902 ravi :2 5903 navin :3 5904 avishek :4
因此,这里用户“ tecmint ”将获得端口5901和id为:1。如果创建了另一个用户比如 ( user5 ) ,那么获得端口5905和id:5,以此类推。
要为分配给显示端口的用户启动和启用VNC服务:1
,请输入:
# systemctl start vncserver@:1 --now # systemctl enable vncserver@:1 --now
你可以通过以下方式确认VNC服务是否已成功启动:
# systemctl status vncserver@:1
要允许其他用户访问VNC,只需替换1
为显示端口号即可。
步骤 7:在防火墙上打开VNC端口
在iptables或firewalld上打开端口,例如在5901为用户(tecmint)。
# iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 5901 -j ACCEPT 或者 # firewall-cmd --zone=public --add-port=5901/tcp
对于多个用户,ravi、navin和avishek,这里分别打开端口5902、5903和5904。
# iptables -I INPUT 5 -m state --state NEW -m tcp -p tcp -m multiport --dports 5902:5904 -j ACCEPT 或者 # firewall-cmd --zone=public --add-port=5902-5904/tcp
重启iptables服务。
# service iptables save # service iptables restart 或者 # firewall-cmd --reload # systemctl restart firewalld
第 8 步:下载VNC客户端
现在打开Windows或Linux电脑,下载VNC Viewer客户端并将其安装在您的系统中以访问桌面。
- 下载地址:www.realvnc.com/download/viewer/
步骤 9:使用客户端连接到远程桌面
安装VNC Viewer客户端后,打开它,将看到类似于以下屏幕的内容。为tecmint用户输入VNC服务器IP地址和VNC ID(即1)。
输入上面使用“ vncpasswd ”命令创建的密码。
完成之后,这样就已连接到远程桌面了。