?

基于區塊鏈的網絡配置管理模型及方法

2021-02-16 00:40王煜荷王勁松張洪瑋張洪豪
天津理工大學學報 2021年6期
關鍵詞:配置管理網絡設備管理員

王煜荷,王勁松*,李 懿,張洪瑋,張洪豪

(天津理工大學a.天津市智能計算及軟件新技術重點實驗室,b.計算機病毒防治技術國家工程實驗室,c.計算機科學與工程學院,天津 300384)

隨著新一輪科技革命和產業變革的蓬勃興起,數據已成為繼土地、勞動力、資本和技術之后最為活躍的關鍵生產要素。網絡規模的迅速擴大使得信息系統內的數據內容日漸增多,信息數據逐漸成為各企事業單位的核心資產,數據安全保護越來越重要。而企業數據安全面臨的最大威脅,源自內部人員對于內部網絡資源設備的攻擊。國際數據公司(international data corporation,IDC)的一份調查統計表明,全球約有80%的企業存在內網信息安全或信息風險問題,在所有被調查的公司曾經產生過的安全隱患和事件中,超過60%的比例來自內部人員[1]。在利益的驅使下,內部人員的各種泄密和攻擊事件層出不窮。

同時,網絡設備所能支持的功能越來越多,導致網絡配置錯誤經常出現。在網絡設備的運行維護過程中,管理員通常依賴遠程通信網絡協議(teletype network,Telnet)、安全外殼協議(secure shell,SSH)、文件傳輸協議(file transfer protocol,FTP)、遠 程 顯 示 協 議(remote display protocol,RDP)等協議對設備進行遠程管理,這就使網絡配置管理中出現一些問題:賬號管理混亂、權限管理粗放、訪問控制策略不嚴格、無法有效審計用戶操作等[2]。錯誤配置不僅會引發網絡故障,還會影響到網絡的安全運行。為了實現安全策略,管理員往往需要人工將其轉化成底層的配置命令,不可避免地會出現一些非預期的配置狀態,從而造成安全漏洞,成為網絡安全運行的隱患[3]。

在這種嚴峻的情況下,如何保護好存儲了企業全部核心機密的后臺設備,尤其是如何更好地防范與審計內部管理人員對這些設備的訪問和操作,成為保障網絡數據信息安全最根本的環節。

目前主要的網絡設備配置管理有2種。第1種是分散式管理,即每個管理員都直接掌握設備賬號密碼,可直接登錄設備進行配置,這種管理方案的弊端是無法具體掌握管理員的相應操作,且管理員持有設備密碼,存在泄露隱患。第2種是統一配置管理,設置一個中間服務器,所有管理員統一登錄到該服務器,由該服務器代理登錄設備,接管終端計算機對網絡和服務器的訪問。這種方法可以規避管理員持有密碼帶來的風險,也可以由該服務器作配置歸檔和審計,但這種方法也存在問題:1)由于設置了中間服務器,那么中間服務器的安全尤為重要,一旦中間服務器出現故障或被攻擊,則整個網絡會癱瘓,而且配置記錄將會完全泄露;2)操作記錄不公開,可信證據由一方掌握,那么在多方協同工作的過程中,運維人員相對處于弱勢地位。

區塊鏈是利用加密鏈式區塊結構來驗證與存儲數據、利用分布式節點共識算法來生成和更新數據、利用智能合約來編程和操作數據的一種去中心化基礎架構與分布式計算范式,具有去中心化、時序數據、集體維護、可編程和安全可信等特點[4]。本文利用區塊鏈去中心化的特性,提出了一種基于區塊鏈的網絡配置管理模型,避免了可能出現的單點故障問題,增加攻擊成本,提高整個系統的可靠性和安全性。

1 相關研究

在網絡設備的配置方面,一些學者對提高網絡配置效率和配置自動化的實現進行了研究。唐啟濤[5]提出一種基于信息熵的網絡設備配置命令分類算法,應用在網絡設備配置命令的智能修復系統中,提高了配置命令分類的效率和精度。袁曉飛[6]設計與實現了基于Web的網絡設備監測管理系統,與可視化相結合,提供簡單、便捷和高效的網絡管理服務。文獻[7]編制了基于Visual Basic腳本語言(visual basic script,VBScript)的程序,實現交換機的批量維護。

在統一的配置管理系統的研究方面,陳躍斌[8]提出了基于可擴展標記語言(extensible markup language,XML)的配置策略統一描述方法,屏蔽了設備廠商配置命令不一致的問題,在此基礎上設計并實現了數據中心網絡配置管理系統(configuration management system,CMS)。網絡配置協議(network configuration protocol,NETCONF)是一種基于XML的網絡管理協議,它提供了一種對網絡設備進行配置和管理的可編程的方法。賴楊燈[9]基于NETCONF協議標準,對策略路由配置管理進行二次開發,設計了一種策略路由網絡配置管理系統。文獻[10]使用網絡本體語言(web ontology language,OWL),基于本體信息抽取,實現對不同供應商的異構設備的網絡配置管理。文獻[11]提出了一種基于區塊鏈的網絡功能虛擬化(network functions virtualization,NFV)安全管理、配置和遷移體系結構,保證了網絡核心配置的安全更新和遷移。文獻[12]對軟件定義網絡(software-defined networking,SDN)的自動化配置管理進行了系統研究,設計并實現了基于SDN的配置管理軟件。

“特權用戶”被認為是擁有訪問敏感網絡、機器和應用程序的權限,以執行普通任務的人(即網絡管理員)。特權訪問管理(privilege access management,PAM)指一類幫助保護、控制、管理和監控對關鍵資產的特權訪問的解決方案。在特權用戶管理方面,文獻[13]總結了云計算中不穩定的特權管理因素和威脅,對這一問題進行了全面地調查整理。文獻[14]針對細粒度特權管理和執行問題,開發了特權管理系統(privilege management model,PRIMA),提供網格層特權管理、動態賬戶創建和授權策略,支持臨時和動態協作場景。

區塊鏈上記錄的數據對所有用戶可見且不可篡改,因此可以用區塊鏈對訪問控制的策略/權限進行管理,從而實現公開透明的訪問控制。文獻[15]利用區塊鏈技術來定義訪問控制系統,將訪問控制策略編寫成智能合約部署在區塊鏈上,以保證訪問控制策略評估的可審核性。文獻[16]提供了對存儲在云中服務器的數據訪問控制,用基于密文-策略屬性的動態屬性加密方案來實現訪問控制,而無需云服務提供方的參與。文獻[17]基于以太坊平臺使用智能合約實現對醫療數據的訪問控制,將智能合約與訪問控制相結合進行自動化的權限管理,實現了對不同組織的分布式醫療數據的整合和權限管理。

綜上所述,對網絡配置管理的研究大多基于中心化的架構,鮮有將區塊鏈技術與配置管理相結合的研究。區塊鏈公開透明的特點使權限管理過程公開可審計,能夠防止越權行為,在訪問控制領域有一定優勢。

2 基于區塊鏈的網絡配置管理模型

2.1 模型架構

基于區塊鏈的網絡配置管理模型包含2個實體:運維人員和運維對象。

1)運維人員(管理員):對運維對象進行運行管理和維護的人員。

2)運維對象(網絡設備):是運維操作的對象,包括交換機、路由器等網絡設備和各種服務器。

系統架構如圖1所示,運維人員通過點對點網絡(peer-to-peer,P2P)互相連接,組成區塊鏈網絡,每個運維人員運行區塊鏈的一個節點,由區塊鏈網絡作為一個整體與網絡設備進行交互。其中,代理節點作為整個網絡的代表,負責某一輪對網絡設備的具體操作過程,代理節點由全網節點依據算法選出,各節點地位平等,公平競爭代理資格,沒有中心節點存在。

圖1 系統架構Fig.1 System architecture

2.2 主要功能

1)單點登錄。管理員只需要經過一次身份認證,就可以訪問多種目標設備,實現單點登錄。

2)權限控制。管理員只能訪問自己已獲得授權的目標設備,以“交易”作為請求信息的載體,由區塊鏈網絡所有節點共同執行判斷,驗證請求是否符合相應的授權規則。

3)賬號管理。對賬號整個生命周期進行監控和管理,賬號信息記錄在鏈下,并隨著代理節點的每次操作而不斷更新,實現賬號動態管理。

4)配置管理。管理員把配置操作、配置前后設備狀態等信息寫入區塊鏈,公開透明可追溯,以備日后審計。

2.3 設計方案

2.3.1 初始化

1)確定每個管理員能夠訪問和操作的設備,制定網絡設備的權限控制列表。

2)將所有管理員節點通過P2P網絡配置成區塊鏈網絡,把權限控制列表分發給每個節點,各節點生成公私鑰對并且公布公鑰作為自己的身份標識符。

3)對所有設備進行編號,稱為設備號(identity document,ID),記錄網絡設備初始狀態(如互聯網協議地址(internet protocol address,IP地址)、端口號、協議等能夠反映該設備工作狀態的字段值),把設備ID及初始狀態打包寫入創世區塊(第1個被創建的區塊)。

4)將設備的賬號密碼隨機分發給各管理員節點,設備的初始密碼由各節點各自掌握,使得設備的賬號密碼由全網的管理員節點共同保存,各節點只對自己保管的賬號負責,不知曉其他節點情況。

2.3.2 執行過程

假設區塊鏈中某一節點,也就是某一網絡管理員想要對某一設備進行操作,那么一個完整的運維審計執行方案包含以下3個階段:權限控制,代理節點操作和上鏈(即記賬),核心是“代理節點操作”部分?;趨^塊鏈的配置管理方案如圖2所示,3個階段循環往復執行,每執行一輪將會進行一次運維操作,記錄操作信息并打包生成新區塊,更新區塊鏈。各個階段的詳細說明如下。

圖2 基于區塊鏈的配置管理方案Fig.2 Blockchain-based configuration management scheme

1)第1階段:權限控制。這一階段是對傳統網絡設備配置過程中的權限管理的分布式實現。

①想要進行設備配置操作的管理員會向區塊鏈網絡發起交易,以交易的形式將請求信息發布至區塊鏈網絡,交易數據包括以下幾部分:目標設備ID,管理員數字簽名,請求進行的操作。

②區塊鏈網絡中的其他節點收到交易請求后首先進行身份認證,驗證交易的簽名,確認該筆交易是由合法用戶發起的,且沒有被篡改。

③身份認證無誤后通過訪問控制列表驗證用戶是否有相應權限,若驗證通過則向代理節點集中的首位節點發送信號,否則不發送。與傳統權限管理不同的是,本方案的驗證過程由全網所有節點完成,而不是單個節點或某幾個節點,通過這種方式可以避免串通作惡、單點故障等問題。

2)第2階段:代理節點操作。在本模型中,代理節點負責代理用戶完成配置操作,并在操作結束后將操作記錄打包送進區塊中,即區塊是由代理節點生成并廣播的,代理節點要先后完成代理操作和記賬兩項工作,因此代理節點的選擇尤為重要。本方案擬采用改進的權益證明(proof of stake,PoS)算法對所有節點(除去發起請求的節點)進行選舉產生代理節點。PoS算法是為解決工作量證明(proof of work,PoW)算法大量浪費資源問題而提出的一種替代算法,該算法與PoW算法的最大不同點在于區塊的記賬權由權益最高的節點獲得,而不是算力最高的節點。為了避免傳統的PoS算法選舉周期長、選舉機制復雜等缺點,本方案對PoS進行了如下改進。

①改進的PoS算法中權益根據節點積分確定,積分與節點的連續在線時長有關,節點的積分越高,被選為代理節點的概率就越大。每次選出積分最高的3個節點作為代理節點集,其中積分最高的為首位節點,其余2個為替補節點。首先令首位節點為代理節點,若首位節點不能勝任代理操作,則再從代理節點集中選取,一旦當選為代理節點,節點積分將清零。代理節點集的設置降低了節點不在線從而影響網絡運轉的風險。

②每個被選出的代理節點負責連續的5個塊,也就是負責處理5筆請求操作,避免頻繁地進行選舉,提高系統運行效率和出塊速度。

③引入懲罰機制,為更好地鼓勵誠實節點。節點作惡被舉報將會扣減積分,只有遵守協議的節點才能累積更高的積分,進而成為候選代理節點。

假設區塊鏈中有n個候選節點,每個候選節點標號為1,2,…,i,…,n,這n個候選節點可以構成一個大的集合:N={1,2,…,i,…,n},則節點積分D的計算公式為:

式中,Oi表示節點i的連續在線時長,Ti表示節點i執行代理操作的累計時長。

則n個候選節點的總積分可以表示為:

把每個節點的積分占總積分的比重看做每個節點的權重,表示為ω1,ω2,ω3,…,ωi,…,ωn,則:

信用系數是改進算法里的一個百分比系數,是節點信用度的一種表現形式。信用系數能夠在一定程度上左右節點的最終結果,保證高信用度的候選節點具有更大的優勢。最終結果R的計算公式為:

式中,α是根據節點信用度產生的系數,0<α≤1,初始數值所有節點一致,修改可以根據全體管理員的投票結果決定,通過該算法,信用度較低的節點想成為代理節點需要更多的在線時長,而信用度高的節點只需要維持正常行為,從而降低作惡節點獲得代理權的概率。

這一階段執行過程的具體步驟如下:

①代理節點在收到超過半數節點的驗證通過信號后,讀取交易數據;

②從交易數據中得到的信息確定目標設備ID,在區塊鏈上查找該設備的上一次操作數據,得到上一輪的代理節點信息,隨后向該設備的上一輪代理節點請求設備賬號密碼;

③使用獲得的賬號密碼登錄到目標設備,逐條執行交易中的操作;

④操作完畢后修改設備賬號密碼,斷開連接,注銷登錄狀態;

⑤將設備ID、交易數據、設備結束狀態等數據打包生成區塊,并將區塊數據廣播到網絡中。

3)第3階段:上鏈。全網其他節點接收到廣播的數據,會對打包數據進一步確認,驗證其簽名,只有通過驗證的數據才會被記錄到節點本地賬本中,區塊內容及說明如表1所示。如果沒有通過驗證,那么節點將拒絕對其簽名,也不會將數據繼續廣播到其他節點。

表1 區塊內容及說明Tab.1 Block content and description

3 分析與討論

3.1 安全性分析

本節主要從可用性、防篡改性和數據安全幾個方面分析模型的安全性。

1)可用性。由于區塊鏈網絡是一個分布式的點對點網絡,因此能在很大程度上抵抗技術失誤和惡意攻擊,并且每個節點都能夠復制并儲存一個數據副本,所以該系統避免了單點故障問題,任意一個單一的節點離線都不會對網絡整體的可用性及安全性造成任何影響,比傳統方法具有更高的抗風險能力。在權限控制方面,由區塊鏈網絡中的所有節點共同執行判斷,這種設計方法避免了只由單一的決策者來判斷,從概率學的角度提高了整個驗證判斷過程的安全性。這個問題可以抽象成為經典的分布式問題,即拜占庭將軍問題。若系統中有n個節點,其中有f個惡意節點,f個故障節點,那么只要f<(n-1)/3,整個系統就能夠對某個操作的權限問題達成一致。若某一驗證節點被攻擊,得出錯誤的結論,也無法對整體驗證結論形成影響,并且驗證結果在驗證點之間是可查、可審、可追溯的,惡意節點就能夠迅速被發現清理。

2)防篡改性。區塊鏈系統具有不可篡改的特性,所有行為均記錄在區塊鏈上,公開透明,便于審計追查。對所有操作信息進行記錄,包括輸入命令與輸出結果,保證在發生安全事件后,能及時追溯到具體操作的個人,實現配置的可追溯。相比于傳統的系統,日志的寫入都是經過全網節點共識的,增加了共識的可信度和不可抵賴性,為事后追責和系統狀態恢復提供了便利。同時,定期對記錄信息進行審計,對所有用戶的操作行為進行分析,從源頭杜絕隱患。

3)數據安全。為了保證網絡設備賬號和密碼不會被篡改和泄露,本模型利用區塊鏈系統去中心化特性的優勢,采用了分散管理的方法。與傳統的集中式管理不同,在分散管理方法中,運維對象的賬號密碼由區塊鏈網絡中的節點共同管理,賬號的管理權分散在網絡中,并隨著運維過程動態變化。當有節點退出網絡時,撤銷其代理權限,回收其所管理的賬號信息,在網絡中進行重新分配。代理節點在連接到設備前首先應向相應節點請求賬號密碼,登錄到設備后修改賬號密碼,由自己保管,明確賬號操作者和責任人,賬號隨著系統的修改而變化,以此實現賬號管理的動態平衡。假設有非此網絡的惡意攻擊者E,想要修改某設備Q1。其每次攻擊成功的概率都是1/n,其中n為節點數目。這樣除非E同時攻擊網絡中所有的節點,否則難以拿到某一時刻設備的密碼,從而有效地保證了密碼的安全。

3.2 性能分析

本設計在以太網上做了原型驗證實驗,實驗設備主要分為兩類。一類是組成區塊鏈網絡的節點,包括運行在VMware軟件中的6臺Ubuntu 18.04虛擬機,這6臺虛擬機運行在一臺服務器上,每個都配置了千兆網卡和網際協議版本6(internet protocol version 6,IPv6)地址,能夠保證節點之間的正常通信。另一類是作為操作對象的網絡設備,采用網絡設備模擬軟件eNsp和終端仿真程序SecureCRT對網絡設備的配置進行實驗。eNsp運行在上述6臺虛擬主機中的一臺主機上,網絡設備硬件環境如表2所示,AR201為路由器,S3700為交換機。

表2 網絡設備硬件環境Tab.2 Network device hardware environment

為了比較基于區塊鏈的方案和傳統方案之間的效率差距,實驗中另設了一臺虛擬機作為傳統方案中的服務器,來對比測試傳統方案和基于區塊鏈的設計隨著命令數量上升處理時延的變化。由于設備狀態不好觀測,所以分別用傳統方案的服務器和本方案的節點來配置路由器IP地址,然后通過Ping命令來實際檢測當前IP地址的變化。同命令數量下處理時延對比如圖3所示,測試結果表明,傳統中心化方案相比于本文方案達到的時延較低,但是本文方案也達到了不錯的效果,與傳統方案的差距并未太大,在實現分布式和去單點故障的優點下,本文方案在對安全性要求較高并對性能要求較低的場景中,如需要嚴格日志審計多中心聯盟場景具有一定優勢。

圖3 同命令數量下處理時延對比Fig.3 Comparison of processing delays with the same number of commands

下面對本設計在節點數量和命令數量方面做一個性能測試。與上面測試方式相同,配置路由器IP地址,觀察Ping包的情況,但是Ping包有8 ms間隔,所以統一取中值即取Ping包變化的那一個包的時間的前4 ms為具體時延,來測試多節點固定命令數量的時延,測試時每個節點固定發送10、30、100條操作命令,圖4為多節點固定命令數量處理時延對比,結果顯示,操作指令數量增長會造成系統時延的增加,但是節點數量增長對時延影響不明顯。這表明本模型有良好的拓展性,適合學校、軍隊、醫院等交易數量不多但是日志審核嚴格的應用場景。

圖4 多節點固定命令數量處理時延對比Fig.4 Multi-node fixed order quantity processing time delay

4 結論

本文提出了基于區塊鏈的網絡配置管理模型,并進一步闡述了基于區塊鏈的配置管理方案的主要流程。其核心思想是用區塊鏈對傳統網絡配置管理系統中的中心化部分進行分布式改造,主要功能包括單點登錄、權限控制、賬號管理和配置管理。分析和驗證表明,基于區塊鏈的架構能夠有效解決傳統架構下面臨的單點化和中心化的問題,將二值化的信任模型擴展為網狀的整體信任模型,更符合實際的網絡運行環境。

猜你喜歡
配置管理網絡設備管理員
汽車委托外加工零件自動化配置管理
網絡設備的安裝與調試課程思政整體設計
可疑的管理員
優化網絡設備維護提高數據通信傳輸質量
論ISO20000體系量化指標梳理
讓管理員管不了的名字
當小小圖書管理員
建設CMDB任重道遠
可信云平臺服務運行管理模式初探
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合