大數據正處于快速發展期,特別是開源技術生態復雜,組件眾多。如何適應大數據平臺的快速發展,保障其安全運行,是擺在安全維護人員面前的一道難題。
Hadoop平臺各組件自身安全配置功能成本低、見效快。但由于專業人員較少,配置項眾多等原因,管理員很難全面掌握其所有組件安全配置,在工作中迫切需要對Hadoop各組件制定統一的檢查標準和加固建議,利用自動化、標準化的檢查系統對其進行全方位檢查,保障大數據平臺的安全運行。
因此,為保證大數據平臺的安全運行,迫切需要一種能夠自動化、周期性、高效率對大數據平臺底層Hadoop體系的各個組件進行準確的安全配置檢查的工具。
梳理大數據平臺各個組件的安全配置規范,涉及到的組件主要包括有:HDFS、Hbase、Hive、MapReduce、YARN、Spark、Sentry、Kafka、ElasticSearch、Redis、IKAnalyzer、DACP等十數個組件,從身份認證、授權、加密、日志等四個方面對檢查項進行分類。大數據平臺的安全基線檢查不僅包含hadoop各個組件,還包括通用設備,如操作系統、數據庫、網絡設備等。

圖1 大數據平臺安全基線核查的實現過程
Hadoop的安全配置檢查項需要進行梳理和開發,檢查項分為身份認證、授權、加密、日志等四類。
通用設備的安全配置檢查復用已有檢查項,檢查項分為賬號口令和認證授權、IP訪問控制、日志安全以及其他安全配置四類。
安全配置基線即設備需要滿足的安全配置基本要求。根據梳理的檢查項,為每一個檢查項設定安全配置基線,最終建立該設備類型的安全配置基線集合。
安全配置基線的來源主要有兩部分:設備廠家官方網站的安全配置建議;專業安全廠家的技術積累。
大數據平臺安全基線核查的實現過程如圖1。
編寫檢查項,檢查項由基本信息、檢查腳本、安全基線、加固建議四部分組成;
登錄設備采集信息;
判斷檢查項是否合規,根據安全基線設置進行合規性判斷;
生成檢查報表,按照任務、業務系統、設備類型、具體設備等多維度生成檢查報表,展現設備合規性。
搭建用于檢查項的測試與驗證的大數據基礎平臺測試環境,其網絡拓撲如圖2。
大數據平臺部署環境信息有:操作系統信息(操作系統統一采用Redhat 7.0)、數據庫信息(數據庫采用MySQL5.6.24)、CDH 5.3。
安全配置基線檢查項編寫環境信息:安全基線核查系統(采用目前使用的安全基線核查系統(BMS));配置安全分析模塊和配置安全采集模塊部署情況(采用集中部署方式)。
檢查腳本用于在Hadoop各組件部署的服務器上執行,獲取配置回顯信息,用于后續對回顯進行解析。
根據前期調研發現,檢查腳本采用shell編寫,腳本的主要內容包括:腳本分類、腳本名稱、腳本內容、腳本描述等。

圖2 大數據平臺安全基線核查系統網絡拓撲
腳本分類:腳本執行的操作系統類型。由于當前采用Redhat7.0作為服務器操作系統,所以腳本默認按照Redhat7.0編寫,但是考慮到其他大數據平臺可能采用其他發行版操作系統,所以腳本分類是必要的。
腳本名稱:腳本名稱應能夠反映腳本的用途和適用范圍,建議采用“組件名稱+腳本用途”的方式進行命名,如“HDFS-查看HDFS配置文件信息”。
腳本描述:詳細描述腳本的用途、編寫過程、執行步驟等信息。
解析規則用于對腳本執行的回顯進行進一步解析,解析方式有以下兩種。
正則表達式解析:使用正則表達式進行關鍵字匹配,用于解析簡單回顯;
程序類解析:使用程序對回顯結果進行結構化處理,用于解析復雜回顯。
經過腳本執行、結果解析后得到的關于設備配置信息的關鍵字集合是result結果,基準值是滿足配置基線要求的關鍵字集合,稱為benchmark。其中,result可以為空,benchmark不能為空。判定規則用于result和benchmark的比較。
加固方案用于指導對檢查不合規的項進行合理配置,是其結果滿足安全配置基線要求。加固方案根據操作的類型可以分為四類:加強管理、系統改造、增加手段、更改配置等。
根據調研與研究結果,Hadoop主要通過更改配置的手段完成安全加固操作。加固方案的編寫需要十分詳細,確保管理員按照此方案操作,即可保證該項檢查合規。
檢查項編寫完成后,需要進行驗證,驗證分為兩部分。
測試環境驗證:在本地搭建的大數據平臺測試環境中進行在線檢查,驗證檢查項和加固方案的正確性。
生產環境驗證:在大數據平臺生產環境中進行在線檢查,驗證檢查項和加固方案的正確性。
1.大數據基線加固影響
安全加固需要修改設備配置信息,具有潛在的未知影響,需要對此進行詳細風險評估。主要方法有四種。
官方網站資料查詢:了解每個檢查項的功能與潛在影響范圍,對修改帶來的風險進行預判。
專家判斷:咨詢大數據平臺安全專家,對被修改項的潛在影響進行判斷。
大數據平臺測試環境測試:在大數據測試環境修改不合規的配置項,觀察對大數據平臺正常運行情況的影響,修改影響大數據平臺正常運行的配置項的基線標準。
大數據平臺生產環境測試:由于測試環境的測試十分接近生產環境,所以對生產環境的影響可以較為準確地預判,同時選擇在夜間對大數據生產環境的安全配置進行集中檢查與加固。
2.持續保障大數據平臺安全

圖3 各個組件全生命周期管理
覆蓋大數據平臺各個組件全生命周期管理,包括大數據平臺整體規劃、設備及組件入網、大數據平臺建設階段、大數據平臺日常運行維護、無用設備及組件的退網階段,如圖3所示。
大數據平臺整體規劃:根據單位安全規劃要求提供輔導;
設備及組件入網測試:系統需滿足單位安全合規要求;
大數據平臺建設:確保系統按照要求開發實施,于上線前驗收,不合規項給出整改意見;
大數據平臺日常運行維護:定期進行自動安全合規檢查,不合規項及時告警;
無用設備及組件退網清除:確保已退網設備不再聯網、不再供電。
3.檢查效率提升
大數據組件安全基線檢查對所有在網設備進行系統自動化檢查,節省了前期準備、中期檢查和后期分析整理的工作量,極大的提高了工作效率。
自動檢查效率是人工檢查的300倍以上,并可以進一步提高,多維度檢查報告一鍵生成。
隨著大數據應用的高速發展,大數據平臺的安全防護經歷了從無到有的發展過程,但是目前其安全防護能力仍然十分薄弱。
安全配置基線檢查解決了無法對大數據平臺的安全配置進行自動化核查的問題,通過確定大數據平臺各組件的檢查基線,編寫檢查項、檢查腳本、加固建議,對檢查項進行多輪次的測試等步驟,徹底解決了大數據平臺的安全配置問題,填補了該領域安全支撐手段的空白,極大提高了工作效率,節約了生產成本,保障了單位網絡安全。