微隔離不僅是防火墻
前言:
作為國內(nèi)微隔離市場的主要開拓者,我們經(jīng)常被問一個問題,那就是我們的系統(tǒng)上都裝了防火墻,為什么還需要微隔離呢?我們通過自動化腳本配置主機防火墻策略不是也可以做到點到點白名單控制么?
首先,我們必須承認(rèn)這個看法本身還是有一定的道理的,在比較小比較靜態(tài)的網(wǎng)絡(luò)中(小于20臺服務(wù)器)也基本是可以工作的。但是如果我們討論的是一個定義為“云”或者“軟件定義的數(shù)據(jù)中心”的中等規(guī)模以上的計算系統(tǒng),那么我們就有一些東西要和您分享一下了。
一、 軟件定義的隔離
“微隔離”這個詞是一個比較商業(yè)化的市場用語,而這個技術(shù)事實上還有一個更加學(xué)術(shù)一點的名字——軟件定義的隔離(Software Defined Segementation)。事實上這個名字才更加本質(zhì)的說出了這個技術(shù)的內(nèi)涵。就像軟件定義的網(wǎng)絡(luò)(SDN)一樣,軟件定義的隔離的特點就是隔離點(enforcementpoint)與策略控制(policy)相分離,從而讓隔離更加靈活,更加智能,進(jìn)而有可能對由海量工作負(fù)載構(gòu)成的復(fù)雜而多變的虛擬化網(wǎng)絡(luò)進(jìn)行隔離管理。
在過去,我們主要通過防火墻來做隔離這個事情,在那個時候,策略的管理和隔離的動作都是發(fā)生在防火墻設(shè)備上的。就算是主機防火墻也是如此,它的策略也是配置在主機上的。這些策略一般是在防火墻上線部署的時候配置上去的,然后在整個防火墻的生命周期內(nèi)基本不做調(diào)整。然而,進(jìn)入到云計算時代之后,如此多分散的獨立工作的控制點變得非常難以維護和過于的僵化。進(jìn)而導(dǎo)致了云的使用者只能在安全與業(yè)務(wù)之間做一個二選一的選擇。要安全,業(yè)務(wù)就無法快速交付,要業(yè)務(wù)就無法進(jìn)行有效的安全管理。這種局面呼喚了軟件定義隔離這種技術(shù)形態(tài)的出現(xiàn)。軟件定義隔離與傳統(tǒng)防火墻最本質(zhì)的區(qū)別在于它把策略從每一個分散的控制點上給拿出來了,放在一個統(tǒng)一集中的地方進(jìn)行設(shè)計,管理和維護,原則上,安全管理者不必要了解下面的控制點在哪里,也不必再對每一個控制點進(jìn)行策略配置和維護,這些工作都將由策略管理中心來自動完成。
而這種策略管理工作,不是基于預(yù)定義腳本的簡單的自動化過程,而是一個基于實時網(wǎng)絡(luò)環(huán)境監(jiān)聽的,基于高層次安全策略的一種實時策略計算與策略更新過程。對每一個接入系統(tǒng)的控制點,根據(jù)實時發(fā)生的特殊事件,同時參考其他控制點的變化情況,做出獨特的,恰當(dāng)?shù)牟呗杂嬎?,這個過程就是軟件定義隔離的核心管理過程。
二、 主機防火墻與微隔離的關(guān)系
講清楚了微隔離技術(shù)的定義,再來回答用戶關(guān)于“主機防火墻”與微隔離的關(guān)系的問題就比較簡單了。簡單地說,主機防火墻相當(dāng)于SDN網(wǎng)絡(luò)中的白牌交換機,而策略計算中心相當(dāng)于SDN控制器。
在微隔離的安全體系中,具體的訪問控制是通過主機防火墻來做的,但是策略不在主機防火墻上,而是配置在策略計算中心。這個計算中心從全局收集信息,然后根據(jù)預(yù)先定義好的高級安全策略去做具體的策略計算,然后生成主機防火墻能夠看得懂的五元組策略,并配置回去。
所以,主機防火墻自身無法完成微隔離功能,一個強大的策略計算中心才是微隔離體系的靈魂。事實上主機防火墻有著悠久的發(fā)展歷史,無論是iptable還是wfp都是久經(jīng)考驗的好產(chǎn)品,他們在穩(wěn)定性,兼容性,性能上都非常出色。微隔離以這些老戰(zhàn)士為數(shù)據(jù)面的控制點事實上也是一種非常穩(wěn)妥的選擇,而微隔離的核心技術(shù)應(yīng)該放在策略計算能力上。
三、 微隔離技術(shù)的硬核究竟在哪里
如果說主機防火墻不是微隔離技術(shù)的核心的話,那么微隔離技術(shù)的硬核究竟在哪里呢?我們說圍繞著安全策略的生命周期,微隔離技術(shù)主要就是三個地方展現(xiàn)技術(shù)含量。
首先是業(yè)務(wù)分析
要做隔離就需要具體的安全策略,所謂“安全策略”就是允許或者拒絕哪些流量的具體規(guī)則。微隔離要解決的是內(nèi)網(wǎng)的點到點的訪問控制問題,一般來說都是采用的白名單策略。那么問題就來了,這個策略應(yīng)該怎樣設(shè)計呢?在內(nèi)網(wǎng)充斥著大量復(fù)雜且私有的應(yīng)用協(xié)議,除了業(yè)務(wù)開發(fā)者沒有人了解他們使用了什么端口和協(xié)議,于是無論是運維團隊還是安全團隊都缺少設(shè)計安全策略所必須的業(yè)務(wù)知識。
所以要做策略管理,首先要分析業(yè)務(wù),要把東西向的具體的通信關(guān)系給找出來,***是以可視化的方式呈現(xiàn)出來,這樣安全團隊才能夠在此基礎(chǔ)上設(shè)計出正確的東西向安全策略。如果沒有這個能力,你有再多的防火墻也注定只能是擺設(shè)。
然后是策略建設(shè)
了解了業(yè)務(wù)的構(gòu)成,下一步就是設(shè)計策略了。不過那又該怎么做呢,是不是點開每一條線,看看源和目的的地址和端口,然后到主機上去寫防火墻規(guī)則呢?如果這么搞,那就又掉進(jìn)了一個深不見底的大坑了。你能想象在一個幾千臺虛擬機,虛擬機之間有十幾種通信關(guān)系的私有云內(nèi)用這種方法設(shè)計策略么?
在這個階段,一個合格的微隔離管理平臺,應(yīng)該做到兩件事情,一個是自學(xué)習(xí)交互式創(chuàng)建,一個是去ip化的策略表達(dá)。
一般來說,微隔離平臺通過業(yè)務(wù)學(xué)習(xí),已經(jīng)了解到全部必要的信息,這個時候可以通過交互式的方式來創(chuàng)建策略,比如你選定一組虛擬機,告訴平臺說,現(xiàn)在看到的所有虛擬機間的通信都是可信的,請為我創(chuàng)建策略,那么微隔離平臺應(yīng)該可以自動的來創(chuàng)建策略。
而創(chuàng)建出來的策略***是去ip化的,因為ip在云系統(tǒng)中是一個非常不穩(wěn)定的參數(shù),經(jīng)常發(fā)生變化,***可以由更高級更穩(wěn)定的參數(shù)來描述,比如我們的comb平臺用的是虛擬機的角色標(biāo)簽來描述安全策略。
另外,我們的策略還能做到策略與策略作用對象脫耦,通過調(diào)整策略作用范圍,來動態(tài)的改變虛機上的安全策略部署。當(dāng)然,這個不是必須的,不過這可以進(jìn)一步下降策略總數(shù),提策略運維的效率,我們覺得這樣很酷。
***是策略自適應(yīng)運維
云是個快速變化的系統(tǒng),安全策略也必須能跟上云變化的腳步,我們看到現(xiàn)在各種云安全規(guī)范中,都會有一條自適應(yīng)要求(比如等級保護2.0的云安全擴展部分)——“訪問控制策略能夠隨著虛擬機的遷移而遷移”。其實我們一直很想跟有關(guān)部門提個建議,這個要求中缺少“自動”二字。導(dǎo)致很多產(chǎn)品通過手工遷移的方式,也能滿足要求。但是我們知道,這個要求的本意就是自動遷移。因為虛擬機遷移是云的常規(guī)操作,如果這個過程中需要安全部門的手工參與,勢必大大下降云的彈性,增加業(yè)務(wù)遷移時間,并且?guī)硎止げ僮魉豢杀苊獾腻e誤從而出現(xiàn)不必要的風(fēng)險。
事實上,除了遷移以外,克隆,擴展,資源升級等操作也都會導(dǎo)致網(wǎng)絡(luò)地址的變化從而需要安全策略做相應(yīng)的調(diào)整,這些時候***也都能實現(xiàn)安全策略的自適應(yīng)調(diào)整。一個好的微隔離管理平臺,應(yīng)該能夠做到這一點,否則就是一種管殺不管埋的產(chǎn)品設(shè)計,你幫助安全部門設(shè)計了幾萬條策略,然后你做不到自適應(yīng)運維(注意是自適應(yīng),不是自動化),那么以后安全部門的伙計們就可以不用下班了。我們的微隔離管理平臺叫做QCC——英文單詞QueenComputingCenter的縮寫,它最核心的工作就是持續(xù)不斷的做策略計算和策略更新。
終上所述,大家可以看到,微隔離的核心在于一個高度智能化的全生命周期黑科技的策略管理中心,主機防火墻不過是執(zhí)行策略的控制點而已。如果大家要評估一款微隔離產(chǎn)品,請圍繞策略管理中心來下功夫,而不是防火墻,你要看他是否能真的把你帶上安全的新高峰而不是推入安全的新火坑。畢竟這才是你能否擁有一個愉快的微隔離使用體驗的決定性要素。