Linux 服务器带宽异常跑满分析解决

来源:互联网 发布:房地产网络销售怎么样 编辑:程序博客网 时间:2024/05/22 00:17

一、使用 nethogs 进行排查

[root@iZ23kick03xZ ~]# nethogs eth0

通过 nethogs 工具来查看某一网卡上进程级流量信息
假定当前 eth0 网卡跑满,则执行命令 nethogs eth0,在右边的红框中可以看到每个进程的网络带宽情况,左边红框显示了进程对应的 PID,在此可以确定到底是什么进程占用了系统的带宽。

这里写图片描述

如果确定是恶意程序,可以通过 kill -TERM pid 来终止程序。
如是 Web 服务程序,则可以使用 iftop 等工具来查询具体 IP 来源,然后分析 Web 访问日志是否为正常流量,日志分析也可以使用 logwatch 或 awstats 等工具进行分析。

二、使用 iftop 工具排查

[root@iZ23kick03xZ ~]# iftop -i eth0 -P

注:-P 参数会将请求服务的端口显示出来,也就是说是通过服务器哪个端口建立的连接,看内网流量执行 iftop -i eth0 -P 命令。

这里写图片描述

三、使用tcpdum命令进行抓包

[root@iZ23kick03xZ ~]# tcpdump tcp port 80 -nnei eth0 -w web.pcap简单点写就是:[root@iZ23kick03xZ ~]# tcpdump -i eth0 -w web.pcap

备注:
-w 是将输出内容保存到文件,而web.pcap是一个二进制文件,不能直接打开,可以通过 wireshark 软件进行分析

这个是在wireshark中打开的web.pcap文件

这里写图片描述

点击 统计--->对话,显示如下图所示

这里写图片描述

分析

这里写图片描述

linux下实用iptables封ip段的一些常见命令
封单个IP的命令是:
iptables -I INPUT -s 106.45.233.109 -j DROP
iptables -I OUTPUT -s 106.45.233.109 -j DROP

封IP段的命令是:
iptables -I INPUT -s 106.45.233.0/24 -j DROP
iptables -I OUTPUT -s 106.45.233.0/24 -j DROP

封整个段的命令是:
iptables -I INPUT -s 106.0.0.0/8 -j DROP
iptables -I OUTPUT -s 106.0.0.0/8 -j DROP

封几个段的命令是:
iptables -I INPUT -s 106.45.233.0/24 -j DROP
iptables -I OUTPUT -s 106.45.233.0/24 -j DROP
iptables -I INPUT -s 60.210.246.0/24 -j DROP
iptables -I OUTPUT -s 60.210.246.0/24 -j DROP

0 0
原创粉丝点击