Linux 系统如何通过 netstat 命令查看连接数判断攻击

Linux 系统如何通过 netstat 命令查看连接数判断攻击,第1张

很多时候我们会遇到服务器遭受 cc 或 syn 等攻击,如果发现自己的网站访问异常缓慢且流量异常。可以使用系统内置 netstat 命令 简单判断一下服务器是否被攻击。常用的 netstat 命令

该命令将显示所有活动的网络连接。

查看同时连接到哪个服务器 IP 比较多,cc 攻击用。使用双网卡或多网卡可用。

查看哪些 IP 连接到服务器连接多,可以查看连接异常 IP。

显示所有 80 端口的网络连接并排序。这里的 80 端口是 http 端口,所以可以用来监控 web 服务。如果看到同一个 IP 有大量连接的话就可以判定单点流量攻击了。

这个命令可以查找出当前服务器有多少个活动的 SYNC_REC 连接。正常来说这个值很小,最好小于 5。 当有 Dos 攻击或的时候,这个值相当的高。但是有些并发很高的服务器,这个值确实是很高,因此很高并不能说明一定被攻击。

列出所有连接过的 IP 地址。

列出所有发送 SYN_REC 连接节点的 IP 地址。

使用 netstat 命令计算每个主机连接到本机的连接数

列出所有连接到本机的 UDP 或者 TCP 连接的 IP 数量。

检查 ESTABLISHED 连接并且列出每个 IP 地址的连接数量。

列出所有连接到本机 80 端口的 IP 地址和其连接数。80 端口一般是用来处理 HTTP 网页请求。

显示连接 80 端口前 10 的 ip,并显示每个 IP 的连接数。这里的 80 端口是 http 端口,所以可以用来监控 web 服务。如果看到同一个 IP 有大量连接的话就可以判定单点流量攻击了。

他会根据你安装摄像头的多少,合理的计算出解码器显示出的数量,这数量就是显示的最大数量。超出这个数量,就显示不出来了。

设备本地界面>网络>端口>最大连接数范围(0~20或者0~128),这个并不是说可以连接128个客户端(包括web、SDk、平台、其他),而是其他客户端和设备间建立的连接,实际登录一个web会建立2个以上的连接,登录SDK、平台也会有2个连接(一个主码流,一个辅码流),如果是远程设备添加或者被添加也会建立两条链接;

但是大部分客户会认为最大连接数是128,应该就是可以连接128个客户端。但是目前实际的功能如上,后续我们会考虑优化,但是目前请按照上述方式理解。

解决措施:具体如何修改连接配置,解决出现系统忙资源登录不足的问题。

a、可以事先在“网络>网络权限“中设置黑白名单,”黑名单“能保证设备不被其他设备或者客户端连接;”白名单“能够保证设备在指定的IP客户端才能连接设备。如果是已经连接过的设备请通过如下方式先屏蔽,否则只能对重新添加的IP有效,已经添加的设备是无效;

b、如果确认连接数过多可以在“网络>在线用户“中查看连接在设备上的网络用户信息,选择屏蔽用户,最多可以屏蔽65535s。页面5s就会检测一次当前是否有新用户增加或者删除。

1、查看Web服务器(Nginx Apache)的并发请求数及其TCP连接状态:netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'netstat -n|grep ^tcp|awk '{print $NF}'|sort -nr|uniq -c或者:netstat -n | awk '/^tcp/ {++state[$NF]} END {for(key in state) print key,"t",state[key]}'返回结果一般如下:LAST_ACK 5 (正在等待处理的请求数)SYN_RECV 30ESTABLISHED 1597 (正常数据传输状态)FIN_WAIT1 51FIN_WAIT2 504TIME_WAIT 1057 (处理完毕,等待超时结束的请求数)其他参数说明:CLOSED:无连接是活动的或正在进行LISTEN:服务器在等待进入呼叫SYN_RECV:一个连接请求已经到达,等待确认SYN_SENT:应用已经开始,打开一个连接ESTABLISHED:正常数据传输状态FIN_WAIT1:应用说它已经完成FIN_WAIT2:另一边已同意释放ITMED_WAIT:等待所有分组死掉CLOSING:两边同时尝试关闭TIME_WAIT:另一边已初始化一个释放LAST_ACK:等待所有分组死掉2、查看Nginx运行进程数ps -ef | grep nginx | wc -l返回的数字就是nginx的运行进程数,如果是apache则执行ps -ef | grep httpd | wc -l3、查看Web服务器进程连接数:netstat -antp | grep 80 | grep ESTABLISHED -c4、查看MySQL进程连接数:ps -axef | grep mysqld -c


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/93544.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-03-07
下一篇2023-03-07

发表评论

登录后才能评论

评论列表(0条)

    保存