隨著互聯(lián)網(wǎng)技術(shù)的不斷發(fā)展,在線網(wǎng)站的規(guī)模越來越大,防火墻作為網(wǎng)站的安全屏障,被大量的使用。防火墻數(shù)量的增加以及防火墻中安全策略條目的增加,安全工程師的運維工作量成倍的增長,應(yīng)用交付往往要求防火墻策略能快速設(shè)置。用傳統(tǒng)的人工方式運維大量的防火墻策略已經(jīng)變得非常困難。
本文會介紹攜程網(wǎng)絡(luò)安全運維如何通過自動化方式,在防火墻數(shù)量達到幾十臺,策略條目龐大、多品牌的情況下,對防火墻策略進行集中式統(tǒng)一化的管理,提升用戶查詢、申請策略體驗,優(yōu)化申批流程,系統(tǒng)自動化配置防火墻策略,提升安全工程師效率的同時降低人工出錯概率。
防火墻運維之痛
防火墻運維之痛,這種叫法有點落俗套,可事實上運維的確是痛的,我們經(jīng)常在很多場合以及在PPT的開篇,會看到這樣的說法,比如
IT運維之痛,機房管理之痛,網(wǎng)絡(luò)管理之痛,所以痛在運維這個行業(yè)是一個正常的存在,我們都知道,運維通常要經(jīng)歷人工階段到自動化階段,再到智能階段這三個過程。當人工階段處理的事務(wù)遇到嚴重挑戰(zhàn),就會痛苦,不痛苦就沒有改變。所以痛也不見得是壞事。
我們在建設(shè)基礎(chǔ)的安全架構(gòu)的時候,通常有兩種選擇,一種是單一品牌的防火墻,或者選擇多品牌的防火墻的架構(gòu)。攜程由于一些歷史的原因,我們在現(xiàn)網(wǎng)使用的就有5個品牌。據(jù)相關(guān)調(diào)查數(shù)據(jù)顯示,企業(yè)網(wǎng)使用多品牌防火墻是一種普遍情況。比如銀行業(yè)有防火墻異構(gòu)的合規(guī)要求,一些金融企業(yè)也會參照這個標準。不同品牌的防火墻提供不同的功能特性。比如在
OA出口,你想看到并攔截應(yīng)用層的安全威脅。就會選擇NGFW,數(shù)據(jù)中心可能會選大吞吐量的墻來滿足數(shù)據(jù)轉(zhuǎn)發(fā)的需求。不同時期、商務(wù)因素等這樣一些原因,導(dǎo)致我們使用了不同品牌的防火墻來滿足安全隔離的要求。

這張拓撲圖展示的一些較大規(guī)模互聯(lián)網(wǎng)公司或企業(yè)典型的防火墻部署示意圖,體現(xiàn)了邊界防護、重要業(yè)務(wù)系統(tǒng)隔離保護、辦公與生產(chǎn)隔離的一些保護需求。據(jù)我了解使用幾臺到幾十臺的企業(yè)有很多,也有一些大型集團公司或跨國公司使用數(shù)百臺防火墻。面對這么多防火墻,要把它管理好,難度是很大的。有些廠商就說了,你可以使用我們的防火墻集中管理系統(tǒng)幫助降低運維復(fù)雜度,當告訴他我們有好幾個品牌的墻,對不起,他的系統(tǒng)管不了。只能管自家的墻。有商用產(chǎn)品可以實現(xiàn)不同品牌防火墻策略集中管理,但是按license 算錢,價格昂貴,而且不靈活,不能實現(xiàn)個性化的需求。在這種多品牌,多數(shù)量的情況下,防火墻系統(tǒng)的運維難度和挑戰(zhàn)將變得非常的大。
現(xiàn)在看看運維層面實際遇到的問題,用戶經(jīng)常會提出這樣的問題,我訪問某個資源不通,是不是被墻攔截了?訪問lab 環(huán)境有沒有墻呀?測試訪問生產(chǎn)是違規(guī)的,需要特別審批,找誰去審批呢?而防火墻安全工程師呢要一遍遍解答用戶的疑問,不斷與用戶溝通。同時要人工審核策略需求,編寫防火墻配置工藝,在變更窗口登錄到防火墻設(shè)備下發(fā)配置,不斷重復(fù)這個過程。我們都知道,現(xiàn)有安全工程師很難招,而且都很貴,招來做大量重復(fù)性工作,對安全工程師本身的成長是不利的。還有一個顯著的缺點就是人工處理的速度慢;ヂ(lián)網(wǎng)企業(yè)業(yè)務(wù)需求變化快就要求防火墻策略能夠隨需而變快速部署。在這種情況下,低效的工作已經(jīng)不能滿足實際的業(yè)務(wù)要求,因此我們提出自己的運維目標:透明、規(guī)范、自動化、高效。
防火墻運維管理系統(tǒng)
為了實現(xiàn)透明、規(guī)范、自動化、高效的防火墻運維目標,我們設(shè)計了這樣一個架構(gòu),最底層是每臺防火墻設(shè)備,通過API接口與系統(tǒng)連接,配置備份系統(tǒng),每小時對全網(wǎng)防火墻自動進行一次配置備份,當然可以針對不同實時性要求級別來調(diào)整備份間隔。比如AD會新增入職員工域帳號,也會按需新建一些郵件組,這些信息多久同步到防火墻上呢,看需求。路由解析和和配置解析兩個模塊處理配置文件,并將元數(shù)據(jù)(5元組+路由表)存入統(tǒng)一模型數(shù)據(jù)庫。
最核心的基礎(chǔ)工作就完成了,在此之上設(shè)計一些功能模塊,路徑查詢解決拓撲計算問題,策略查詢允許用戶自助查詢兩點間防火墻策略,策略合并和生成模塊是自動生成策略配置工藝。策略自動下發(fā)實現(xiàn)工藝下發(fā)設(shè)備,再上一層是API,這些功能模塊都是通過API方式調(diào)用 的,最外層是統(tǒng)一web portal 入口,提供給用戶查詢或申請防火墻策略,跟蹤進度等。還有一些小工具我們也集成進入管理系統(tǒng),比如設(shè)備密碼修改、VPN管理。最右上角,可以通過系統(tǒng)API與其他系統(tǒng)共享數(shù)據(jù)。

這張圖展示的是,我們自主開發(fā)的防火墻運維管理系統(tǒng)的組成,簡單來說它有三個模塊,拓撲計算、策略查詢和策略生成三個模塊,工單對接指的是一套流程,其他的模塊其實指的是一些有用的工具。
那我簡要的說一下這些模塊實現(xiàn)的功能,拓撲計算做什么事情?通過路由計算的方法形成一個拓撲,這個拓撲指的是,訪問的兩點之間跨越了哪些墻,然后策略查詢它做兩件事情,第一件事情就說提供給用戶可以自主的去查詢策略。第二件事情,用戶在申請策略的時候,我們后臺會幫他自動做一個查詢動作,看是不是已經(jīng)有策略了,如果有策略會返回一個消息告訴說,有策略了,你不需要申請,直接去測試就可以了,這樣可以節(jié)省大家的時間,策略生成這個模塊,它是針對不同品牌的墻去編寫防火墻的配置工藝,比如說我們都知道思科、PaloAlto、Fortigate這些品牌的墻,每個策略工藝都不一樣,我們需要去解決這些問題。
工單對接,這塊強調(diào)的是流程的,解決三個問題。第一個是我們與現(xiàn)有的企業(yè)網(wǎng)內(nèi)的變更管理系統(tǒng),或者是工單系統(tǒng)對接,第二要解決的問題是,我們設(shè)計一個用戶從提出申請到自動化完成一個策略配置,再告訴用戶需求完成一個完整的一條龍服務(wù)。第三個就是一些特殊權(quán)限的審批,如果遇到特殊權(quán)限,原來都是發(fā)郵件審批,非常低效,現(xiàn)在我們通過一個特殊審批的模塊解決這個問題,我們設(shè)計了規(guī)則,比如說要訪問數(shù)據(jù)庫的防火墻權(quán)限,要找誰審批。如果要測試環(huán)境訪問生產(chǎn)環(huán)境的違規(guī)訪問,要做特例審批,我們都定好規(guī)則。當用戶的輸入條件匹配了這些規(guī)則會自動發(fā)郵件給審批人,通過URL鏈接進行審批,然后就會往下面的流程去走。
其他的一些功能模塊,比如說有改密碼的模塊,有VPN隧道管理模塊,還有一些防火墻元素查詢的模塊,我們要維護數(shù)百條的VPN隧道,如果人工的方式一條一條去添加效率非常的低,防火墻運維系統(tǒng)開放接口,允許我們通過導(dǎo)入Excel表格的方式,一次可以添加一批隧道效率大幅提升。
核心模塊實現(xiàn)原理
接下來會詳細介紹一下幾個核心模塊的實現(xiàn)原理。拓撲計算要解決的問題是知道兩點之間的訪問經(jīng)過哪幾臺墻?通常的做法是這樣的,安全工程師根據(jù)經(jīng)驗?zāi):袛鄡牲c之間的訪問經(jīng)過哪幾臺防火墻,再加人工查詢、驗證,有時拿不準需要看防火墻Log,看是不是有deny日志,。存在的問題就是在防火墻數(shù)量較多的情況下,安全工程師往往難以判斷兩個IP是否經(jīng)過墻或經(jīng)過哪幾臺墻,費時費力,效率低下,判斷可能產(chǎn)生差錯。
自動化拓撲計算方法,來解決,確定源訪問到目標經(jīng)過哪幾臺防火墻的問題。首先在防火墻進行路由匹配 (最長路由匹配,掩碼中的1最多)也叫精確匹配,如果匹配到轉(zhuǎn)到下個過程,否則繼續(xù)查詢其他防火墻。B.接口比較,這個過程是判斷出路由經(jīng)過防火墻的接口或zone.如果判斷源、目的接口或zone 相同,就需要把該防火墻從拓撲中刪除。實際上就是不經(jīng)過這臺墻。匹配到將相應(yīng)的防火墻添加到拓撲中。C.過程,如果所有防火墻都被遍歷,則可以輸入防火墻拓撲。否則轉(zhuǎn)到A 進行下次循環(huán)。
策略查詢普遍做法仍是基于經(jīng)驗判斷,經(jīng)驗豐富的工程師可以快速定位到墻和策略,不熟悉的操作人員可能要逐臺查詢多臺防火墻才能找到對應(yīng)的策略,安全策略在不斷的增,當策略數(shù)目多到幾千條時,查詢工作將變得困難,在跨多IDC,跨多墻的環(huán)境下,比較難搞不清楚用戶提出的策略申請到底有沒有策略支持。帶來的缺點就是工作效率低下,可能漏查。
自動化策略查詢的實現(xiàn),查詢的輸入條件包括源、目標、目標端口,協(xié)議4個元素,通過拓撲計算已經(jīng)知道目標落在哪臺墻上,因此查找目的的動作直接在目標墻上進行,范圍縮小,查詢速度很快。在程序處理上是按這個邏輯處理的。首先匹配目標,找到目標接著匹配目標協(xié)議和端口,也找到了,再匹配源,如果源也找到了。則記錄查詢結(jié)果,注意此時還沒有結(jié)束,還需要繼續(xù)在剩余的策略中查詢,所有策略都匹配完,統(tǒng)一輸出結(jié)果。通過這樣幾個步驟,根據(jù)用戶的查詢條件,就能秒級返回結(jié)果,是有策略放行還是該訪問被防火墻攔截,一目了然。
防火墻配置工藝編寫的傳統(tǒng)做法,根據(jù)不同品牌,有些墻只能圖形界面配置,有些墻可以圖形可以命令行,安全工程師會針對不同品牌墻,根據(jù)自己熟悉的方式編寫配置工藝,在變更窗口登錄防火墻完成配置,從變更申請到工藝編寫再到登錄設(shè)備配置,整個過程平均耗時在30分鐘以上。人工處理的方式缺點也很明顯,人工操作時間加上變更窗口時間限制,用戶的等待時間有數(shù)小時之久,用戶滿意度差。人工操作還有一個不好的地方,會發(fā)生人為差錯的可能性。
自動化生成策略工藝并下發(fā)設(shè)備的實現(xiàn)。第一個過程首先是判斷拓撲中涉及的防火墻,對它的策略操作是不添加、新建還是修改。然后會有2種情況,如果策略生成動作為新建策略,則按需生成新建策略的工藝,生成的方法是按防火墻的API格式或是CLI命令行格式生成。第二種情況,如果判斷策略生成動作是修改策略,那么在生成策略工藝時,就需要處理對原策略的修改,可能需要調(diào)整策略順序等操作。完成策略工藝生成過程,這里會對工藝做人工審核,后面后進到。到達變更窗口時間,自動把配置下發(fā)到防火墻設(shè)備。完成策略變更。
流程優(yōu)化
之前的內(nèi)容解決了技術(shù)層面的問題,接下來看看流程方面的優(yōu)化。
對于用戶來說,我們提供統(tǒng)一的申請portal,用戶申請策略需求,后臺自動判斷,如果有策略,返回消息,用戶自行測試通過就結(jié)束了。如果后臺判斷沒有策略支持,生成策略清單,可能是1條或多條策略需求,如果是常規(guī)申請,會直接提交成功,如果提供的策略需要特別審批,比如申請測試環(huán)境訪問生產(chǎn),一定是特例申批。
我們有一個審批管理模塊解決這個問題,程序判斷如果提出的策略屬于特殊申請的,會自動給審批人發(fā)郵件說明申請理由,審批人點開鏈接點通過或拒絕進行審批,通過后完成申請?zhí)峤弧T诎踩こ處熯@條線上,申請?zhí)峤缓髸M入自動化的防火墻管理系統(tǒng)開始自動生成工藝,安全工程師人工審核工藝,必須要安全工程師人工審核。
上生產(chǎn)前二次檢查,就是為了避免由于系統(tǒng)設(shè)計可能存在的疏漏,生成與預(yù)期不一致的變更工藝,帶來對生產(chǎn)業(yè)務(wù)的影響,我們要防止這種錯誤的產(chǎn)生。增加人工把關(guān)環(huán)節(jié)。審核通過后等待變更窗口,到達變更窗口時間,自動執(zhí)行變更。也是自動下發(fā)策略的過程。完成一次策略申請到人工審核再到自動下發(fā)設(shè)備的整個過程。通過自動化策略配置的實現(xiàn),策略維護花費的時間大大減少,現(xiàn)在做一個變更,平均花費3分鐘左右,比原來30多分鐘有10倍的提升。

對接工單系統(tǒng),自動化對接工單或變更系統(tǒng),雖然自動化與流程之間有很多的沖突,因為自動化追求的是速度,效率,而流程希望你慢下來。要求把事情做正確。
前幾天參加另一個安全的會議,遇到一些與會嘉賓舊事重提,也剛好是攜程528事件過去1周年不久。就問我到底是什么原因?qū)е戮W(wǎng)站癱瘓12小時。對于這次事件,網(wǎng)上各種猜測,各種版本,有數(shù)據(jù)刪除說、有員工報復(fù)說、有網(wǎng)站被黑說。
在這里說明一下,真正的原因就是由于員工錯誤操作,誤刪除了生產(chǎn)服務(wù)器上的執(zhí)行代碼導(dǎo)致。雖然流程不能完全規(guī)避掉像528這樣的事故,但是它會幫助我們降低發(fā)生事故的概率。因此在攜程的最佳實踐就是自動化系統(tǒng)與變更工單系統(tǒng)對接。打通,使二者結(jié)合作用。在流程框架的規(guī)定下進行自動化。
具體是這樣一個過程,策略申請,策略配置請求單生成進程會創(chuàng)建請求單,并返回單號,第一個步驟是等待審批,這個角色通過是安全工程師的leader, 授權(quán)該申請。到變更窗口時間,程序修改狀態(tài)為“處理中”,此時工單進行會創(chuàng)建一個變更單,前面的是請求單,二者有區(qū)別,不要混淆。生成好變更單后是等執(zhí)行狀態(tài),會自動發(fā)消息給NOC,說某某同事因什么需求,需要在某某設(shè)備上執(zhí)行策略變更。NOC接受工單后,狀態(tài)修改為已接受、并且獲取請求單對應(yīng)的變更單。當程序?qū)⒆兏鼏螤顟B(tài)修改為執(zhí)行中時,程序同步自動化登錄到相應(yīng)的防火墻設(shè)備執(zhí)行策略下發(fā)操作。然后程序?qū)⒄埱髥魏妥兏鼏螤顟B(tài)分先后置為已完成。整個流程部分就完成了。
簡單總結(jié)一下分享的內(nèi)容,三個核心模塊,拓撲計算,策略查詢和策略工藝生成,一套流程,解決用戶一條龍的服務(wù),以及與我們的變更管理和配置管理系統(tǒng)的工單對接,一些工具用來提升我們的效率,它們共同構(gòu)成了我們的防火墻自動化運維系統(tǒng),通過這套系統(tǒng)的自動化方式,幫助我們輕松運維幾十臺防火墻,在不斷提高工作效益的同時,也降低了人工出現(xiàn)差錯的一些概率。
核心關(guān)注:拓步ERP系統(tǒng)平臺是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請注明出處:拓步ERP資訊網(wǎng)http://www.oesoe.com/
本文標題:攜程網(wǎng)絡(luò)防火墻自動化運維
本文網(wǎng)址:http://www.oesoe.com/html/news/10515520054.html