山東 周京偉 周蓉
近年來,國家對網絡安全越來越重視,網站安全更是重中之重。在教育領域,由于經費、技術水平等方面的限制,我國學校網站大都基于網上的開源CMS 系統自主開發,比如DeDeCMS、SiteServer 等。而此類CMS 系統代碼公開、用戶數量多,引起了大量網絡安全從業者和愛好者的廣泛研究,漏洞曝光率和被利用率很高。
由于安全意識和技術水平所限,大部分用戶在漏洞曝光后,不能及時對系統進行版本升級、漏洞修復,也不能很好地利用操作系統的安全策略來進行安全防范,導致網站被攻擊,給單位帶來損失。
筆者在防護學校網站的工作實踐中探索出了一種通過Vmware 虛擬化和微軟的ISA Sverver,適合中小學網站使用的網站安全防護方法。
該方法的原理是通過虛擬化技術把原來的物理服務器虛擬出兩臺虛擬服務器,在其中一臺上安裝ISA Server,另外一臺安裝原有網站服務器。
ISA 服務器配置兩塊網卡,一塊網卡配置外網地址,即原網站服務器地址;另一塊網卡配置內網地址,與網站服務器互通。
網站服務器因為是內網地址,不能被外網直接訪問到,但可以通過在ISA 服務器上配置策略實現外網訪問,對于網站服務器的訪問權限設置便可通過ISA 策略靈活配置,整體架構圖如圖1 所示。

圖1 整體防護架構
假設原有網站的域名為www.example.com,對應的IP 地址為100.100.100.5,這是一個可以在互聯網上訪問的公網地址。在物理服務器上安裝Vmware ESXi 5.5,在某一臺客戶機上安裝vsphere client 5.5 連接服務器,為服務器分配兩個虛擬機,兩臺虛擬機的主要設置如下:
1.虛擬機1
ISA Server 服務器,安裝Window 2008 服務器操作系統及ISA Server 2006。
配置兩塊網卡,網卡1 的IP 地址設置為100.100.100.5,網卡2 的IP 地址為192.168.0.5,這是一個內網地址,外圍不能訪問。
2.虛擬機2
網站服務器,將原網站服務器的內容復制到該服務器上。
配置一塊網卡,IP 地址為192.168.0.6。
創建兩個網站發布策略,其中策略1 用于對所有用戶提供網站訪問服務,訪問時只能訪問HTML靜態網頁;策略2 用于校內用戶訪問后臺,限制訪問IP 地址,且在訪問時需要輸入驗證碼,用于阻止自動掃描。
策略1 的配置方法:
1.打開ISA Server,右鍵單擊“陣列”,利用陣列創建向導創建一個陣列。
2.右鍵單擊“防火墻策略”,新建“網站發布規則”,名稱為“靜態訪問”,在“請選擇規則操作”中選“允許”,在“發布類型”中選擇“發布單個網站或負載平衡器”,在“服務器連接類型”選“http”,在“內部發布詳情信息”中設置“內部網站名稱”為“www.example.com”,輸入網站服務器地址“192.168.0.6”,在“公共名稱細節”中設置“公共名稱”為“www.example.com”,在“選擇Web 偵聽器”中選擇“新建”,新建一個Web 偵聽器,名稱為“80”,“Web 偵聽器IP地址”為“所有網絡(本地連接)”,不設置身份驗證,其他默認。在防火墻策略向導中繼續點擊“下一步”,選擇“無委派,但是客戶端可以直接進行身份驗證”,其他默認。
3.雙擊防火墻策略列表中剛建立的“靜態訪問”策略,在屬性對話框中選擇“通訊”選項卡,點擊“篩選”按鈕,打開HTTP 策略配置窗口,設置“方法”只有“get”,在“擴展名”中阻止所有非HTML 的擴展名,如圖2 所示,在“簽名”中把所有可能的惡意字符,如“?”“admin”等。

圖2 HTTP 策略配置窗口
策略2 的配置方法:
復制策略1,命名為“動態訪問”,雙擊打開屬性窗口,對相關內容做如下修改:
1.“從”選項卡設置訪問范圍為“學校內網”,內網地址需提前配置。

圖3 偵聽器中客戶端身份驗證方法設置
2.“偵聽器”修改為新建的“8080”,身份驗證方法為“HTTP 身份驗證”,這樣以后在訪問后臺時需使用8080 端口,如圖3所示。
3.“通訊”選項卡下HTTP 策略配置修改為默認,允許用戶可以訪問所有文件。
4.在系統中增加一個guest 用戶,設置用戶名和密碼,這樣以后每次登陸后臺都會有賬號密碼驗證,輸入正確后才能打開后臺地址,如圖4 所示。

圖4 后臺訪問驗證賬號設置
以上方法在后臺使用SiteServer 等前臺訪問不需要調用動態頁面的網站后臺時已得到驗證。未采用上述保護策略以前,筆者管理的網站經常受到攻擊,自按照上述方法配置幾年來,未檢測到對網站的有效攻擊。
對于DeDeCMS,因為其前臺需要調用動態頁面,所以配置訪問策略有所不同。當然,由于開放的功能不通,需要調用的動態頁面也有所不同。在筆者管理的網站中前臺需要的動態文件只有plus 文件夾下的advancedsearch.php。
在ISA 中創建三個網站發布規則。規則1 用于用戶訪問靜態頁面,與前述“靜態訪問”策略基本相同,只需要修改一下服務器的域名和地址即可;規則2 用于管理后臺,與前述“動態訪問”規則基本相同,對可以訪問的IP 地址進行限制;規則3 用于用戶訪問advancedsearch.php,在策略屬性中選擇“路徑”選項卡,如圖5 所示,添加內部路徑“/plus/*”。在如圖2 所示HTTP 策略配置窗口中配置php 文件允許訪問。為了保證安全,筆者在實踐中把plus 文件夾下其他不用的動態網頁全部移到了其它文件夾中,這樣外部用戶在訪問的時候就只能訪問這一個動態頁面。

圖5 策略配置屬性路徑選項卡
對于網站防護最好的方法是有安全的網站平臺加可靠的WAF 網站防火墻設備,這種部署方式在網站數量較多的高校非常常見,但對于大多數只有一個網站的中小學來說,代價確實太高。
本文介紹的方法成本低、配置簡單,在實際應用中取得了良好的效果,為廣大中小學網站防護提供了一種有益的方案。