centos7 + realvnc + xfce 最简工作

1.准备好yum源

除了centos源,还需要一个epel

# yum install epel-release

2 安装X Window system  (本地光盘源)

yum groupinstall "X Window system"

3 安装Xfce4 (epel源)

yum install -y xfce4-* xfwm konsole thunar  xfwm4-themes oxygen-* xfdesktop.x86_64 lightdm

4 关闭防火墙和selinux

[root@vnc ~]# systemctl stop firewalld
[root@vnc ~]# systemctl disable firewalld

[root@vnc ~]# setenforce =0

[root@vnc ~]# vim /etc/selinux/config
SELINUX=disabled

5.安装字体包

[root@vnc ~]# yum groupinstall "Fonts" -y

6.安装realvnc

[root@vnc ~]# yum localinstall VNC-Server-6.7.4-Linux-x64.rpm

[root@vnc ~]# vnclicense -add Z456C-LMKTC-NLGWQ-H5CUR-ZVWEA

7.设置默认启动图形界面

 # /etc/X11 存放与 x windows 有关的设置

[root@vnc ~]# echo xfce4-session >> /etc/X11/Xsession
[root@vnc ~]# chmod 755 /etc/X11/Xsession

重启两个服务

8.realvnc服务 一共有两个服务

     systemctl start vncserver-x11-serviced.service
     systemctl start vncserver-virtuald.service
     systemctl enable vncserver-virtuald.service
     systemctl enable vncserver-x11-serviced.servic

8.这里涉及到RealVNC的两种工作模式:

virtual模式:

该模式允许所有非Root权限用户连接服务器桌面(用户与用户间的桌面相互独立、多个VNC Viewer可以使用相同用户名连接相同的桌面),在使用VNC Viewer连接时需要输入虚拟端口号5999

x11模式:

该模式只允许具有Root权限的用户登录,相当于镜像了服务器的外接显示器,在使用VNC Viewer连接时不需要输入虚拟端口号

9.创建针对所有用户的统一配置文件,并设置读写权限

touch /etc/vnc/config.d/common.custom

chmod 644 /etc/vnc/config.d/common.custom

vim /etc/vnc/config.d/common.custom

# 禁止用户配置VNC的选项菜单

DisableOptions=FALSE

# 禁止与服务器互传文件
ShareFiles=FALSE
EnableRemotePrinting=FALSE
Encryption=AlwaysOn
AllowChangeDefaultPrinter=FALSE
AcceptCutText=TRUE

# 禁止与服务器剪切板进行信息交互
SendCutText=TRUE
Authentication=SystemAuth

# 禁止非Root用户访问普通用户的VNC配置文件
RootSecurity=TRUE
AuthTimeout=30
BlackListThreshold=10
BlackListTimeout=30
DisableAddNewClient=TRUE
DisableTrayIcon=2

# 禁止从用户界面手动更新
EnableManualUpdateChecks=FALSE       

# 禁止检测更新  
EnableAutoUpdateChecks=0   

# 禁止访客登录                                                                 
GuestAccess=0
EnableGuestLogin=FALSE
AllowTcpListenRfb=TRUE
RfbPort=8001
AllowHTTP=FALSE
IdleTimeout=0
QuitOnCloseStatusDialog=FALSE
DaemonPort=5900
AlwaysShared=TRUE
NeverShared=FALSE
DisconnectClients=FALSE
ServiceDiscoveryEnabled=FALSE
_ConnectToExisting=1
RandR=1920x1080,1920x1014,1600x900,

1440x900,1280x800,1366x768,1024x768,800x600,1280x1024,3440x1440
#PamApplicationName=vncserver.custom

其他

# 禁止用户之间聊天对话

EnableChat=0

#  禁止通过VNC将服务器文件打印到本机打印机

EnableRemotePrinting=0

# 禁用用户体验改进计划(收集运行数据传到VNC官网)

EnableAnalytics=0

# X11模式下,禁止在显示器弹出连接确认框

QueryConnect=0

# 禁止用户从图形界面进行反向连接

DisableAddNewClient=1

更多关键字请参考官网:https://help.realvnc.com/hc/en-us/articles/360002251297-VNC-Server-Parameter-Reference-

备注:如果需要为某个用户单独设置权限,需要在该用户环境下创建 ~/.vnc/config.d/common 并添加相关策略;用户目录下的common文件比统一配置文件common.custom的优先级高

如果不想让用户自己定义的配置文件越权(比如全局配置文件要求禁止传输文件,而用户自己配置的规则是可以传输文件,因用户配置文件优先级比全局配置文件高,所以是可以传输文件的),为避免这种情况,RealVNC官方给出了配置优先级最高的方法:

· 创建policy.d目录: mkdir /etc/vnc/policy.d

· 创建restrictions文件:echo 'BlockNonPolicyServers=0' > /etc/vnc/policy.d/restrictions

· 将之前定义过的common.custom拷贝到级别更高的配置文件(或直接配置vncserver-x11-virtual):

   cp /etc/vnc/config.d/common.custom /etc/vnc/policy.d/vncserver-x11-virtual

优先级:vncserver-x11-virtual > 用户自定义common > 全局common.custom

10.日常维护

10-1:RealVNC默认会在用户连接时创建虚拟桌面、在用户断开时结束桌面,如果想让用户在退出时保持桌面状态,需修改配置文件

# 将ConnectToExisting参数写入到配置文件
echo 'ConnectToExisting=1' | tee -a /etc/vnc/config.d/vncserver-virtuald 
# 重启服务以生效
systemctl restart vncserver-virtuald

10-2:桌面长期运行、用户在UI误操作可能导致桌面卡死,或是无法连接,此时需要kill掉用户对应的虚拟桌面

# 执行 su - 用户名 切换到用户目录
# 执行ll ~/.vnc/ 会显示与以下类似页面:
 
drwx------ 2 vnc vnc    58 4月  15 13:54 config.d
-rw------- 1 vnc vnc 53140 4月  15 13:20 localhost.localdomain:1.log
-rw------- 1 vnc vnc 17019 4月  18 11:34 localhost.localdomain:2.log
-rw------- 1 vnc vnc     5 4月  18 11:34 localhost.localdomain:2.pid
-rw------- 1 vnc vnc 18952 4月  15 13:54 localhost.localdomain:3.log
-rw------- 1 vnc vnc  2824 4月  15 11:45 private.key
-rw------- 1 vnc vnc    50 4月  15 12:00 vncchat.xml
 
# 根据时间信息找到最新创建的pid文件:localhost.localdomain:2.pid,其中的2就是虚拟桌面号
 
# 执行命令将其结束:vncserver -kill :2

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值