在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
楼主: 百事可乐001

基于CentOS7搭建RealVNC实现远程访问 (含安全策略设置、常见问题处理等)

[复制链接]
 楼主| 发表于 2023-2-4 14:32:43 | 显示全部楼层


垂直雨林 发表于 2023-2-1 21:41
小白弱弱问一句,意思是我如此设定了实验室服务器后,可以用VNC远程登陆? ...


如果是内网环境的话,客户机可以通过vnc连接服务器(没有防火墙或交换机的安全策略阻隔),如果是在家里想连接服务器的话需要部署vpn或者端口映射
 楼主| 发表于 2023-2-4 22:26:54 | 显示全部楼层


swicap 发表于 2023-1-28 16:46
请教:
1. 如果vnc卡死,用户如果不被允许ssh/telnet方式登录server,还有什么方式能自己kill 进程吗?
2. 能 ...


第2个问题的解决方法:

前提条件:预装RealVNC软件

第一步:编辑/etc/sysconfig/vncservers(如果没有则新建一个)定义用户名及虚拟桌面号,配置内容示例如下
VNCSERVERS="1:用户名 2:用户名"
备注:1和2为虚拟桌面号,用户名为服务器已经存在的账号

第二步:将附件的vncserver脚本解压到服务器任意目录
通过chmod +x vncserver命令对其添加可执行权
执行./vncserver start 可实现批量启动/etc/sysconfig/vncservers中的虚拟桌面
备注:vncserver脚本是从tigervnc软件中提取出来的

经过以上操作后,虚拟桌面即可批量启动

注意:虚拟桌面号并不是网络端口号,而是vnc根据虚拟桌面号按照一定算法生成端口,对应关系如下

                               
登录/注册后可看大图


如果为用户指定的桌面号为1,则vnc为其生成的端口号为5901;如果为用户定义的桌面号为300,则vnc为其生成的端口号为7500。桌面号0为显示器自身,所以虚拟桌面要从1开始生成

vncserver.zip

1.41 KB, 下载次数: 19 , 下载积分: 资产 -2 信元, 下载支出 2 信元

 楼主| 发表于 2023-2-4 22:28:39 | 显示全部楼层


swicap 发表于 2023-1-28 16:46
请教:
1. 如果vnc卡死,用户如果不被允许ssh/telnet方式登录server,还有什么方式能自己kill 进程吗?
2. 能 ...


第2个问题的解决方法:

前提条件:预装RealVNC软件

第一步:编辑/etc/sysconfig/vncservers(如果没有则新建一个)定义用户名及虚拟桌面号,配置内容示例如下
VNCSERVERS="1:用户名 2:用户名"
备注:1和2为虚拟桌面号,用户名为服务器已经存在的账号

第二步:将附件的vncserver脚本解压到服务器任意目录
通过chmod +x vncserver命令对其添加可执行权
执行./vncserver start 可实现批量启动/etc/sysconfig/vncservers中的虚拟桌面
备注:vncserver脚本是从tigervnc软件中提取出来的

经过以上操作后,虚拟桌面即可批量启动

注意:虚拟桌面号并不是网络端口号,而是vnc根据虚拟桌面号按照一定算法生成端口,对应关系如下

                               
登录/注册后可看大图


如果为用户指定的桌面号为1,则vnc为其生成的端口号为5901;如果为用户定义的桌面号为300,则vnc为其生成的端口号为7500。桌面号0为显示器自身,所以虚拟桌面要从1开始生成

 楼主| 发表于 2023-2-6 10:00:38 | 显示全部楼层


churchmice 发表于 2023-1-28 22:53
这种方案我搞过
1) 可以限制ssh只能运行特定的命令,你可以限制只能运行一个叫做restart_vnc的命令
用户 ...


realvnc可以让所有用户通过5999端口连接虚拟桌面,我们公司的做法是通过防火墙将访问服务器22、5999端口之外的请求全部drop掉,因为vnc是以root权限启动的,用户私自开vnc进程的话也不会将5999端口占用掉
发表于 2023-2-7 20:44:30 | 显示全部楼层
thanks a lot
发表于 2023-2-8 15:48:17 | 显示全部楼层
kan kan
发表于 2023-2-8 19:53:40 | 显示全部楼层
关于用于传输数据,用户完全可以在自己PC上(也就是vnc的客户端这里架一个小型ftp、tftp等等服务端),然后从服务器那里运行客户端发起连接,这样子也封禁不了的吧。 有些客户端也就一个小程序,想办法上传或者把源代码贴到到服务器自己目录下即可。
发表于 2023-2-12 12:19:16 | 显示全部楼层


百事可乐001 发表于 2023-2-6 10:00
realvnc可以让所有用户通过5999端口连接虚拟桌面,我们公司的做法是通过防火墙将访问服务器22、5999端口 ...


看了下,这个模式果然可以,感谢
发表于 2023-2-12 12:21:28 | 显示全部楼层


eezhao 发表于 2023-2-8 19:53
关于用于传输数据,用户完全可以在自己PC上(也就是vnc的客户端这里架一个小型ftp、tftp等等服务端),然后 ...


当然要用防火墙挡一下啊,用户是没有方法直接发起outbound的连接的

inbound的方向只开放特定的端口,上面运行的程序都是固定的,比如vnc
然后iptables里面对对特端口的新建立连接放行,对已经处于建立状态的连接放行
发表于 2023-2-12 17:02:06 | 显示全部楼层
相当不错的资料,谢谢分享
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-6-24 20:04 , Processed in 0.119285 second(s), 8 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表