DoS Deflate 是一個(gè)輕量級(jí)阻止拒絕服務(wù)***的bash shell腳本。我們可以根據(jù)自己需要修改特定參數(shù),來達(dá)到目的!
安裝/卸載都很簡(jiǎn)單,分別執(zhí)行下面三步就可以了:
- wget http://www.inetbase.com/scripts/ddos/install.sh
- [root@localhost src]#less install.sh
- >>
從install.sh可以看出DoS Deflate安裝過程主要是下載四個(gè)文件(
ddos.conf DoS Deflate配置文件
LICENSE 說明文件
ignore.ip.list 白名單文件
ddos.sh 核心安裝腳本
)和執(zhí)行/usr/local/ddos/ddos.sh --cron 這個(gè)腳本。
- [root@localhost src]# cat /usr/local/ddos/ddos.sh
- CONF"/usr/local/ddos/ddos.conf"
- UNBAN_SCRIPT
- TMP_FILE
- UNBAN_IP_LIST
- >
- >>
- >>
- >>
- <
- >>
- >>
- <
- --file>>>
- >>
- >>
- >>
- >>
- SHELL>
- >>>>
- START_MINUTE
- START_MINUTE
- END_MINUTE60
- >>>>
- KILL1
- NO_OF_CONNECTIONS
- TMP_PREFIX'/tmp/ddos'
- TMP_FILE"mktemp $TMP_PREFIX.XXXXXXXX"
- BANNED_IP_MAIL
- BANNED_IP_LIST
- >
- >>
- BAD_IP_LIST
- >
- IP_BAN_NOW0
- CURR_LINE_CONN
- CURR_LINE_IP
- IGNORE_BAN
- IP_BAN_NOW1
- >>
- >>
- >>
- <
- dt
整個(gè)腳本判斷的根據(jù)通過單個(gè)ip連接數(shù),然后根據(jù)/usr/local/ddos/ddos.conf里面定義的NO_OF_CONNECTIONS的值判斷有沒有達(dá)到drop條件,如果達(dá)到再根據(jù)里面定義(APF_BAN默認(rèn)是APF,如需要iptables需要改)使用:iptables或者APF來drop掉這個(gè)ip地址,讓它在規(guī)定的時(shí)間內(nèi)(由BAN_PERIOD定義)無法訪問該服務(wù)器??梢钥闯稣麄€(gè)腳本如果使用iptables過濾的話是很簡(jiǎn)單的,完全自己可以寫一個(gè)腳本來實(shí)現(xiàn)上面功能。
- #!/bin/bash
- NO_OF_CONNECTIONS100
- BLACKLIST
- WHITELIST
- >>
- >>
- <<-
只是上面的腳本少了解封被禁止的ip過程,我個(gè)人認(rèn)為解封沒有太大意義.無論是DoS Deflate或者是上面我自己寫的腳本,最重要的都是NO_OF_CONNECTIONS值設(shè)置。
iptables
iptables 四表五鏈
- iptables(nat,filter,mangle,raw)(INPUT,FORWARD,OUTPUT,PREROUTING,POSTROUTING)
- SYN
基本操作舉例:
- iptables -F ##清空所有的鏈中的規(guī)則-F 僅僅是清空鏈中規(guī)則,并不影響 -P 設(shè)置的默認(rèn)規(guī)則 ,故使用這條命令一定要小心。
自定義鏈應(yīng)用:(先定義一個(gè)自定義鏈clean_in,然后把自定義鏈關(guān)聯(lián)到主鏈上)
- iptables -N clean_in
iptables高級(jí)應(yīng)用:(使用iptables前需要了解tcp連接/斷開過程和ip報(bào)文頭部結(jié)構(gòu),tcp數(shù)據(jù)包頭結(jié)構(gòu)。)
##服務(wù)器(本地ip192.168.1.103)只允許22,53,80,443端口和本機(jī)通迅并拒絕本機(jī)向外主動(dòng)發(fā)起請(qǐng)求(防C/S******)
- iptables -I INPUT 1 -m state --state ESTABLISHED -j ACCEPT
##連接數(shù)限定(設(shè)置ssh連接單個(gè)ip不能超過2個(gè),利用recent和state模塊限制單IP在300s內(nèi)只能與本機(jī)建立3個(gè)新連接。被限制五分鐘后即可恢復(fù)訪問。常用于防ddos***)
- iptables -I INPUT 1 -m state --state ESTABLISHED -j ACCEPT
##匹配數(shù)據(jù)包數(shù)限制(--limit 平均速率,--limit-burst峰值速率)
- iptables -I INPUT 1 -m state --state ESTABLISHED -j ACCEPT
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。