VNC简介
VNC (Virtual Network Computing)是虚拟网络计算机的缩写。VNC是一款优秀的远程控制工具软件,由著名的AT&T的欧洲研究实验室开发的。VNC是在基于UNIX和Linux操作系统的免费的开放源码软件,远程控制能力强大,高效实用,其性能可以和Windows和MAC中的任何远程控制软件媲美。
VNC组成部分
VNC基本上是由两部分组成:一部分是客户端的应用程序(vncviewer);另外一部分是服务器端的应用程序(vncserver)。VNC的基本运行原理和一些Windows下的远程控制软件很相象。VNC的服务器端应用程序在UNIX和Linux操作系统中适应性很强,图形用户界面十分友好,看上去和Windows下的软件界面也很类似。在任何安装了客户端的应用程序(vncviewer)的Linux平台的计算机都能十分方便的和安装了服务器端的应用程序(vncserver)的计算机相互连接。另外,服务器端 (vncserver)还内建了Java Web接口,这样用户通过服务器端对其他计算机的操作就能通过Netscape显示出来了,这样的操作过程和显示方式比较直观方便。
环境搭建
windows:VNC-view (控制端)
linux:VNC-server (服务器端)
服务器端
前提:想要控制服务器端,服务器必须要有一个桌面环境,例如:GNOME
yum grouplist #查看环境分组
yum groupinstall -y "GNOME Desktop" #安装桌面环境
接下来,开始安装服务器端的vnc工具
yum install -y tigervnc-server
cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service #复制一个服务模板的配置文件
vim /etc/systemd/system/vncserver@\:1.service #每一个用户,都需要单独设置一个监听服务
配置项在此文件的末尾
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target
[Service]
Type=forking
User=<USER> #将此项中的<USER>改为需要登录的用户名,此案例为root
# Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=-/usr/bin/vncserver -kill %i
ExecStart=/usr/bin/vncserver %i
PIDFile=/home/<USER>/.vnc/%H%i.pid #此项中的<USER>也需要修改用户名,因为此案例用户为root,所以路径为/root/.vnc/%H%i.pid
ExecStop=-/usr/bin/vncserver -kill %i
[Install]
WantedBy=multi-user.target
保存并退出
**对于普通用户的监听服务创建,只需要重新复制一个模板文件,修改文件名及其中的<USER>字段即可**
设置vnc密码,vnc的密码跟系统的用户密码不一样,是使用vnc viewer登陆时需要使用的密码。
vncpasswd #设置vnc密码
Password: #输入密码
Verify: #密码核实,重新输入一遍
Would you like to enter a view-only password (y/n)? y #您要输入仅限查看的密码吗 ?是滴
Password:
Verify:
启动服务
systemctl start vncserver@:1.service 或者 vncserver
systemctl enable vncserver@:1.service
netstat -nlpt | grep vnc #查看vnc服务端口
tcp 0 0 0.0.0.0:5901 0.0.0.0:* LISTEN 41854/Xvnc
tcp 0 0 0.0.0.0:6001 0.0.0.0:* LISTEN 41854/Xvnc
tcp6 0 0 :::5901 :::* LISTEN 41854/Xvnc
tcp6 0 0 :::6001 :::* LISTEN 41854/Xvnc
注意关闭防火墙,或允许5901通行
接下来部署控制端,使用主机进行测试
VNC-view是一个开源的软件,官方下载地址如下:
https://www.realvnc.com/en/connect/download/viewer/
傻瓜式安装完成后,开始连接linux服务器
以上vnc远程控制搭建完成。