DDOS概述:
分布式拒絕服務(DDoS:DistributedDenial of Service)攻擊,指借助於客戶/服務器技術,將多個計算機聯合起來作為攻擊平台,對一個或多個目標發動DDoS攻擊,從而成倍地提高拒絕服務攻擊的威力。
1.安裝web服務器
安裝yum install httpd ,拷貝文件cp /share mmexport1514566237016.jpg /var/www/html/index.html, 重啟服務sytemctl restart httpd
在windows上測試訪問http://192.168.129.100/
2.模擬ddos攻擊
- 安裝
其中webbench 和 ab命令是幫助我們做壓力測試的工具和性能的監視工具
安裝webbench需要從官網下載,wget http://home.tiscali.cz/~cz210552/webbench.html
之后安裝它的依賴包gcc和ctags, yum install -y gcc* ctags
對 webbench-1.5.tar.gz 進行解壓 ,tar -xvf webbench-1.5
查看/home/webbench-1.5目錄,有Makefile文件,編譯運行make && make install,第一次編譯會出現錯誤,按提示輸入 mkdir -p /usr/local/man/man1,再次編譯,這里輸入echo $?查看上一個命令是否執行成功,0表示成功
- 運行和查看
webbench -c 100 -t 10 http://192.168.129.100這就是一個測試,也就相當於一個ddos攻擊
,這里指定100個客戶端,運行測試時間10秒,訪問你的網絡地址URL
可以用這條命令進行查詢netstat -ntu |awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n ,這里netstat -ntu截取外網和ip地址,print $5 打印這一行,cut是來截取顯示的ip,sort排序,uniq -c 排除相同的記錄,sort -n 排序並統計
ip地址前面的數字不能太大,太大就說明是ddos攻擊
3.防御
- ddos deflate:
是一款免費的用來防御和減輕DDoS攻擊的腳本。它通過netstat監測跟蹤創建大量網絡連接的IP地址,在檢測到某個結點超過預設的限制時,該程序會通過APF或IPTABLES禁止或阻擋這些IP
安裝: wget http://www.inetbase.com/scripts/ddos/install.sh,賦予腳本執行權chmod +x install.sh,執行./install.sh,會進入一個界面按q退出
配置文件:/usr/local/ddos
PROGDIR="/usr/local/ddos"路徑
PROG=”/usr/local/ddos/ddos.sh“執行ddos腳本的路徑
IGNORE_IP_LIST="/usr/local/ddos/ignore.ip.list" IP地址白名單
CRON="/etc/cron.d/ddos.cron" 時間計划任務
FREQ=1 檢查時間間隔,默認1分鍾
KILL=1 屏蔽IP
BAN_PERIOD=600 //禁用IP時間,默認600秒,可根據情況調整
NO_OF_CONNECTIONS=150 最大連接數,超過這個數IP就會被屏蔽
APF_BAN=0,1代表使用APF防火牆,0代表使用iptables,這里選0
BAN_PERIOD=600禁用IP時間,默認600秒,可根據情況調整
可以在/etc/cron.d/下查看到相關的定時計划任務,這里指0-59分鍾每分鍾執行下ddos腳本,如有發現ddos攻擊,就開始拒絕
- 測試
允許80端口iptables -IINPUT -p TCP --dport 80 -j ACCEPT,輸入iptables -L-n查看防火牆狀態
ab -n 1000 -c 10 http://192.168.1.63/index.html 分10,每次100個用戶,一分鍾后查看防火牆,80端口處於drop狀態,再次輸入ab -n 1000 -c 10 http://192.168.1.63/index.html ,發現不能啟動