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

centos9 + realvnc + xfce 最简工作相关推荐

  1. 极简工作法则- 泰普勒人生

    如何在工作中树立威信.如何处理与同事的关系.如何融入群体.如何面对纷争.如何应对竞争,阅读完整本书后将法则归类以及拔高降维看书中的观点,嚼碎后转换为自己的知识框架.

  2. CentOS7.9通过RealVNC实现多人使用服务器桌面

    背景: · 公司研发团队通过VNC登录到CentOS服务器的桌面实现开发工作 · 为防止数据外泄,需要在RealVNC设置禁止传输文件.访问粘贴板等安全策略 安装过程: 一.预装CentOS7.9系统 ...

  3. HDLBits答案(9)_卡诺图与最简SOP式

    卡诺图与最简SOP式 HDLBits链接 真值表 定义 真值表是表征逻辑事件输入和输出之间全部可能状态的表格.以1表示真,0表示假. 从真值表到标准式 SOP标准式:找出真值表中所有输出为1的表项,按 ...

  4. linux色彩配置文件,Xfce得到颜色配置文件的支持

    Xfce桌面的最新功能之一是支持colord系统服务,用于管理/使用输出设备(显示器)的颜色配置文件(Color Profiles). SimonSteinbeiß和其他Xfce开发人员一直致力于co ...

  5. 2000个工作汇报PPT模板免费下载

    0001-110科技风互联网工作汇报总结PPT模板.zip: https://baippt.ctfile.com/fs/5288276-350803591 0002-111中国风国学经典工作汇报PPT ...

  6. 2000个工作汇报PPT模板免费下载网站

    0001-110科技风互联网工作汇报总结PPT模板.zip: https://baippt.ctfile.com/fs/5288276-350803591 0002-111中国风国学经典工作汇报PPT ...

  7. 新华三发布H3C Workspace数字工作空间:只需一张屏,程序员也能随时随地在云上写代码

    随着数字时代的不断发展,工作模式经历了面对面的"纸+笔"模式.办公室场景下的"PC+电脑"模式.以及远程办公场景下的"手机+协同软件"模式, ...

  8. FPGA之道(59)时空变换之时域优化

    文章目录 前言 时空变换之基本概念 时空概念简介 时空变换方案 时空变换之时域优化 逻辑化简 逻辑化简讨论 空域方面的颠倒现象 时域方面的颠倒现象 逻辑化简总结 结构调整 分布调整 思路转换 提前进位 ...

  9. k均值的损失函数_一种基于均值不等式的Listwise损失函数

    1 前言 1.1 Learning to Rank 简介 Learning to Rank (LTR) , 也被叫做排序学习, 是搜索中的重要技术, 其目的是根据候选文档和查询语句的相关性对候选文档进 ...

最新文章

  1. JS中同步与异步的理解
  2. Linux下一个简单守护进程的实现 (Daemon)
  3. 《深入浅出设计模式-中文版》读书笔记-工厂模式(五)
  4. C# 视频监控系列(5):客户端——给服务器端发送字符串和录像(数据捕获)
  5. 数组的定义格式一_动态初始化
  6. .NET深入实战系列—Linq to Sql进阶
  7. bzoj 5369: [Pkusc2018]最大前缀和
  8. 软引用和弱引用的区别_强、软、弱、虚引用的区别和使用
  9. cocoscreator3d 获取mesh 大小_Cocos Creator 3D 粒子系统初战: 不要钱的酷炫火焰拿走不谢!...
  10. 如果手里有20万是放银行吃利息还是投资比较合适?
  11. [Servletamp;JSP] 标准标签
  12. Vmware里安装Ubuntu时由于分辨率问题,界面显示不全解决办法
  13. Stanford CS224N: PyTorch Tutorial (Winter ‘21) —— 斯坦福CS224N PyTorch教程 (第三部分)
  14. 防火墙中的DMZ区域,Trust区域,Untrust区域
  15. XML外部实体(XXE)注入详解
  16. 旋动机器人_旋转跳跃还会搬砖 这款机器人简直逆天
  17. 在windows上配置本地域名解析,配置hosts文件
  18. 带你快速入门AXI4总线--汇总篇
  19. laravel框架的whereIn条件或者where条件里面的in条件怎么写
  20. sqlserver存储过程调试方法

热门文章

  1. i5 10210u和i5 8265u 对比 哪个好
  2. 2021年考研计算机专业代码,杭州电子科技大学2021年计算机考研拟录取数据分析...
  3. CMD 常用指令 超级全
  4. android如何实现筛选功能,Android——仿优酷节目筛选功能实现
  5. 硬盘U.2 M.2 SATA SAS区别
  6. 使用 State Hook
  7. 梦幻西游服务器维护到几点,《梦幻西游》维护到几点
  8. 蘑菇街获得mogujie商品详情 API 返回值说明
  9. django框架channels实现私信功能
  10. 关于tomcat环境下上传大文件遇到的问题及解决办法