本發(fā)明涉及云平臺安全領(lǐng)域,特別是一種云平臺通用的防御分布式拒絕服務(wù)攻擊的方法。
背景技術(shù):
::一般的公有云計算平臺上有多個計算節(jié)點,而每個計算節(jié)點上都有多個正在運行的虛擬機,每個虛擬機上都可能允許了一個或多個應(yīng)用程序,由于許多物理機和虛擬機都連通外部網(wǎng)絡(luò)或多個局域網(wǎng),這樣會帶來以下隱患:一是物理機或者虛擬機容易外部網(wǎng)絡(luò)受到分布式拒絕服務(wù)攻擊,導(dǎo)致應(yīng)用程序服務(wù)異常。二是物理機或虛擬機被非法操作之后,發(fā)起內(nèi)部分布式拒絕服務(wù)攻擊,導(dǎo)致整個局域網(wǎng)的物理機和虛擬機都出現(xiàn)異常。一般機房都只部署一臺防火墻設(shè)備,用來防御外部分布式拒絕服務(wù)攻擊,而每個局域網(wǎng)都安裝硬件防火墻的成本非常高昂,導(dǎo)致無法防御內(nèi)部的分布式拒絕服務(wù)攻擊。三是虛擬機發(fā)送分布式拒絕服務(wù)攻擊給同一個宿主機上的另外一臺虛擬機時候,不經(jīng)過硬件防火墻,這種請求防不勝防。四是不同廠商的硬件防火墻配置復(fù)雜,工作效率低。技術(shù)實現(xiàn)要素:本發(fā)明提供一種云平臺通用的防御分布式拒絕服務(wù)攻擊的方法,解決了外網(wǎng)分布式拒絕服務(wù)攻擊、局域網(wǎng)防御成本高、同一個宿主機的虛擬機相互攻擊無法防御、防御方法不夠通用等問題,提供較低成本的防御方法。本發(fā)明解決上述技術(shù)問題的技術(shù)方案是,包括如下步驟:步驟1:虛擬機掛載基于虛擬路由創(chuàng)建的虛擬網(wǎng)卡;步驟2:添加公共防御規(guī)則,物理機專屬防御規(guī)則,虛擬機專屬防御規(guī)則;步驟3:物理機或虛擬機在使用的過程中,受到外部或者內(nèi)部發(fā)起分布式拒絕服務(wù)攻擊,當(dāng)攻擊發(fā)送超過一定的數(shù)量包,丟棄非法請求包;步驟4:用戶正常訪問物理機或虛擬機。所述的步驟1,具體是指基于虛擬路由創(chuàng)建的虛擬網(wǎng)卡,掛載到虛擬機上使用。所述的步驟2中添加公共防御規(guī)則,具體是指云平臺自動在Iptables的指定PREROUTING鏈添加單位時間發(fā)送UDP協(xié)議包、新建TCP連接和重建TCP連接數(shù)量限制規(guī)則;所述的Iptables,是一種IP信息包過濾系統(tǒng),也是一種軟件防火墻,可以防御非法IP包請求,Iptables的包過濾順序是PREROUTING鏈過濾->分類發(fā)送->INPUT鏈/FORWARD鏈過濾;所述的PREROUTING鏈過濾,是指進入PREROUTING鏈的IP包,在IP包被修改之前,就丟棄不符合要求的IP包請求,可設(shè)置為某個地址單位時間發(fā)送UDP協(xié)議包超過數(shù)量限制、新建連接超過數(shù)量限制、重連次數(shù)超過數(shù)量限制等;所述的分類發(fā)送,是指INPUT鏈?zhǔn)盏降腎P包是發(fā)送到本機的包,也是發(fā)送給物理機的包,每個包請求先進入PREROUTING鏈的過濾,再進入INPUT鏈,若在PREROUTING鏈丟棄的包,不會進入INPUT鏈過濾,F(xiàn)ORWARD鏈?zhǔn)盏降腎P包不是發(fā)給物理機的包,實則是發(fā)送給宿主機上所有虛擬機或虛擬路由的包。所述的步驟2中添加物理機專屬防御規(guī)則,具體是指云平臺自動在Iptables的INPUT鏈添加每個IP的連接數(shù)總上限,并且優(yōu)先級是INPUT鏈中最高的規(guī)則,可設(shè)置為匹配發(fā)送給物理機的IP包,若該IP包超過總連接上限就丟棄,物理機IP包連接數(shù)總上限不能在PREROUTING鏈生效,選擇在INPUT鏈。所述的步驟2中添加虛擬機專屬防御規(guī)則,具體是指云平臺自動在宿主機Iptables的FORWARD鏈添加每個IP的連接數(shù)總上限,并且優(yōu)先級是FORWARD鏈中最高的規(guī)則,可設(shè)置為匹配發(fā)送給虛擬機的IP包,若該IP包超過總連接上限就丟棄,虛擬機IP包連接數(shù)總上限不能在PREROUTING鏈生效,選擇在FORWARD鏈。所述步驟3,具體是指物理機或虛擬機在使用的過程中受到分布式拒絕服務(wù)攻擊,Iptables單位時間收到某IP地址發(fā)送大量的UDP協(xié)議包、新建TCP連接、重建TCP連接等IP包請求,超過匹配防御規(guī)則,丟棄該IP地址發(fā)送的包請求。所述的步驟4,具體是指用戶正常訪問物理機或虛擬機的IP包不受影響。本發(fā)明方案的有益效果如下:1、本發(fā)明的方法是云平臺自動通過Iptables軟件防火墻配置規(guī)則,區(qū)別于一般需要人工配置的硬件的防火墻。2、本發(fā)明的方法是云平臺通用的防御方法,區(qū)別于一般不能同時防御物理機和虛擬機分布式拒絕服務(wù)攻擊的方法。3、本發(fā)明的方法只需要在宿主機上設(shè)置一次,不需要重復(fù)設(shè)置,也不需要在虛擬機上設(shè)置,區(qū)域于一般需要多次設(shè)置或需要到虛擬機上設(shè)置的方法。附圖說明下面結(jié)合附圖對本發(fā)明進一步說明:圖1為流程圖。圖2為本發(fā)明軟件防火墻邏輯結(jié)構(gòu)圖。具體實施方式本發(fā)明的實施方式有多種,這里以云平臺為例說明其中一種實現(xiàn)方法,流程圖如圖1所示,具體實施過程如下1、虛擬機掛載基于虛擬路由創(chuàng)建的虛擬網(wǎng)卡,代碼如下:2、添加公共防御規(guī)則,代碼如下:3、添加物理機專屬防御規(guī)則,代碼如下:_4、添加虛擬機專屬防御規(guī)則,代碼如下:5、物理機或虛擬你在使用的過程中,受到外部或者內(nèi)部發(fā)起分布式拒絕服務(wù)攻擊;6、當(dāng)攻擊發(fā)送超過一定的數(shù)量包,丟棄非法請求包;7、用戶正常訪問物理機或虛擬機不受影響。整個流程結(jié)束。圖2為本發(fā)明軟件防火墻邏輯結(jié)構(gòu)圖,對流程具體實現(xiàn)進行描述:Iptables的包過濾順序是PREROUTING鏈過濾->分類發(fā)送->INPUT鏈/FORWARD鏈過濾,云平臺自動在Iptables的指定PREROUTING鏈添加單位時間發(fā)送UDP協(xié)議包、新建TCP連接和重建TCP連接數(shù)量限制規(guī)則,進入PREROUTING鏈的IP包,在IP包被修改之前,就丟棄不符合要求的IP包請求,如某個地址單位時間發(fā)送UDP協(xié)議包超過數(shù)量限制、新建連接超過數(shù)量限制、重連次數(shù)超過數(shù)量限制等;PREROUTING鏈過濾后,需發(fā)送到本機的包,也是發(fā)送給物理機的包發(fā)送到INPUT鏈,每個包請求都是先進入PREROUTING鏈的過濾,再進入INPUT鏈,若在PREROUTING鏈丟棄的包,不會進入INPUT鏈過濾,需發(fā)送給宿主機上所有虛擬機或虛擬路由的包則發(fā)送到FORWARD鏈。云平臺自動在Iptables的INPUT鏈添加每個IP的連接數(shù)總上限,并且優(yōu)先級是INPUT鏈中最高的規(guī)則,物理機IP包連接數(shù)總上限不能在PREROUTING鏈生效,選擇在INPUT鏈,進入INPUT鏈的IP包,則需匹配發(fā)送給物理機的IP包,若該IP包超過總連接上限就丟棄,過濾后發(fā)送到物理機上的應(yīng)用程序。云平臺自動在宿主機Iptables的FORWARD鏈添加每個IP的連接數(shù)總上限,并且優(yōu)先級是FORWARD鏈中最高的規(guī)則,虛擬機IP包連接數(shù)總上限不能在PREROUTING鏈生效,選擇在FORWARD鏈,進入FORWARD鏈的IP包,則需匹配發(fā)送給虛擬機的IP包,若該IP包超過總連接上限就丟棄,過濾后發(fā)送到虛擬機上的應(yīng)用程序。當(dāng)前第1頁1 2 3 當(dāng)前第1頁1 2 3