实战-检查服务器是否受到DDOS攻击脚本
思路:通过:netstat 查看网络连接数。如果一个IP地址对服务器建立很多连接数(比如一分钟产生了100个连接),就认为发生了DDOS
搭建环境:
[root@xuegod63 ~]# yum install httpd -y #安装apache
[root@xuegod63 ~]# systemctl start httpd #启动服务
[root@xuegod63 ~]# echo "xuegod" > /var/www/html/index.html #创建apache默认网站首页
[root@xuegod63 ~]# vim ddos-test.sh #写入以下内容
#!/bin/bash
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
注释:
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
截取外网IP和端口 截取外网的IP以:为分隔符 |排序 | 排除相同的记录 | 排序并统计
测试,模拟DDOS
ab命令:做压力测试的工具和性能的监控工具
语法: ab -n 要产生的链接数总和 -c 同时打开的客户端数量 http://链接
安装ab命令:
[root@xuegod63 ~]# rpm -qf `which ab ` #这个安装apache时,会自动安装上
httpd-tools-2.2.15-15.el6.x86_64
模拟DDOS: 启动10个客户端对网站首页发起1000次访问
[root@xuegod64 ~]# ab -n 1000 -c 10 http://192.168.1.63/index.html
互动: 如果你要对方发生DDOS攻击,你会攻击什么样的页面?
#访问一个页面比较大,页面越大,消耗服务器带宽就越大,攻击效果越明显
[root@xuegod63 ~]# ./ddos-test.sh #检查DDOS
1 Address
1 servers)
2 192.168.1.6
1003 192.168.1.63