基於SDN架構,讓安全能力快速切入業務

        前幾天寫了一篇文章網絡安全建設如何做到安內攘外,其中核心思想之一爲安全與業務的融合是下一步趨勢,近期不斷思考如何讓安全更貼身的服務靈活多變的業務?如何通過模塊化、可插拔的方式與系統系統融合?如何讓業務中有安全,安全中有業務等問題。以此需求爲前提,本文通過Mininet模擬SDN架構網絡,通過Suricata實現IDS檢測,利用Floodlight下發流表策略對流量進行調度,目標是將防護設備形成防護能力,通過編排方式,快速切入業務,保障業務系統穩定運行。

名稱 版本
floodlight 1.2
mininet 2.2.2
suricata 3.1
ubuntu 16.04

本機性能有限,通過一臺虛擬機部署以上產品。文章不對產品部署及具體規則配置進行詳細描述。

一、防護流程介紹

        通過ping指令進行簡單測試,初期IDS設備未採集h1與h2流量,後期通過策略下發,實現IDS快速切入主機流量,對主機流量進行實時檢測。本文采用開源產品搭建,操作效果不是太友好,後期可進行完善,通過可視化以拖拽形式實現安全快速編排。

   

二、模擬網絡環境搭建

    2.1 通過mininet,搭建模擬測試環境,見下圖:

c0爲controller(SDN控制),s1爲OVS交換機,h1(10.0.0.1)、h2(10.0.0.2)、IDS(10.0.0.3)爲三臺模擬主機。

對mininet搭建環境進行ping測試,確定網絡暢通。
2.2 通過Floodlight進行訪問,Switches信息如下圖:

其中h1使用port1,h2使用port2,h3使用port3,流表爲默認。

網絡架構圖如下:

2.3 IDS主機部署Suricata後,對IDS添加ping指令檢測,語句如下:

 

alert icmp any any <> any any (msg:"PING TEST";icode:0;itype:8; sid:1000000; rev:3;)

具體icode與itype數值選擇,見下圖:

三、測試

 初期IDS未採集h1相關流量,所以當h1對h2進行ping操作時,IDS不會進行流量監測。

 利用floodlight,通過post形式對流表進行下發操作,將h1對h2的流量鏡像到IDS中,流表操作語句如下:

curl -X POST -d '{"switch":"00:00:00:00:00:00:00:01","name":"flow-mod-2","cookie":"123","priority":"32768","in_port":"1","eth_type":"0x0800","active":"true","actions":"output=2,3"}'  http://127.0.0.1:8080/wm/staticflowpusher/json

通過Floodlight查看,流表已下發成功。

當我們通過h1主機再對h2進行ping操作時,見下圖:

IDS的告警信息fast.log,監測告警如下:

       可見我們通過對流表操作,實現了對主機的流量鏡像採集,實現了安全能力快速切入。以此邏輯我們可將已有的安全設備進行整合(比如IPS、WAF等)納入至SDN架構中,將防護設備形成防護能力,通過可視化編排方式,快速切入業務,保障業務系統穩定運行。

四、說點其它

    1.基於SDN架構的安全建設是後期發展趨勢之一。

    2.SDN+安全系統虛擬化,才能發揮更大安全能力。

    3.對醫療、教育、金融等行業落地使用還需進一步探討。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章