目录
一、问题描述
二、问题分析
2.1 初步分析
2.2 查看日志
2.3 问题验证
1、查看防火墙
2、查看安全组
3、问题原因
三、问题解决
3.1 防火墙开放相关端口
3.2 安全组增加规则
3.3 测试
1、TCP端口能够联通的情况
2、TCP端口不能够联通的情况
四、验证
五、云服务器的安全组
1、规则定义
2、端口范围
3、协议
4、源和目标
5、优先级
一、问题描述
客户有一个海康的NVR,通过ehome协议接入AS-V1000视频监控平台,在平台端和设备端,都是在线状态;同时在平台端和也可以看到所有的视频通道,通道的状态也是在线。
但是,在视频监控平台的web客户端上却无法看到视频,提示:
The request timeout! 【3011】
如下图所示:
二、问题分析
2.1 初步分析
上图所示的The request timeout 3011错误的产生原因有很多,但是肯定是视频监控平台的ehome的服务模块上出了问题导致的,我们需要从这个模块的日志中查找错误原因。
2.2 查看日志
使用下面的命令
tail -f /log/srgw-log/all/all.log
查看日志,在观察日志时候同时在客户端打开新的访问界面,总共有两处错误引起我们的注意。
(1)端口播放失败错误
如下图,出现端口播放失败错误:
标记出来的端口播放失败。
(2)端口连接错误
如下图示,端口连接错误:
说明连接20116端口超时。
因此很有可能是ehome协议连接需要的端口组被阻拦了,导致问题的发生。
2.3 问题验证
1、查看防火墙
为了验证这个问题,我们使用下面的命令语法:
firewall-cmd --zone=public --query-port=(目标端口)/tcp
实际操作如下:
firewall-cmd --zone=public --query-port=20116/tcp
如图所示,结果是未开放20116端口。
2、查看安全组
因为使用的是云服务器,我们也查看了服务器的安全组,发现也没有开放相关端口。
3、问题原因
ehome协议接入视频监控平台后,相关视频浏览的端口没有完全开放,导致ehome协议接入的视频被挡住了,因此造成了问题描述中的错误,也无法正常看到视频。
三、问题解决
3.1 防火墙开放相关端口
使用下面的命令永久开放相关端口:
firewall-cmd --zone=public --add-port=newport /tcp –permanent
如果出现下图所示的情况,证明已经添加了新规则,没必要再输入开放该端口的命令。
如果添加了新规则,但是不生效,可能新规则没生效,就需要使用这个命令让规则生效:
firewall-cmd --reload
生效后,可以使用telnet协议测试是否可以连通?连通了,则证明规则生效,防火墙端口已开放。否则,没有生效,需要继续查看命令的正确定。
3.2 安全组增加规则
如果是云服务器的话,还有安全组配置。如果防火墙开放相关端口且规则确认生效,但是还是无法连通,很大可能是安全组没有添加相应规则引起的。
如果想添加,需要登录控制中心并进入安全组设置,添加安全组并确认就行。
3.3 测试
添加开放端口和安全组规则后,在windows的cmd命令行输入命令:
telnet IP 端口号
1、TCP端口能够联通的情况
telnet测试执行命令后,若界面变成如下图所示的窗口,说明telnet到端口是通的。
2、TCP端口不能够联通的情况
telnet测试命令执行后,若到对应IP的端口不通,会显示如下图:
四、验证
通过web客户端访问客户的设备的视频通道,视频能够正常观看,如下图示:
问题得到解决。
五、云服务器的安全组
云服务器的安全组(Security Group)是一种在云计算环境中使用的网络访问控制列表(ACL),类似于传统数据中心中的防火墙,但是更为灵活和易于管理。安全组用于控制云服务器实例的入站和出站网络数据,它能够允许或拒绝访问实例的传输数据,基于指定的规则。
在云环境中,安全组是虚拟的,并且可以跨多个网络接口和实例进行应用。这意味着,我们可以在一组规则中定义允许或拒绝的流量,然后将这套规则应用到云服务器实例上。这样,所有连接到该实例的网络流量都会受到这些规则的检查和控制。
安全组通常包含以下几个关键特性:
1、规则定义
可以为安全组定义规则,允许或拒绝各种类型的流量,如TCP、UDP、ICMP等。
2、端口范围
可以指定特定的端口范围,以便更精细地控制访问。
3、协议
可以设置允许的协议类型,如HTTP(TCP 80)、HTTPS(TCP 443)等。
4、源和目标
可以指定规则适用的源地址(如另一个安全组、特定IP地址或IP地址范围)和目标地址。
5、优先级
规则按照优先级排序,当流量匹配多个规则时,将按照优先级执行第一个匹配的规则。
使用安全组可以有效地提高云服务器的安全性,因为它可以限制哪些客户端可以访问服务器,以及他们可以访问哪些服务。管理员可以根据需要调整安全组规则,以适应不断变化的网络和安全需求。
同时我们要注意,不同云服务提供商的安全组功能可能会有所不同,但基本原理和目的是一致的,都是为了增强云资源的网络安全防护。
文章正下方可以看到我的联系方式:鼠标“点击” 下面的 “威迪斯特-就是video system 微信名片”字样,就会出现我的二维码,欢迎沟通探讨。