日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

DDoS的全稱是Distributed Denial of Service,即”分布式拒絕服務(wù)攻擊”,是指擊者利用大量“肉雞”對攻擊目標(biāo)發(fā)動大量的正常或非正常請求、耗盡目標(biāo)主機(jī)資源或網(wǎng)絡(luò)資源,從而使被攻擊的主機(jī)不能為合法用戶提供服務(wù)。

DDOS攻擊的本質(zhì)是: 利用木桶原理,尋找利用系統(tǒng)應(yīng)用的瓶頸;阻塞和耗盡;當(dāng)前問題:用戶的帶寬小于攻擊的規(guī)模,噪聲訪問帶寬成為木桶的短板。

可以參考下面的例子理解下DDOS攻擊。 1)某飯店可以容納100人同時就餐,某日有個商家惡意競爭,雇傭了200人來這個飯店坐著不吃不喝,導(dǎo)致飯店滿滿當(dāng)當(dāng)無法正常營業(yè)。(DDOS攻擊成功) 2)老板當(dāng)即大怒,派人把不吃不喝影響正常營業(yè)的人全都轟了出去,且不再讓他們進(jìn)來搗亂,飯店恢復(fù)了正常營業(yè)。(添加規(guī)則和黑名單進(jìn)行DDOS防御,防御成功) 3)主動攻擊的商家心存不滿,這次請了五千人逐批次來搗亂,導(dǎo)致該飯店再次無法正常營業(yè)。(增加DDOS流量,改變攻擊方式) 4)飯店把那些搗亂的人轟出去只后,另一批接踵而來。此時老板將飯店?duì)I業(yè)規(guī)模擴(kuò)大,該飯店可同時容納1萬人就餐,5000人同時來搗亂飯店?duì)I業(yè)也不會受到影響。(增加硬防與其抗衡)

DDOS攻擊只不過是一個概稱,其下有各種攻擊方式,比如:”CC攻擊、SYN攻擊、NTP攻擊、TCP攻擊、DNS攻擊等等”,現(xiàn)在DDOS發(fā)展變得越來越可怕,NTP服務(wù)放大攻擊漸漸成為主流了,這意味著可以將每秒的攻擊流量放大幾百倍,比如每秒1G的SYN碎片攻擊換成NTP放大攻擊,就成為了200G或者更多。


順便介紹下NTP服務(wù)放大攻擊

什么是NTP服務(wù)? 網(wǎng)絡(luò)時間協(xié)議NTP(Network Time Protocol)是用于互聯(lián)網(wǎng)中時間同步的標(biāo)準(zhǔn)互聯(lián)網(wǎng)協(xié)議。NTP服務(wù)器通過NTP服務(wù)向網(wǎng)絡(luò)上的計(jì)算機(jī)或其他設(shè)備提供標(biāo)準(zhǔn)的授時服務(wù),以保證這些服務(wù)系統(tǒng)的時鐘能夠同步。通常NTP服務(wù)使用UDP 123端口提供標(biāo)準(zhǔn)服務(wù)。

什么是NTP服務(wù)放大攻擊? 標(biāo)準(zhǔn)NTP 服務(wù)提供了一個 monlist查詢功能,也被稱為MON_GETLIST,該功能主要用于監(jiān)控 NTP 服務(wù)器的服務(wù)狀況,當(dāng)用戶端向NTP服務(wù)提交monlist查詢時,NTP 服務(wù)器會向查詢端返回與NTP 服務(wù)器進(jìn)行過時間同步的最后 600 個客戶端的 IP,響應(yīng)包按照每 6 個 IP 進(jìn)行分割,最多有 100 個響應(yīng)包。由于NTP服務(wù)使用UDP協(xié)議,攻擊者可以偽造源發(fā)地址向NTP服務(wù)進(jìn)行monlist查詢,這將導(dǎo)致NTP服務(wù)器向被偽造的目標(biāo)發(fā)送大量的UDP數(shù)據(jù)包,理論上這種惡意導(dǎo)向的攻擊流量可以放大到偽造查詢流量的100倍。

NTP是用UDP傳輸?shù)模钥梢詡卧煸吹刂贰TP協(xié)議中有一類查詢指令,用短小的指令即可令服務(wù)器返回很長的信息,放大攻擊就是基于這類指令的。 比如: 小明以吳一帆的名義問李雷”我們班有哪些人?” ,李雷就回答吳一帆說”有誰誰誰和誰誰誰……”””(幾百字),那么小明就以8個字的成本,令吳一帆收到了幾百字的信息,所以叫做放大攻擊。 (也就是說:對方服務(wù)器是個話嘮,你以小明的身份問他一個問題,他回答小明一千句,結(jié)果小明崩潰了)

網(wǎng)絡(luò)上一般NTP服務(wù)器都有很大的帶寬,攻擊者可能只需要1Mbps的上傳帶寬欺騙NTP服務(wù)器,即可給目標(biāo)服務(wù)器帶來幾百上千Mbps的攻擊流量,達(dá)到借刀殺人的效果。 所以現(xiàn)在新的ntpd已經(jīng)可以通過配置文件,關(guān)掉除時間同步以外的查詢功能。而時間同步的查詢和返回大小相同(沒記錯的話),所以沒辦法用作放大攻擊。

如何查看是否遭受NTP放大攻擊? 如果網(wǎng)絡(luò)上檢測到大流量的UDP 123端口的數(shù)據(jù),就可以確認(rèn)正在遭受此類攻擊。

如何防范NTP放大攻擊? 1)升級服務(wù)程序版本 將系統(tǒng)中的NTP服務(wù)升級到 ntpd 4.2.7p26 或之后的版本,因?yàn)?ntpd 4.2.7p26 版本后,服務(wù)默認(rèn)是關(guān)閉monlist查詢功能的。

2)關(guān)閉服務(wù)的monlist查詢功能: 首先查詢問題主機(jī)的REQ_MON_GETLIST和REQ_MON_GETLIST_1請求是否可用。具體操作方法:

   # ntpq -c rv<localhost/remotehost>
   # ntpdc -c sysinfo<localhost/remotehost>
   # ntpdc -n -c monlist<localhost/remotehost>
123

如果上述功能可用,可嘗試通過修改ntp.conf文件解決問題,具體操作建議是在上述配置文件中增加下面的配置: IPV4: restrict default kod nomodify notrap nopeer noquery IPv6: restrict -6 default kod nomodify notrap nopeer noquery

允許發(fā)起時間同步的IP,與本服務(wù)器進(jìn)行時間同步,但是不允許修改ntp服務(wù)信息,也不允許查詢服務(wù)器的狀態(tài)信息(如monlist)*/

另外,還可以配置限制訪問命令,如:

restrict default noquery #允許普通的請求者進(jìn)行時間同步,但是不允許查詢ntp服務(wù)信息*/

修改并保存配置文件之后,請重啟ntpd服務(wù)。


近年來,一些重大的DDOS攻擊案例:

1)2000年2月,包括雅虎、CNN、亞馬遜、eBay、http://Buy.com、ZDNet,以及E*Trade和Datek等網(wǎng)站均遭受到了DDOS攻擊,并致使部分網(wǎng)站癱瘓。 2)2007年5月,愛沙尼亞三周內(nèi)遭遇三輪DDOS攻擊,總統(tǒng)府、議會、幾乎全部政府部門、主要政黨、主要媒體和2家大銀行和通訊公司的網(wǎng)站均陷入癱瘓,為此北約頂級反網(wǎng)絡(luò)恐怖主義專家前往該國救援。 3)2009年519斷網(wǎng)事件導(dǎo)致南方六省運(yùn)營商服務(wù)器全部崩潰,電信在南方六省的網(wǎng)絡(luò)基本癱瘓。2009年7月,韓國主要網(wǎng)站三天內(nèi)遭遇三輪猛烈的DDOS攻擊,韓國宣布提前成立網(wǎng)絡(luò)司令部。 4)比較著名的案例還有有: 全球三大游戲平臺:暴雪戰(zhàn)網(wǎng)、Valve Steam和EA Origin遭到大規(guī)模DDoS攻擊,致使大批玩家無法登錄與進(jìn)行游戲。隨后名為DERP的黑客組織聲稱對此次大規(guī)模的DDoS攻擊行動負(fù)責(zé)。

對于DDOS攻擊的簡單防護(hù)措施:

1)關(guān)閉不必要的服務(wù)和端口; 2)限制同一時間內(nèi)打開的syn半連接數(shù)目; 3)縮短syn半連接的超時時間; 4)及時安裝系統(tǒng)補(bǔ)丁; 5)禁止對主機(jī)非開放服務(wù)的訪問; 6)啟用防火墻防DDOS屬性。硬件防火墻價格比較昂貴,可以考慮利用linux系統(tǒng)本身提供的防火墻功能來防御。 7)另外也可以安裝相應(yīng)的防護(hù)軟件,這里強(qiáng)烈建議安裝安全狗軟件,防護(hù)性能不錯,并且免費(fèi)。 8)購買DDOS防御產(chǎn)品,比如阿里云盾的DDOS防御中的高防IP,這個使用起來,效果也很給力。


接下來說下Linux系統(tǒng)下預(yù)防DDOS攻擊的操作:

Linux服務(wù)器在運(yùn)行過程中可能會受到黑客攻擊,常見的攻擊方式有SYN,DDOS等。 通過更換IP,查找被攻擊的站點(diǎn)可能避開攻擊,但是中斷服務(wù)的時間比較長。比較徹底的解決方法是添置硬件防火墻,但是硬件防火墻價格比較昂貴。可以考慮利用Linux系統(tǒng)本身提供的防火墻功能來防御。 SYN攻擊是利用TCP/IP協(xié)議3次握手的原理,發(fā)送大量的建立連接的網(wǎng)絡(luò)包,但不實(shí)際建立連接,最終導(dǎo)致被攻擊服務(wù)器的網(wǎng)絡(luò)隊(duì)列被占滿,無法被正常用戶訪問。 Linux內(nèi)核提供了若干SYN相關(guān)的配置,加大SYN隊(duì)列長度可以容納更多等待連接的網(wǎng)絡(luò)連接數(shù),打開SYN Cookie功能可以阻止部分SYN攻擊,降低重試次數(shù)也有一定效果。 而DDOS則是通過使網(wǎng)絡(luò)過載來干擾甚至阻斷正常的網(wǎng)絡(luò)通訊,通過向服務(wù)器提交大量請求,使服務(wù)器超負(fù)荷,阻斷某一用戶訪問服務(wù)器阻斷某服務(wù)與特定系統(tǒng)或個人的通訊。可以通過配置防火墻或者使用腳本工具來防范DDOS攻擊;

1)優(yōu)化幾個sysctl內(nèi)核參數(shù):

[root@test3-237 ~]# vim /etc/sysctl.conf
......
net.ipv4.tcp_max_syn_backlog = 4096      #表示SYN隊(duì)列的長度,加大隊(duì)列長度可以容納更多等待連接的網(wǎng)絡(luò)連接數(shù)
net.ipv4.tcp_syncookies = 1              #表示開啟SYN Cookies功能。當(dāng)出現(xiàn)SYN等待隊(duì)列溢出時,啟用cookies來處理,可防范少量SYN攻擊,默認(rèn)為0,表示關(guān)閉,1表示打開;
net.ipv4.tcp_synack_retries = 2          #下面這兩行表示定義SYN重試次數(shù)
net.ipv4.tcp_syn_retries = 2

#提高TCP連接能力
net.ipv4.tcp_rmem = 32768
net.ipv4.tcp_wmem = 32768
net.ipv4.tcp_sack = 0     #打開tcp_sack功能,1表示"關(guān)閉",0表示"打開"

[root@test3-237 ~]# sysctl -p    #使上面配置生效
12345678910111213

2)利用linux系統(tǒng)自帶iptables防火墻進(jìn)行預(yù)防:

先查看服務(wù)器上連接web端口(比如80端口)的哪個ip是最多的,如果發(fā)現(xiàn)可疑ip,就果斷將其斷開與服務(wù)器連接

查看80端口的連接情況

[root@test3-237 ~]# netstat -an | grep ":80" | grep ESTABLISHED
1

下面的命令表示獲取服務(wù)器上ESTABLISHED連接數(shù)最多的前10個ip,排除了內(nèi)部ip段192.168|127.0開頭的。

[root@test3-237 ~]# /bin/netstat -na|grep ESTABLISHED|awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|sort -rn|head -10|grep -v -E '192.168|127.0'
      4001 140.205.140.205
      2388 124.65.197.154
      1807 111.205.224.15
      18 10.51.58.16
  .......
123456

將上面140.205.140.205、124.65.197.154、111.205.224.15的這三個ip的包丟棄

[root@test3-237 ~]# iptables -A INPUT -s 140.205.140.205 -p tcp -j DROP
[root@test3-237 ~]# iptables -A INPUT -s 124.65.197.154 -p tcp -j DROP
[root@test3-237 ~]# iptables -A INPUT -s 111.205.224.15 -p tcp -j DROP
[root@test3-237 ~]# service iptables save
[root@test3-237 ~]# service iptables restart
12345

不過上面的方法對于偽造源IP地址的SYN FLOOD攻擊就無效了!


其他預(yù)防攻擊的設(shè)置

防止同步包洪水(Sync Flood),縮短SYN-Timeout時間:

[root@test3-237 ~]# iptables -A FORWARD -p tcp --syn -m limit --limit 1/s -j ACCEPT
[root@test3-237 ~]# iptables -A INPUT -i eth0 -m limit --limit 1/sec --limit-burst 5 -j ACCEPT
12

其中: –limit 1/s 限制syn并發(fā)數(shù)每秒1次,可以根據(jù)自己的需要修改防止各種端口掃描

[root@test3-237 ~]# iptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT
1

Ping洪水攻擊(Ping of Death)

[root@test3-237 ~]# iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
1

控制單個IP的最大并發(fā)連接數(shù)。 如下設(shè)置表示:允許單個IP的最大連接數(shù)為 30

[root@test3-237 ~]# iptables -I INPUT -p tcp --dport 80 -m connlimit --connlimit-above 30 -j REJECT
1

控制單個IP在一定的時間(比如60秒)內(nèi)允許新建立的連接數(shù)。 如下設(shè)置表示:單個IP在60秒內(nèi)只允許最多新建30個連接

[root@test3-237 ~]# iptables -A INPUT -p tcp --dport 80 -m recent --name BAD_HTTP_ACCESS --update --seconds 60 --hitcount 30 -j REJECT
[root@test3-237 ~]# iptables -A INPUT -p tcp --dport 80 -m recent --name BAD_HTTP_ACCESS --set -j ACCEPT
12

如果出現(xiàn)報(bào)錯: iptables: Invalid argument. Run `dmesg’ for more information.

解決辦法: 增加 xt_recent模塊的參數(shù)值即可,默認(rèn)是20

[root@test3-237 ~]# cat /sys/module/xt_recent/parameters/ip_pkt_list_tot
20
[root@test3-237 ~]# echo 50 > /sys/module/xt_recent/parameters/ip_pkt_list_tot
[root@test3-237 ~]# cat /sys/module/xt_recent/parameters/ip_pkt_list_tot
50
12345

禁止ping(即禁止從外部ping這臺服務(wù)器):

[root@test3-237 ~]# echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
1

用iptables屏蔽IP(如下禁止213.8.166.237連接本機(jī)的80端口)

[root@test3-237 ~]# iptables -A INPUT -s 213.8.166.227 -p tcp -m tcp -m state --state NEW --dport 80 --syn -j REJECT
1

允許某ip連接(如下允許13.78.66.27連接本機(jī)的80端口)

[root@test3-237 ~]# iptables -A INPUT -s 13.78.66.27 -p tcp -m tcp -m state --state NEW --dport 80 --syn -j ACCEPT
1

3)使用DDoS deflate腳本自動屏蔽攻擊ip

DDoS deflate是一款免費(fèi)的用來防御和減輕DDoS攻擊的腳本。它通過netstat監(jiān)測跟蹤創(chuàng)建大量網(wǎng)絡(luò)連接的IP地址,在檢測到某個結(jié)點(diǎn)超過預(yù)設(shè)的限制時,該程序會通過APF或IPTABLES禁止或阻擋這些IP. DDoS deflate其實(shí)是一個Shell腳本,使用netstat和iptables工具,對那些鏈接數(shù)過多的IP進(jìn)行封鎖,能有效防止通用的惡意掃描器,但它并不是真正有效的DDoS防御工具。

DDoS deflate工作過程描述: 同一個IP鏈接到服務(wù)器的連接數(shù)到達(dá)設(shè)置的伐值后,所有超過伐值的IP將被屏蔽,同時把屏蔽的IP寫入ignore.ip.list文件中,與此同時會在tmp中生成一個腳本文件,這個腳本文件馬上被執(zhí)行,但是一 運(yùn)行就遇到sleep預(yù)設(shè)的秒,當(dāng)睡眠了這么多的時間后,解除被屏蔽的IP,同時把之前寫入ignore.ip.list文件中的這個被封鎖的IP刪除,然后刪除臨時生成的文件。 一個事實(shí):如果被屏蔽的IP手工解屏蔽,那么如果這個IP繼續(xù)產(chǎn)生攻擊,那么腳本將不會再次屏蔽它(因?yàn)榧尤氲搅薸gnore.ip.list),直到在預(yù)設(shè)的時間之后才能起作用,加入到了ignore.ip.list中的 IP是檢測的時候忽略的IP。可以把IP寫入到這個文件以避免這些IP被堵塞,已經(jīng)堵塞了的IP也會加入到ignore.ip.list中,但堵塞了預(yù)定時間后會從它之中刪除。

如何確認(rèn)是否受到DDOS攻擊?

[root@test3-237 ~]# netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
      1 Address
      1 servers)
      2 103.10.86.5
      4 117.36.231.253
      4 19.62.46.24
      6 29.140.22.18
      8 220.181.161.131   
      2911 167.215.42.88
123456789

每個IP幾個、十幾個或幾十個連接數(shù)都還算比較正常,如果像上面成百上千肯定就不正常了。比如上面的167.215.42.88,這個ip的連接有2911個!這個看起來就很像是被攻擊了!

下面就說下通過DDoS deflate腳本來自動屏蔽DDOS攻擊的ip 1)下載DDoS deflate安裝腳本,并執(zhí)行安裝。

[root@test3-237 ~]# wget http://www.inetbase.com/scripts/ddos/install.sh
[root@test3-237 ~]# chmod 0700 install.sh
[root@test3-237 ~]# ./install.sh
123

卸載DDos default的操作如下:

# wget http://www.inetbase.com/scripts/ddos/uninstall.ddos
# chmod 0700 uninstall.ddos
# ./uninstall.ddos
123

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

[root@test3-237 ~]# cat /usr/local/ddos/ddos.conf
##### 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                        //檢查時間間隔,默認(rèn)1分鐘。設(shè)置檢測時間間隔,默認(rèn)是分鐘,由于系統(tǒng)使用crontab功能,最小單位是分鐘

##### How many connections define a bad IP? Indicate that below.
NO_OF_CONNECTIONS=150             //最大連接數(shù),超過這個數(shù)IP就會被屏蔽,一般默認(rèn)即可。默認(rèn)是150,這是一個經(jīng)驗(yàn)值,如果服務(wù)器性能比較高,可以設(shè)置200以上,以避免誤殺

##### 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=0                      //使用APF還是iptables屏蔽IP。推薦使用iptables,將APF_BAN的值改為0即可。設(shè)置為1表示使用APF,如果使用APF則需要先安裝,centos中默認(rèn)就沒有安裝

##### 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被屏蔽時給指定郵箱發(fā)送郵件,推薦使用,換成自己的郵箱即可。如果不希望發(fā)送郵件,設(shè)置為空,即EMAIL_TO=""

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

需要注意的是: DDos default安裝完成后在/usr/local/ddos目錄下產(chǎn)生了ddos.conf、ddos.sh、ignore.ip.list和LICENSE這四個文件,其中: ddos.conf是配置文件,ddos.sh是一個Shell文件,ignore.ip.list是存放忽略IP的文件,LICENSE是版權(quán)聲明文件,安裝完成后還在/etc/cron.d/下生產(chǎn)了ddos.cron文件,內(nèi)容如下:

[root@test3-237 ~]# cat /etc/cron.d/ddos.cron
SHELL=/bin/sh
0-59/1 * * * * root /usr/local/ddos/ddos.sh >/dev/null 2>&1
123

意思是每隔一分鐘執(zhí)行一下/usr/local/ddos/ddos.sh,這個腳本是關(guān)鍵! 這個cron任務(wù)是依賴ddos.conf文件中的NO_OF_CONNECTIONS變量產(chǎn)生的,如果修改了此值,可以通過運(yùn)行如下命令更新(實(shí)際也是在安裝是運(yùn)行了如下命令):

[root@test3-237 ~]# /usr/local/ddos/ddos.sh -c
Stopping crond:                                            [  OK  ]
Starting crond:                                            [  OK  ]
Stopping crond:                                            [  OK  ]
Starting crond:                                            [  OK  ]

或者
[root@test3-237 ~]# /usr/local/ddos/ddos.sh --cron
Stopping crond:                                            [  OK  ]
Starting crond:                                            [  OK  ]
Stopping crond:                                            [  OK  ]
Starting crond:                                            [  OK  ]
123456789101112

3)DDos default選項(xiàng)

# /usr/local/ddos/ddos.sh -h       #查看選項(xiàng)
# /usr/local/ddos/ddos.sh -k n     #殺掉連接數(shù)大于n的連接。n默認(rèn)為配置文件的NO_OF_CONNECTIONS
12

比如:

  [root@test3-237 ~]# /usr/local/ddos/ddos.sh -k 150
      2 103.110.186.75
      1 servers)
      1 Address
# /usr/local/ddos/ddos.sh -c       #按照配置文件創(chuàng)建一個執(zhí)行計(jì)劃。使得ddos.conf文件配置后生效
12345

4)分享一個防御DDOS攻擊的shell腳本

Linux服務(wù)器中一旦受到DDOS的攻擊(比如IDC機(jī)房服務(wù)器被攻擊了,關(guān)機(jī),拔網(wǎng)線,降流量),目前只能通過封IP來源來暫時解決。 然而IP來源變化多端,光靠手工來添加簡直是惡夢,所以還是想辦法寫個shell腳本來定時處理,這才是比較靠譜的辦法。

[root@test3-237 ~]# mkdir /root/bin
[root@test1-237 ~]# cat /root/bin/dropip.sh    //此腳本自動提取攻擊ip,然后自動屏蔽
#!/bin/bash
/bin/netstat -na|grep ESTABLISHED|awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|sort -rn|head -10|grep -v -E '192.168|127.0'|awk '{if ($2!=null && $1>4) {print $2}}'>/tmp/dropip
for i in $(cat /tmp/dropip)
do
/sbin/iptables -A INPUT -s $i -j DROP
echo “$i kill at `date`”>>/var/log/ddos
done
123456789

以上腳本中最重要的是第二行,即: 獲取ESTABLISHED連接數(shù)最多的前10個ip并寫入臨時文件/tmp/dropip,排除了內(nèi)部ip段192.168|127.0開頭的.通過for循環(huán)將dropip里面的ip通過iptables全部drop掉,然后寫到日志文件/var/log/ddos。

給腳本添加執(zhí)行權(quán)限

[root@test1-237 ~]# chmod +x /root/bin/dropip.sh
1

添加到計(jì)劃任務(wù),每分鐘執(zhí)行一次

[root@test1-237 ~]#crontab -e
*/1 * * * * /root/bin/dropip.sh
12

下面是針對連接數(shù)屏蔽IP

#!/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)}' > /root/drop_ip.txt 
for i in `cat /root/drop_ip.txt` 
do 
/sbin/iptables -I INPUT -s $i -j DROP; 
done
123456

5)Linux下使用safedog(安全狗)軟件防御DDOS攻擊:

[root@test3-237 ~]# setenforce 0     //關(guān)閉selinux,否則不能安裝成功
[root@test3-237 ~]# getenforce       //永久關(guān)閉selinux需要配置/etc/sysconfig/selinux文件,并重啟機(jī)器生效!!
Permissive
123

安裝(Nginx版)安全狗(safedog)

[root@test3-237 ~]# wget http://safedog.cn/safedogwz_linux_Nginx64.tar.gz
[root@test3-237 ~]# tar -zvxf safedogwz_linux_Nginx64.tar.gz
[root@test3-237 ~]# cd safedogwz_linux_Nginx64
[root@test3-237 safedogwz_linux_Nginx64]# chmod 755 install.py
[root@bastion-IDC safedogwz_linux_Nginx64]# ls
install_files  install.py  uninstall.py
[root@test3-237 safedogwz_linux_Nginx64]# ./install.py -A          //卸載安全狗就用uninstall.py
.......
  step 3.5, start service...                                                                      [ok]
  step 3.6, save safedog install info...                                                          [ok]
   Tips:
  (1)Run the command to setup Server Defense Module: sdui
  (2)Explore more features by tApping the command to join Cloud Management Center (fuyun.safedog.cn) with your account:  sdcloud -h

If you need any help about installation,please tap the command: ./install.py -h
Install Completely!
12345678910111213141516

溫馨提示: 1)安裝完成后,記得一定要重新啟動Nginx服務(wù),網(wǎng)站安全狗軟件即可生效。 2)運(yùn)行時,安裝腳本默認(rèn)將自動獲取Nginx服務(wù)的安裝路徑;若自動獲取失敗則將提示輸入Nginx服務(wù)的安裝路徑(絕對路徑),需要根據(jù)所安裝的Nginx的目錄,填寫真實(shí)的安裝路徑。 3)當(dāng)出現(xiàn)提示:Are you sure to uninstall?[y/n]時,輸入y

分享到:
標(biāo)簽:攻擊 DDOS
用戶無頭像

網(wǎng)友整理

注冊時間:

網(wǎng)站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學(xué)四六

運(yùn)動步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績評定2018-06-03

通用課目體育訓(xùn)練成績評定