十年的演變:Linux安全的過去與現(xiàn)在
原創(chuàng)【51CTO 8月16日外電頭條】Linux本身并不是一個安全的操作系統(tǒng)。這是因為Linux是在UNIX的結(jié)構(gòu)設(shè)計基礎(chǔ)之上進行開發(fā)的,而UNIX的開發(fā)者對于安全問題并沒有十分關(guān)心——畢竟那是在1969年。
“首先要面對的是事實是,UNIX的開發(fā)者并沒有考慮安全問題。單單這一點就會引發(fā)大量的漏洞,”Dennis Ritchie在1979年他《關(guān)于UNIX的安全》的論文中寫道。
上周二在波士頓的LinuxCon上,紅帽公司Linux內(nèi)核開發(fā)者的James Morris談?wù)摿薒inux在過去十年里是如何演變來克服自身安全模型的不足。
Morris指出,問題是在UNIX誕生的60年代末,每個人都以為我們現(xiàn)在能擁有會飛的汽車,但事實是我們有了Facebook。我們今天用計算機在做的事情可能是40多年前人們的夢想,盡管我們?nèi)耘f依賴于數(shù)十年前設(shè)計的操作系統(tǒng)。
這就是Linux開發(fā)人員所面臨的挑戰(zhàn)。Morris說,為了確保Linux的安全,軟件工程師必須在Linux內(nèi)核周圍插入安全組件。Linux最早的安全機制是UNIX DAC,后來陸續(xù)出現(xiàn)了POSIX、訪問控制列表、私有和PID命名空間、加密、Linux安全模塊、SELinux、Smack、TOMOYO、AppArmor,類似的名單仍在繼續(xù)。
但是擁有這么多選擇,用戶們反而會覺得茫然。這有點像進入了一個“酷圣石”冰激凌店,然后你會被一長串配方和冰激凌口味弄得無所適從。不如老老實實地按照自己預(yù)定的食譜來選,或者更簡單,直接從附近的雜貨店挑一品脫櫻桃加西亞。
眼花繚亂的Linux安全選項
Linux無數(shù)的安全選項不僅阻礙了安全技術(shù)的發(fā)展,同時也為建立安全的Linux服務(wù)器和工作站制造了困難。例如,一個用戶或者系統(tǒng)管理員不得不去決定是否要開啟Smack、TOMOYO、SELinux還是AppArmor。做這樣的決定并不像想象的那么簡單,因為這些技術(shù)中的很多都解決類似的問題,只是它們的處理方式略有不同。比如說,Novell為它的SUSE Linux企業(yè)服務(wù)器開發(fā)了AppArmor,它是SELinux的競爭對手。Novell在其AppArmor網(wǎng)站上發(fā)布了兩種技術(shù)的比較。結(jié)果是,AppArmor擁有更簡單的配置文件格式(51CTO編輯注:很多用戶一直覺得SELinux的安全級別設(shè)置十分麻煩,甚至也有報道說SELinux會導(dǎo)致安全問題,因此有很多教程都是教人如何關(guān)閉SELinux的)。
我們還沒有討論關(guān)于網(wǎng)絡(luò)安全、存儲安全和惡意軟件預(yù)防。這涉及到為數(shù)據(jù)包過濾設(shè)置防火墻。至于阻止惡意軟件,目前有幾個處于不同發(fā)展階段的項目,比如fsnotify、TALPA 和DazukoFS。
Morris還說,最大的問題是“讓人們認識到安全措施是必要的。”
“這不像系安全帶。”Morris說,“我們不能讓法律來制約人們設(shè)置安全的Linux服務(wù)器和工作站。我們必須說服人們,這樣做對他們有利。”
Linux安全機制的透明化
因此,我們需要讓安全選項盡可能的透明化,而不是讓絕大多數(shù)Linux用戶苦苦掙扎于無數(shù)的安全選項中,Morris說。
透明化是AppArmor的既定目標之一。SUSE的Tony Jones說,“AppArmor的目的是對于應(yīng)用軟件實現(xiàn)高度透明:如果你在一個工作系統(tǒng)中添加AppArmor,你需要開發(fā)AppArmor配置文件,但是不用改變你的應(yīng)用程序。如果將AppArmor從一個正在運行的系統(tǒng)中移除,系統(tǒng)仍將完全像之前一樣繼續(xù)運行,只是沒有AppArmor安全保護而已。”
雖然SELinux的配置文件比AppArmor的更麻煩,但是透明化也是它的目標之一。紅帽稱,“SELinux插入Linux安全模塊(LSM)能夠為多個普通網(wǎng)絡(luò)面應(yīng)用程序處理網(wǎng)絡(luò)核心層訪問請求。對于這些應(yīng)用程序,基于SELinux的安全體系不需要進行額外的管理。此外,對用戶和應(yīng)用程序而言,它是完全透明的。”
提高透明度的好處是它可以減少人為的安全威脅。人們就像水一樣,喜歡尋找沒有阻礙的道路。如果系統(tǒng)管理員需要通過編寫繁瑣的配置文件和頁面來設(shè)置一個安全的系統(tǒng),那么他們中的很多人可能很輕易地就氣餒了。
“安全問題歸根結(jié)底是人的問題,”安全專家Bruce Schneier說。
原文:http://www.esecurityplanet.com/features/article.php/3898261/Linux-Security-Then-and-Now.htm
本文作者Keith Vance是一名軟件工程師和一名IT記者,他從1997年開始從事Web應(yīng)用開發(fā)的工作。
【編輯推薦】