目录vim
1.Vnc 概述
VNC:virtual Network Console 虚拟网络控制台。是一款经常使用的远程控制工具软件。
VNC 包括如下四个命令:vncserver,vncviewer,vncpassword及vncconnect。
VNCclient端经过VNC协议远程链接到vnc server端,进行桌面共享及交互;
经常使用的VNC软件主要有:RealVNC、TightVNC、TigerVNC、UltraVNC。
RealVNC:由VNC团队部分红员开发,分为全功能商业版及免费版;
TightVNC:精简型,较节省带宽;
TigerVNC:是基于RealVNC 4和X.org代码库的VNC的高速版本;
UltraVNC:可结合Active Directory 及NTLM的帐号密码认证,但仅有Windows版本。
VNC默认使用TCP端口5900。
VNC服务使用的端口号与桌面号相关,端口从5900开始,对应关系以下:
桌面号为“1” ---- 端口号为5901
桌面号为“2” ---- 端口号为5902
桌面号为“3” ---- 端口号为5903
……
基于Java的VNC客户程序Web服务TCP端口从5800开始,对应关系以下:
桌面号为“1” ---- 端口号为5801
桌面号为“2” ---- 端口号为5802
桌面号为“3” ---- 端口号为5803网络
2.Vnc 安装部署
2.1环境检查
在安装以前,须要先检查下系统版本以及是否已安装vnc软件。
并且,由于client经过vnc链接到server端的桌面,所以,在安装部署VNC server以前,Linux须要先安装好图形化桌面。
[root@localhost ~]# cat /etc/redhat-release #检查系统版本
[root@localhost ~]# rpm -qa | grep vnc #检查是否已安装vncsession
[root@localhost ~]# systemctl get-default #检查当前运行级别dom
[root@localhost ~]# yum grouplist #检查可安装的group
Available Environment Groups:
GNOME Desktop
Available Groups:
Graphical Administration Tools
检查能够看到支持安装GNOME桌面及对应的图形化管理工具。tcp
2.2图形化桌面安装
使用yum命令开始安装GNOME包及图形化管理工具。
[root@localhost ~]# yum groupinstall "GNOME Desktop"
[root@localhost ~]# yum groupinstall "Graphical Administration Tools"
安装完后,再进行检查一遍,以下结果表示图形化桌面已安装OK:
[root@localhost ~]# yum grouplist
Installed Environment Groups:
GNOME Desktop
Installed Groups:
Graphical Administration Tools分布式
2.3Vnc 软件安装
图形化桌面安装好后,而后经过yum安装tightVNC软件包:
[root@localhost ~]# yum isntall nvc-serveride
安装完毕后,再次检查下vnc安装包工具
[root@localhost ~]# rpm -qa |grep vnc3d
3.Vnc 配置
安装好后,不要急着开始启用,先了解下vnc几个基本配置文件。
3.1须要了解的关键文档
/lib/systemd/system/vncserver@.service #vnc配置文件
/usr/lib/systemd/system/vncserver@.service #vnc配置文件
/etc/systemd/system/vncserver@:N.service #vnc配置文件,N表明数字
/etc/sysconfig/vncservers #vnc user配置文件
/usr/bin/vncconfig
/usr/bin/vncpasswd #vnc用户密码更改进程
/usr/bin/vncserver #vnc 服务进程unix
3.2Vnc配置文件配置
打开 /lib/systemd/system/vncserver@.service 文件,按提示进行配置:
按如上提示:
第一步:copy /lib/systemd/system/vncserver@.service 文件到 /etc/systemd/system/ 目录下,并命名为vncserver@:1.service
#cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service
第二步:配置 /etc/systemd/system/vncserver@:1.service文件
[root@localhost system]# vim /etc/systemd/system/vncserver@:1.service
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target
[Service]
Type=forking
#Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/usr/sbin/runuser -l user -c "/usr/bin/vncserver %i"
PIDFile=/home/user/.vnc/%H%i.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
[Install]
WantedBy=multi-user.target
第三步:从新加载systemd服务br/>vncserver@.service文件配置好后,就须要从新加载systemd服务。
[root@localhost system]# systemctl daemon-reload
第四步:启动vncserver服务。
[root@localhost system]# systemctl start vncserver@:1.service
注意:若有多个用户须要经过VNC 链接到vnc server,可重复以上步骤,创建多个vncserver@:N.service 文件,并运行。
3.3创建VNC用户
新增一个用户并设置密码:
[root@localhost system]# useradd user
[root@localhost system]# passwd user
以刚才创建的用户登陆:
[root@localhost system]# su - user
[user@localhost ~]$ vncpasswd
如上图所示,能够设置vnc帐号两个密码,vncpasswd密码具备用户正常的权限;
使用 view-only密码链接vnc,仅有桌面浏览权限。
设置vncpasswd密码后,在帐号的家目录里就会自动创建 .vnc 文件:
4.Vncserver 服务运行
4.1vncserver 启动
能够针对不一样的vnc用户启用对应的vncserver服务。
[root@localhost ~]# systemctl start vncserver@:1.service
[root@localhost ~]# systemctl status vncserver@:1.service
启用服务后,再检查服务状态,从上图能够看出,vncserver@:1.service 已加载 /etc/systemd/system/vncserver@:1.service 文件。
再检查监听的端口:
[root@localhost ~]# netstat -nutpl |grep vnc
[root@localhost ~]# ps -ef |grep vnc
查看日志信息:
每一个vnc用户目录下都会生成一个对应的日志文件
[root@localhost ~]# tail -f /home/user/.vnc/localhost.localdomain\:1.log
4.2vncserver 自启动
[root@localhost ~]# systemctl enable vncserver@:1.service
命令执行后会在 /etc/systemd/system/multi-user.target.wants/ 下创建一个对应的ln链接,之后开机时就会自动加载vncserver@:1.service进程。
4.3Vncserver 关闭br/>使用如下命令关闭vncserver@:1.service进程,仅关闭此用户的vnc服务,对其余用户的vnc链接不受影响。
[root@localhost ~]# systemctl stop vncserver@:1.service
5.防火墙配置
所有配置好后,服务也启动了,还须要针对该服务放通防火墙。
能够针对端口进行放通,也能够针对该服务进行放通。
防火墙的默认端口为TCP的5900 - 590N,第一个vnc用户使用TCP 5901,则第二个vnc用户使用TCP 5902,依次类推。
[root@localhost~]# firewall-cmd --zone=public --add-port=5901/tcp --permanent
若是担忧端口变化,也能够针对服务进行放通:
[root@localhost ~]# firewall-cmd --add-service vnc-server --permanent
服务放通后,还须要从新加载防火墙,使更改生效:
[root@localhost ~]# firewall-cmd --reload
[root@localhost ~]# firewall-cmd --list-services
6.Vnc 客户端安装步骤
6.1软件安装
能够根据本身的爱好从官网下载对应的软件。我这里使用realvnc viewer。
首先进入官网:https://www.realvnc.com/en/connect/download/viewer/
下载后双击VNC-Viewer-6.19.715-Windows.exe开始安装:
选择语音:
点击下一步:
接受许可协议:
选择安装组件:
点击安装:
安装完毕后,进入安装目录C:\Program Files\RealVNC\VNC Viewer打开vncviewer程序:
输入链接的vncserver IP地址及端口:
在 vncviewer会自动保留刚才所创建的链接:
双击打开,输入用户的vnc链接密码:
6.2环境设置
若是是第一次登录的话,还须要配置下基本的桌面环境,
语言设置:
位置服务设置:
在线帐号,能够直接跳过,后续有必要可在设置:
配置好后,点击开始应用:
到此,VNC已基本配置OK,能够正式使用。
7.Vnc 链接黑屏解决办法
经过vncviewer链接后,出现黑屏,主要处理办法:
7.1修改xstartup 文件
进入vnc用户家目录下的xsartup文件
[root@localhost ~]# vim /home/user/.vnc/xstartup
#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
#/etc/X11/xinit/xinitrc
#vncserver -kill $DISPLAY
exec /etc/X11/xinit/xinitrc
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
#xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
#twm &
gnome-session &
7.2设置xstartup文件权限
Xstartup权限默认为
能够设置权限为777
[root@localhost ~]# chmod 777 /home/user/.vnc/xstartup
7.3配置vncservers文件
[root@localhost ~]# vim /etc/sysconfig/vncservers
#THIS FILE HAS BEEN REPLACED BY /lib/systemd/system/vncserver@.service
VNCSERVERS=”1:root”
VNCSERVERARGS[1]="-geometry 800×600"
7.4重启主机
配置完毕后,重启服务,如仍是不行,再重启主机。
Zabbix5.0企业级分布式监控系统:精讲与企业应用:Zabbix5.0企业级分布式监控系统