日韩高清在线免费不卡性生活毛片,亚洲av综合第一页,亚洲美女被操,一级无遮挡理论片

綠色資源網(wǎng):您身邊最放心的安全下載站! 最新軟件|熱門排行|軟件分類|軟件專題|廠商大全

綠色資源網(wǎng)

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

linux下防DDOS攻擊軟件及使用方法詳解

我要評(píng)論 2013/03/29 12:48:38 來源:綠色資源網(wǎng) 編輯:m.dineoutnj.com [ ] 評(píng)論:0 點(diǎn)擊:441次

互聯(lián)網(wǎng)如同現(xiàn)實(shí)社會(huì)一樣充滿鉤心斗角,網(wǎng)站被DDOS也成為站長最頭疼的事。在沒有硬防的情況下,尋找軟件代替是最直接的方法,比如用 iptables,但是iptables不能在自動(dòng)屏蔽,只能手動(dòng)屏蔽。

一、什么是DDOS攻擊?

DDoS也就是分布式拒絕服務(wù)攻擊。它使用與普通的拒絕服務(wù)攻擊同樣的方法,但是發(fā)起攻擊的源是多個(gè)。通常攻擊者使用下載的工具滲透無保護(hù)的主機(jī),當(dāng)獲得該主機(jī)的適當(dāng)?shù)脑L問權(quán)限后,攻擊者在主機(jī)中安裝軟件的服務(wù)或進(jìn)程(以下簡(jiǎn)侈怔理)。這些代理保持睡眠狀態(tài),直到從它們的主控端得到指令,對(duì)指定的目標(biāo)發(fā)起拒絕服務(wù)攻擊。

二、如何確認(rèn)自己受到DDOS攻擊?

在系統(tǒng)上執(zhí)行:

netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
執(zhí)行后,將會(huì)顯示服務(wù)器上所有的每個(gè)IP多少個(gè)連接數(shù)。
以下是我自己用VPS測(cè)試的結(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
每個(gè)IP幾個(gè)、十幾個(gè)或幾十個(gè)連接數(shù)都還算比較正常,如果像上面成百上千肯定就不正常了。
 

三、防范DDOS攻擊的方法:

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

1.增加硬件防火墻和增加硬件設(shè)備來承載和抵御DDOS攻擊,最基本的方法,但成本比較高。

2.修改SYN設(shè)置抵御SYN攻擊
SYN攻擊是利用TCP/IP協(xié)議3次握手的原理,發(fā)送大量的建立連接的網(wǎng)絡(luò)包,但不實(shí)際建立連接,最終導(dǎo)致被攻擊服務(wù)器的網(wǎng)絡(luò)隊(duì)列被占滿,無法被正常用戶訪問。

Linux內(nèi)核提供了若干SYN相關(guān)設(shè)置,使用命令:
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隊(duì)列的長度,tcp_syncookies是一個(gè)開關(guān),是否打開SYN Cookie
功能,該功能可以防止部分SYN攻擊。tcp_synack_retries和tcp_syn_retries定義SYN
的重試次數(shù)。

加大SYN隊(duì)列長度可以容納更多等待連接的網(wǎng)絡(luò)連接數(shù),打開SYN Cookie功能可以阻止部分
SYN攻擊,降低重試次數(shù)也有一定效果。

調(diào)整上述設(shè)置的方法是:
增加SYN隊(duì)列長度到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

為了系統(tǒng)重啟動(dòng)時(shí)保持上述配置,可將上述命令加入到/etc/rc.d/rc.local文件中。

3.安裝iptables對(duì)特定ip進(jìn)行屏蔽

A.安裝iptables和系統(tǒng)內(nèi)核版本對(duì)應(yīng)的內(nèi)核模塊kernel-smp-modules-connlimit
B. 配置相應(yīng)的iptables規(guī)則
示例如下:

(1)控制單個(gè)IP的最大并發(fā)連接數(shù)
iptables -I INPUT -p tcp –dport 80 -m connlimit –connlimit-above 50 -j REJECT
#允許單個(gè)IP的最大連接數(shù)為 30
(2)控制單個(gè)IP在一定的時(shí)間(比如60秒)內(nèi)允許新建立的連接數(shù)
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
#單個(gè)IP在60秒內(nèi)只允許最多新建30個(gè)連接

(3)用iptables屏蔽IP
iptables -I RH-Lokkit-0-50-INPUT 1 -p tcp -m tcp -s 213.8.166.227 --dport 80 --syn -j REJECT
指定端口的參數(shù)是--dport 80;多了--syn參數(shù),可以自動(dòng)檢測(cè)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)允許某ip連接
iptables -I RH-Firewall-1-INPUT 1 -p tcp -m tcp -s 192.168.0.51 --syn -j ACCEPT
C. 驗(yàn)證
(1)工具:flood_connect.c(用來模擬攻擊)
(2)查看效果:
使用

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

E.可編寫腳本自動(dòng)提娶攻擊ip然后自動(dò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
這shell 每幾分鐘執(zhí)行一次,就可自動(dòng)屏蔽那些不正常IP,相信大家都看的懂,下面是針對(duì)連接數(shù)屏蔽代碼

#!/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' 也就是排除內(nèi)網(wǎng)IP,免得把自己給屏蔽了,當(dāng)然還可以加些自己的IP。

4.安裝DDoS deflate自動(dòng)抵御DDOS攻擊

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

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

(1)安裝DDoS deflate

wget
chmod 0700 install.sh //添加權(quán)限
./install.sh //執(zhí)行

(2)配置DDoS deflate

下面是DDoS deflate的默認(rèn)配置位于/usr/local/ddos/ddos.conf ,內(nèi)容如下:

##### 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” //定時(shí)執(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 //檢查時(shí)間間隔,默認(rèn)1分鐘

##### How many connections define a bad IP? Indicate that below.
NO_OF_CONNECTIONS=150 //最大連接數(shù),超過這個(gè)數(shù)IP就會(huì)被屏蔽,一般默認(rèn)即可

##### 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 //是否屏蔽IP,默認(rèn)即可

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

##### Number of seconds the banned ip should remain in blacklist.
BAN_PERIOD=600 //禁用IP時(shí)間,默認(rèn)600秒,可根據(jù)情況調(diào)整

用戶可根據(jù)給默認(rèn)配置文件加上的注釋提示內(nèi)容,修崗?置文件。

喜歡折騰的可以用Web壓力測(cè)試軟件(《Web服務(wù)器性能/壓力測(cè)試工具h(yuǎn)ttp_load、webbench、ab、Siege使用教程》)測(cè)試一下效果,這東西只能防御小流量的攻擊了,聊勝于無吧。

5.APACHE上安裝mod_evasive 組件增強(qiáng)抵御力

mod_evasive是一個(gè)預(yù)防Apache 遭受DDos 攻擊的模塊,可以防止同一個(gè)IP 對(duì)相同URI 發(fā)

關(guān)鍵詞:linux,DDOS攻擊

閱讀本文后您有什么感想? 已有 人給出評(píng)價(jià)!

  • 1 歡迎喜歡
  • 1 白癡
  • 1 拜托
  • 1 哇
  • 1 加油
  • 1 鄙視