溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Hadoop系統安全的知識點有哪些

發布時間:2021-12-10 11:30:05 來源:億速云 閱讀:189 作者:iii 欄目:網絡安全

這篇文章主要介紹“Hadoop系統安全的知識點有哪些”,在日常操作中,相信很多人在Hadoop系統安全的知識點有哪些問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Hadoop系統安全的知識點有哪些”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

一、Hadoop基礎框架

在講安全之前,先要做個基礎普及。我猜國內很多安全人員對Hadoop的框架完全不了解,或知道的很少。

Hadoop在應用當中,業務首要考慮的是性能擴展、集群存儲擴展,而在方法上主要依靠開源。了解Hadoop框架的意義在于,框架里的每個組件都存在潛在風險。這個圖是Hadoop底層MapReduce系統的簡化視圖:


Hadoop系統安全的知識點有哪些

從這個圖你可以看到,Hadoop的擴展性非常好,支持并行處理,提供可伸縮節點,也能對多租戶跨應用進行支持。但在安全上有個問題,這里每個node都是對等的,且互相通信,通信包括很多內容,比如取保數據正確復制、node在線離線、存儲優化等功能,但這也就是說,他們之間是互相信任的,這就是一個風險。

MapReduce只是Hadoop底層一個分布式任務處理系統,而整個Hadoop的框架是這樣的:


Hadoop系統安全的知識點有哪些

你也可以把它看成是類似LAMP堆棧,可以根據自己的業務情況添加組件。例如你用HBase來存儲數據,以實現毫秒級的檢索,但對多字段的組合查詢卻比較弱,這時你可能就需要Solr來做組合查詢。用Sqoop來幫你從傳統關系型數據庫導數據,用Pig來實現高級MapReduce功。Spark,Drill,Impala和Hive都可以用來做SQL查詢。所以整個Hadoop是靈活、定制、模塊化的。

靈活性帶來了復雜性,也給安全帶來了難度。每個模塊都有不同的版本、配置,甚至需要單獨的身份驗證,因此每個模塊都是風險點。所以就有了Sentry,可以為整個Hadoop生態系統統一實現授權,未來也許還有新的安全模塊出現。

二、系統安全

 在Hadoop的系統層面:

1、身份驗證和授權

基于角色的權限訪問控制(RBAC)是整個訪問控制的核心,RBAC就是把角色和權限進行關聯,這個關聯包括了角色、組、表、標簽以及其他各種可用數據。認證和授權在大型企業里,是需要跨團隊的合作的,比如與SSO的集成是和IT打配合,數據字段密級的顆??刂坪蛿祿脚_配合實現。Hadoop生態里,身份是個比較復雜的內容,Hadoop在設計的時候就盡可能的與權威身份源松耦合,Hadoop默認使用Kerberos作為認證協議,但Kerberos對更高級的身份特征認證支持是不夠的。

2、靜態數據保護

靜態數據的保護其實就是指加密,HDFS支持原生靜態加密,防止直接從磁盤讀取數據。但是敏感數據可不僅僅存在于HDFS層,日志、交換文件、消息隊列、元數據庫等其他地方也會有大量敏感數據存在。

3、多租戶

Hadoop通常都是為多租戶提供服務,例如我所在的公司,租戶包括了不同的bg,也包括收購投資的公司,也有與外部合作的租戶。租戶之間的數據應該隔離或者加密,有的公司用的ACL來控制,而在云端,多數是通過區域密鑰加密。

4、節點通信

舉例來說,Hadoop和MongoDB默認是非安全通信方式,用的是基于TCP / IP,未加密的RPC。雖然提供了TLS和SSL,但是很少用在節點之間。

5、客戶端交互

Client是和resource manager、node之間交互的,見圖一。因此Client可以做出攻擊行為,比如惡意占用資源、利用漏洞攻擊。而Hadoop是一個分布型的架構,傳統上的防火墻之類的工具不適合。

6、分布式節點

有一句話很經典,移動計算比移動數據便宜,數據在有資源的地方計算,從而實現大規模并行處理。分布式會讓環境更復雜,從而產生更多的攻擊面,補丁、配置管理、身份驗證、靜態數據保護、一致性都成為問題。

三、運營安全

除了系統安全之外,還有操作運維上的安全。運維一般都希望提供配置管理、補丁升級、策略維護之類的功能。而Hadoop之前是沒有這些東西的,就算是現在也缺少成熟的運營手段。在這部分存在的問題是:

1、身份驗證和授權

身份和身份驗證是安全的核心,在這方面Hadoop做了大量的集成,從最初不提供認證,到集成LDAP,Active Directory,Kerberos、X.509,通過這些集成,可以基于角色映射授權,也可以擴展到更細粒度的授權(比如Apache Sentry),再到自定義。

2、特權訪問

在公司里,可能負責操作系統的是一個管理員,Hadoop是另一個管理員,他們都可以訪問集群的文件,所以需要分隔管理角色,把不必要的訪問限制到最低。對于直接訪問數據,可以通過基于角色授權、訪問控制列表等的組合管理方式。對于管理角色則可以通過三權分立來分隔。再強一些,則是加密和密鑰管理,HDFS加密。

3、配置和補丁管理

集群可能有幾百個節點,對這些節點統一做配置和補丁管理是個難題,比如新增節點和原有節點配置不統一這類問題?,F有的配置管理工具都是在底層平臺上,NoSQL系統還沒有對應的配置管理,另外市面上也沒有針對Hadoop做特定檢查的掃描器。

4、軟件依賴

Hadoop有很多不同組件,每個組件有自己的配置、補丁、驗證方式。好在Docker技術的出現從很大程度上可以緩解這個問題。

5、應用和節點的身份驗證

如果攻擊者可以添加一個節點進入集群,就可以滲透到數據層,這就直接繞過了身份認證。通過節點進一步拿到Kerberos密鑰表文件,則可以偽造身份。這時候則可以考慮證書,雖然證書部署會變得復雜一些,但提高了安全性。

6、日志審計

如果發生數據泄漏,能不能從日志上進行追蹤?大數據環境里有一些開源工具可以用,比如Facebook開源的Scribe或者Logstash,日志可以存放在集群里面,不過這樣也有被篡改風險,所以很多公司會考慮Splunk等專用平臺,把日志傳到其他平臺。Hadoop 里有很多組件,不同的日志格式,所以還需要做日志的聚合。另外僅有用戶、ip這些信息不夠,還要知道查詢語句是什么。

7、監控和阻斷

最常見的場景,計算平臺資源不足,原因是某些熊孩子在平臺上跑了一些垃圾任務占用了資源。又或者你發現一個惡意查詢,這時候就得有手段阻止。Hadoop提供了一些監控工具,這些工具一般是嵌入在Hive或Spark這樣的服務中,對惡意查詢進行過濾。

四、架構安全

從安全性來說,認證、授權、加密、密鑰管理、日志審計,是整個架構安全的基石,但把這些技術組合起來,如何部署和在哪里部署就十分重要了。下圖是系統安全層面風險和可考慮的措施。

例如傳輸層保護可以有兩種辦法,一個是SSL這種,但要求你能夠對證書進行管理。還有一種是網絡分隔來保證攻擊者進不來,缺少了內部防護但更容易實現。

而在身份認證和授權上,則可以考慮Apache Ranger 或者Sentry。


Hadoop系統安全的知識點有哪些

而在下圖中則是操作層面風險和措施,每種手段都各有優點,成本也不同。舉例來說,在特權管理這部分,提到了不同的加密方式,在理想化的情形下這當然是最佳選擇,但實際上很多大數據平臺已經運行了一段時間,這個時候要做加密,會影響到上下游的生產,一個不慎就是一個事故。在這個情形下,加密就不是最佳選擇,而應該考慮動態掩碼,字段型標簽或者token化,這會讓項目很容易推進,成本也更低。

Hadoop系統安全的知識點有哪些

在架構層面,對安全團隊來說,要考慮的問題就更多了。哪些方法有效、管理起來成本比較低、能夠獲得業務部門支持。大型互聯網公司里,安全部門提出的方案,是要接受業務challenge的。比如安全部門提出,應該對Hadoop做字段型加密,并且要使用kms一次一密,會被業務部門用刀砍死的。因此,安全總要在現實中做考量,不必拘泥于哪種是最安全的,可以多種方法組合來保障。

例如一些現實選擇,Hadoop的身份驗證,通過應用網關來進行,而IAM對用戶來說是透明的,加密后置。集群高度多租戶,就一定要考慮TLS來保護,也就更迫切的需要細粒度的動態級控制(mask、tokenization等)。

最常見的方法就是下圖這種,類似于護城河。整個集群在內部,嚴格控制訪問,整個基礎設施安全取決于防火墻、認證這些保護措施。優點是簡單,在業務那里不會受到什么挑戰,也容易低成本實現。缺點是,一旦通過認證授權,則一路暢通。


Hadoop系統安全的知識點有哪些

在集群內部安全中:Hadoop內部的功能是公開的,和其他關系型數據庫不一樣,對節點間、集群復制等功能都是透明的,對其保護需要集成很多原生、三方的安全工具,安全性應該是整個集群的一部分架構。工具可能包括:SSL / TLS確保安全通信,Kerberos的節點之間認證,靜態數據存儲安全性,身份和授權等。下圖中標明各種安全措施的位置。


Hadoop系統安全的知識點有哪些

此外,大型互聯網公司的數據來源一般都有無數個,而安全團隊很難知道數據都在哪活動,保護措施是什么,但這些數據都在數據中心的載體上,因此可選擇一些基本保護措施:tokenization、masking和加密。這些措施保證不管數據在哪里使用都能夠一定強度的保護。Tokenization是一個數據令牌,有點像我們在游戲廳的游戲代幣,它不是現金,但是可以用來抓娃娃。在數據保護中,則用數據令牌來代替像是銀行卡號的敏感數據,但數據令牌本身毫無含義,它只能去映射真正的數據。Masking則是對數據做部分遮蓋或替換,比如用一個隨機數來代替身份證號碼,這樣原始數據不會在查詢中出現,但真正的數據還是在表中存儲的。


Hadoop系統安全的知識點有哪些

做這些事情,是因為無論內外部用戶都是不可信的,因為你不知道數據在什么時候就被與合作伙伴或者什么人共享了,動態脫敏的做法可以根據ip、設備類型、時間來進行額外控制。靜態脫敏方法可以完全掩蓋敏感數據,同時保留數據分析的價值。需要根據不同情況做選擇。

與Hadoop兼容、或者為Hadoop設計的安全解決方案數量這些年一直在增加,最大貢獻來自于開源社區,甚至有的企業也會直接貢獻,幫用戶們解決了很大的痛苦。介紹幾個工具:

1、Apache Ranger

Ranger是Hadoop集群的集中安全管理解決方案,包括審計,密鑰管理和細粒度的數據訪問控制??梢约蒆DFS,Hive,YARN,Solr,Kafka等模塊的安全認證機制。關鍵!Ranger是少數能夠提供中央管理視圖的工具,所以你可以在HDFS設置文件和目錄權限,在Hive中設置SQL策略,形成一個整體性的安全控制。

2、HDFS加密

HDFS提供嵌入在Hadoop文件中的“透明”加密,數據在存儲到文件系統時候被透明加密,對應用集群來說代價就比較低了。支持區域、文件、目錄的加密,每個區域可以用不同的密鑰,這樣就可以支持多租戶,也能夠與KMS集成。

3、Apache Knox

可以把Knox視為Hadoop防火墻。更確切地說,它是一個API網關。Knox處理HTTP和RESTful請求,執行身份驗證和策略控制。結合網絡分區分域,進一步減少攻擊面。

4、Apache Atlas

開源治理框架,可以管理數據血緣關系、數據字典、數據分類等一系列元數據的核心能力。簡單的說,實現數據發現和訪問控制。不過Atlas也才剛剛發展起來,成熟性可能是個問題。

5、Apache Ambari

管理Hadoop集群的工具,可以把配置同步到整個集群,貌似國內用的不多。當然你也可以自己寫腳本,腳本可以提供自定義的功能。但是對于中小型公司來說,Ambari能快速啟動運行對集群的一致性管理。

6、監控

監控有兩個部分,實時分析和攔截。Hive,PIQL,Impala,Spark 模塊提供的是SQL或偽SQL語法,這就可以利用前面提到的tokenization、masking來進行保護?;蛘吒毩6鹊氖跈?,來改變替換查詢結果。以數據的監控視角,會比應用的監控視角得到更多的信息。

五、建議

考慮Hadoop集群的安全方案,先給幾個原則:

1、不能損害集群的功能

2、架構一致,不能和Hadoop架構沖突

3、能夠解決安全的威脅

為什么要這樣說,因為市面上太多魚龍混雜的公司,號稱提供大數據解決方案,他們自己都還在用mysql做產品。再者,Hadoop整個生態都還年輕,并不是所有工具都是成熟的。

在技術上,建議考慮如下這些部分,又或者我認為,這是一個Hadoop集群的基線安全:

1、Kerberos進行節點認證

已經這么做的公司越來越多了,而且集成Kerberos現在也比以前簡單多了。Kerberos認證在節點安全上是最有效的安全控制手段之一,而且本身就是內置在Hadoop基礎架構中的。建議使用。

2、文件層加密

簡單的說,是保護靜止的數據,可以防止管理員、惡意用戶、租戶的非授權訪問,當然也能保證硬盤被盜后的安全。而且,很多地方已經開始要求數據必須加密存儲了,也需要考慮合規。文件層加密能夠保證一致性,跨越操作系統、平臺、存儲介質,也能在集群增加的時候無縫擴展,對應用和平臺來說都是透明的。所以加密不是建議,而應該是強制選項。

3、KMS

攻擊者可以拿到密鑰,你的加密就沒有意義了。很多管理員、開發會把密鑰存在硬盤上—我真的掃描過開發和dba的硬盤,所以我知道。所以需要獨立的密鑰管理平臺來分發密鑰和證書。尤其在大規模企業中,多密鑰多租戶的管理就是更現實的問題。

4、Apache Ranger

前面已經介紹了。

5、自動化部署

有的公司用腳本和源代碼控制實現,有的用傳統的補丁管理系統來實現,還有一些就是噩夢管理方法??梢钥紤]配置自動化工具比如Chef和Puppet,從可信鏡像安裝、升級、分發密鑰等。

6、日志和監控

可以利用內置的Hadoop功能創建日志,使用集群本身來存儲事件,還包括像LogStash,Log4J和Kafka來進行數據流管理和搜索。

7、通信加密

SSL / TLS用于實現節點之間、節點和應用之間的安全通信,建議全部加密,雖然這對性能有一點影響,但這個開銷是所有節點共享的,所以壓力并不大。

加密,認證和平臺管理工具大大提高了Hadoop集群安全性,在認證鑒權上的集成,細粒度的訪問控制讓安全工作更容易做一些。Hadoop社區的速度很快,說實話超越了我的期望值。不過坦白說,就我了解的很多國內公司,對于Hadoop的安全還停留在網絡隔離的水平上,然后期望攻擊者無法滲透進來,外硬內軟。在合規監管的要求下,在數據開放生態的大環境下,網絡隔離遠遠不夠。

到此,關于“Hadoop系統安全的知識點有哪些”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女