云虛擬主機(jī)是建站用戶最常用的選項(xiàng),而作為國(guó)內(nèi)領(lǐng)先的云IDC服務(wù)商的阿里云,則成為很多建站用戶的選項(xiàng)之一。尤其是阿里云的共享云虛擬主機(jī),由于實(shí)用、便宜,筆者非常喜歡。然而,阿里云共享云虛擬主機(jī)有一個(gè)致命的缺點(diǎn),那就是抗攻擊能力比較弱,這里說(shuō)的攻擊并非指入侵網(wǎng)站,而是服務(wù)器有可能被流量飽和攻擊。當(dāng)被攻擊時(shí),阿里云則啟動(dòng)自主防御機(jī)制,暫時(shí)關(guān)停本IP下的所有云虛擬主機(jī),盡管4小時(shí)后會(huì)自動(dòng)恢復(fù),但是如果IP仍然持續(xù)被攻擊,還是會(huì)被自動(dòng)關(guān)停。這曾給筆者旗下很多網(wǎng)站造成了困擾,于是便著手研究解決此問(wèn)題。
一般情況下,針對(duì)某網(wǎng)站的流量攻擊是非常罕見(jiàn)的,而公司旗下大多是一些中小型企業(yè)網(wǎng)站,除非網(wǎng)站客戶與黑客有深仇大恨,否則不太可能會(huì)出現(xiàn)針對(duì)性的流量攻擊。所以,這種流量攻擊一般是針對(duì)IP的,并非是針對(duì)某網(wǎng)站。找到了問(wèn)題所在,很顯然,只要有辦法更換服務(wù)器及IP就可以避免被繼續(xù)攻擊了。
然而,阿里云共享云虛擬主機(jī)是不允許更換服務(wù)器的,只有獨(dú)立云虛擬主機(jī)才可以。幸運(yùn)的是,阿里云共享云虛擬主機(jī)提供了更換操作系統(tǒng)的功能,而更換操作系統(tǒng)后,服務(wù)器IP也會(huì)隨之變更。比如從Linux系統(tǒng)更換到Windows系統(tǒng),不過(guò),需要注意的是一個(gè)只能在Linux系統(tǒng)下運(yùn)行的網(wǎng)站如果更換到Windows系統(tǒng)后是無(wú)法運(yùn)行的,這就意味著我們還需要從Windows系統(tǒng)換回到Linux系統(tǒng)。換句話說(shuō),通過(guò)更換2次系統(tǒng),最終達(dá)到我們更換服務(wù)器IP的目的,從而規(guī)則指定IP流量攻擊的風(fēng)險(xiǎn)。
不幸的是,阿里云共享云虛擬主機(jī)每天只能進(jìn)行一次操作系統(tǒng)更換操作,不過(guò),這絲毫不會(huì)影響我們進(jìn)行操作,又能將更換操作對(duì)網(wǎng)站的影響降到最低。根據(jù)這樣的特性,我們完全可以將更換服務(wù)器的時(shí)間安排在每天的0點(diǎn)前后。假設(shè)你的網(wǎng)站是運(yùn)行在Linux系統(tǒng)下的,先備份好網(wǎng)站(別忘了備份數(shù)據(jù)庫(kù)),然后在0點(diǎn)前將云虛擬主機(jī)的操作系統(tǒng)從Linux系統(tǒng)更換到Windows系統(tǒng),0點(diǎn)一過(guò),就是第二天了,又有一次更換機(jī)會(huì),此時(shí)再將操作系統(tǒng)由Windows系統(tǒng)更換為L(zhǎng)inux系統(tǒng),大功告成!當(dāng)然,別忘了把備份好的網(wǎng)站程序及數(shù)據(jù)庫(kù)上傳到新的服務(wù)器。這個(gè)更換過(guò)程不花一分錢(qián)。
以上方法親測(cè)有效,可完美解決阿里云虛擬主機(jī)因流量攻擊被關(guān)停的情況。