綠色資源網:您身邊最放心的(de)安全(quán)下載站! 最新(xīn)軟件|熱門排行|軟件分類|軟件專(zhuān)題|廠商大全

綠(lǜ)色資源(yuán)網

技術教程(chéng)
您的位置:首頁(yè)操作係統(tǒng)linux → linux下防DDOS攻擊軟件及使用方法詳解

linux下防DDOS攻擊軟件及使用方法詳(xiáng)解

我要評論 2013/03/29 12:48:38 來源:綠色資源網 編輯:www.ynaad.com [ ] 評論:0 點擊(jī):441次(cì)

互聯網如(rú)同現實社會一樣充滿鉤心(xīn)鬥角,網站(zhàn)被(bèi)DDOS也成為站長最頭疼的事(shì)。在沒有(yǒu)硬防的情況下(xià),尋找軟件代替(tì)是最直接的方法,比如用 iptables,但是iptables不能在自動(dòng)屏蔽,隻能手(shǒu)動(dòng)屏(píng)蔽(bì)。

一、什麽是DDOS攻擊?

DDoS也就是分布式拒絕服務(wù)攻擊。它使用與普通的拒絕服務攻擊同樣的方(fāng)法,但(dàn)是發(fā)起攻擊的源是多個。通常攻擊者使(shǐ)用下載的工具滲透無保護的主機,當獲(huò)得該(gāi)主機的適(shì)當(dāng)的訪問權限後,攻擊者在主機中(zhōng)安裝軟件的服務或進程(以下簡侈怔理)。這些代理保持(chí)睡眠狀態,直到(dào)從它們的(de)主控端得到指令(lìng),對指定的目標發起拒絕服務攻擊。

二、如何確認自己受到DDOS攻擊(jī)?

在係統上執行:

netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
執行後,將會顯示服務器上所有的每個IP多少個連接數。
以下是我自己(jǐ)用VPS測試的(de)結(jié)果:
li88-99:~# netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
1 114.226.9.132
1 174.129.237.157
1 58.60.118.142
1 Address
1 servers)
2 118.26.131.78
3 123.125.1.202
3 220.248.43.119
4 117.36.231.253
4 119.162.46.124
6 219.140.232.128
8 220.181.61.31
2311 67.215.242.196
每個IP幾個、十幾個或幾十個(gè)連接數都還算比較正常,如果像上麵成百上千(qiān)肯定就不正常了。
 

三(sān)、防範DDOS攻擊的方法:

一些常用的防DDOS攻擊的方法,羅列如下:

1.增加硬件防火牆和增加硬(yìng)件設備來承載和(hé)抵禦DDOS攻(gōng)擊,最基本的方法,但成本(běn)比較高。

2.修改SYN設置抵禦SYN攻擊
SYN攻擊是利用TCP/IP協議3次握手的原理(lǐ),發送大量的建立連接的(de)網(wǎng)絡包,但不實際(jì)建立連接,最終導致被攻擊服務(wù)器的網絡隊列被占滿,無法被正常用戶訪問。

Linux內核提供了若幹SYN相關(guān)設置,使用命令:
sysctl -a | grep syn
看到:
net.ipv4.tcp_max_syn_backlog = 1024
net.ipv4.tcp_syncookies = 0
net.ipv4.tcp_synack_retries = 5
net.ipv4.tcp_syn_retries = 5

tcp_max_syn_backlog是SYN隊列的長度,tcp_syncookies是一個開關,是否打開(kāi)SYN Cookie
功能,該功能可以防止部分SYN攻擊。tcp_synack_retries和tcp_syn_retries定義SYN
的重試次數。

加大(dà)SYN隊(duì)列長度可以容納更多等待連接(jiē)的網絡連接數,打(dǎ)開SYN Cookie功能可以阻止部分
SYN攻擊,降低重試次(cì)數也有一定效果(guǒ)。

調整上述設置的方法是:
增加SYN隊列長度到2048:
sysctl -w net.ipv4.tcp_max_syn_backlog=2048
打開SYN COOKIE功能:
sysctl -w net.ipv4.tcp_syncookies=1
降低重試(shì)次數:
sysctl -w net.ipv4.tcp_synack_retries=3
sysctl -w net.ipv4.tcp_syn_retries=3

為了係統重啟動時保(bǎo)持上述配置,可將上述命令加入到/etc/rc.d/rc.local文件中。

3.安裝iptables對特定ip進行屏(píng)蔽(bì)

A.安裝(zhuāng)iptables和係統內核版本對應的內核模塊(kuài)kernel-smp-modules-connlimit
B. 配置相應的iptables規則
示例如(rú)下:

(1)控製單個(gè)IP的(de)最(zuì)大並發連接數(shù)
iptables -I INPUT -p tcp –dport 80 -m connlimit –connlimit-above 50 -j REJECT
#允許單個IP的最大連接數為 30
(2)控製單個IP在一定的時間(比如60秒)內允許(xǔ)新建立的連接數
iptables -A INPUT -p tcp –dport 80 -m recent –name BAD_HTTP_ACCESS –update –seconds 60 \
–hitcount 30 -j REJECT
iptables -A INPUT -p tcp –dport 80 -m recent –name BAD_HTTP_ACCESS –set -j ACCEPT
#單個IP在60秒內隻允許最多(duō)新建30個連接

(3)用iptables屏(píng)蔽IP
iptables -I RH-Lokkit-0-50-INPUT 1 -p tcp -m tcp -s 213.8.166.227 --dport 80 --syn -j REJECT
指定端口的參數是--dport 80;多(duō)了--syn參數,可以自動(dòng)檢測sync攻擊
(4)使用iptables禁止ping:
iptables -A INPUT -p icmp -m icmp --icmp-type 8 -m limit --limit 6/min --limit-burst 2 -j ACCEPT-A INPUT -p icmp -m icmp --icmp-type 8 -j REJECT --reject-with icmp-port-unreachable
(5)允許(xǔ)某ip連接
iptables -I RH-Firewall-1-INPUT 1 -p tcp -m tcp -s 192.168.0.51 --syn -j ACCEPT
C. 驗證
(1)工具:flood_connect.c(用來模(mó)擬(nǐ)攻擊(jī))
(2)查看效果:
使用

watch ‘netstat -an | grep:21 | \ grep< 模擬攻擊客戶機的IP>| wc -l’
實時查看模擬攻擊客戶(hù)機建立起來的連接數,
使用
watch ‘iptables -L -n -v | \grep< 模擬攻擊客戶機的IP>’
查看模擬攻擊客戶機被 DROP 的(de)數據(jù)包數。
D.注意
為了增強(qiáng)iptables防(fáng)止CC攻擊的能力,最好(hǎo)調整一下ipt_recent的參數如下:
#cat/etc/modprobe.conf
options ipt_recent ip_list_tot=1000 ip_pkt_list_tot=60
#記錄1000個(gè)IP地址,每個地址記錄60個(gè)數據包
#modprobe ipt_recent

E.可編寫(xiě)腳(jiǎo)本自動提娶攻擊ip然後自動屏(píng)蔽:

*/2 * * * * /usr/local/nginx/var/log/drop.sh

#!/bin/sh
cd /usr/local/nginx/var/log
tail access.log -n 1000 |grep vote.php | |sort |uniq -c |sort -nr |awk '{if ($2!=null && $1>50)}' > drop_ip.txt
for i in `cat drop_ip.txt`
do
/sbin/iptables -I INPUT -s $i -j DROP;
done
這(zhè)shell 每幾分鍾執行一次,就可自動屏蔽那些不正常IP,相信大家都看的(de)懂,下麵是針對連接數屏蔽代碼

#!/bin/sh
/bin/netstat -ant |grep 80 |awk '{print $5}' |awk -F : '{print $1}' |sort |uniq -c |sort -rn |grep -v -E '192.168|127.0' |awk '{if ($2!=null && $1>50)}' > drop_ip.txt
for i in `cat drop_ip.txt`
do
/sbin/iptables -I INPUT -s $i -j DROP;
done
說下,grep -v -E '192.168|127.0' 也(yě)就是排除內網IP,免得把自己給屏(píng)蔽了,當然還可以加些自己的IP。

4.安裝DDoS deflate自動抵禦DDOS攻擊

DDoS deflate是一(yī)款免費的用(yòng)來防禦和減輕DDoS攻(gōng)擊的腳本。它通過netstat監測跟蹤創(chuàng)建大量網絡連接的IP地址,在檢測(cè)到某個結點超過預設的限製時(shí),該程序會通過APF或IPTABLES禁止或阻擋這些IP.

DDoS deflate官方網(wǎng)站(zhàn):

(1)安(ān)裝DDoS deflate

wget
chmod 0700 install.sh //添加(jiā)權限
./install.sh //執行

(2)配置DDoS deflate

下麵是DDoS deflate的默認配置(zhì)位於/usr/local/ddos/ddos.conf ,內容(róng)如下:

## Paths of the script and other files
PROGDIR=”/usr/local/ddos”
PROG=”/usr/local/ddos/ddos.sh”
IGNORE_IP_LIST=”/usr/local/ddos/ignore.ip.list” //IP地址白名單
CRON=”/etc/cron.d/ddos.cron” //定時執(zhí)行程序
APF=”/etc/apf/apf”
IPT=”/sbin/iptables”

## frequency in minutes for running the script
## Caution: Every time this setting is changed run the script with –cron
## option so that the new frequency takes effect
FREQ=1 //檢查時間(jiān)間隔(gé),默認1分鍾

## How many connections define a bad IP? Indicate that below.
NO_OF_CONNECTIONS=150 //最大連接數,超過這個數IP就會被屏蔽,一般默認即可

## APF_BAN=1 (Make sure your APF version is atleast 0.96)
## APF_BAN=0 (Uses iptables for banning ips instead of APF)
APF_BAN=1 //使用APF還是iptables,推薦使用iptables

## KILL=0 (Bad IPs are’nt banned good for interactive execution of script)
## KILL=1 (Recommended setting)
KILL=1 //是(shì)否屏(píng)蔽IP,默認即可

# An email is sent to the following address when an IP is banned.
## Blank would suppress sending of mails
EMAIL_TO=”root” //當IP被屏(píng)蔽時給指定郵箱發送郵件,推薦使用,換成自己的郵箱即可

## Number of seconds the banned ip should remain in blacklist.
BAN_PERIOD=600 //禁用IP時間,默認600秒(miǎo),可根據情況調整

用戶可(kě)根(gēn)據給默(mò)認配置(zhì)文件加上(shàng)的注釋提示內容,修崗?置文件。

喜歡折騰的可以用Web壓力測試軟件(《Web服務器性能/壓力測試工具(jù)http_load、webbench、ab、Siege使用教程》)測試一下效果,這東西隻能防禦小流量的攻擊了,聊(liáo)勝於無吧。

5.APACHE上安裝mod_evasive 組件增強抵禦力

mod_evasive是一個預防Apache 遭受DDos 攻擊的模塊,可以(yǐ)防止同一個IP 對相(xiàng)同URI 發

關鍵詞:linux,DDOS攻擊

閱讀本文後您有什麽感想(xiǎng)? 已有 人給出(chū)評價!

  • 1 歡迎喜歡
  • 1 白(bái)癡
  • 1 拜托
  • 1 哇
  • 1 加油
  • 1 鄙視
免费人欧美成又黄又爽的视频丨一本色道久久88综合日韩精品丨国产专区日韩精品欧美色丨午夜无遮挡男女啪啪视频丨国产欧美日韩综合精品一区二区丨亚洲精品无码不卡在线播HE丨亚洲精品国产精品国自产观看丨日韩国产高清av不卡