2008-09-18 69 views
19

我想知道這裏的人是否默認禁用SELinux安裝?如果是的話,你能解釋爲什麼,它是什麼樣的系統等等?你禁用SELinux嗎?

我想獲得儘可能多的意見。

+0

這應該被遷移到unix.stackoverflow.com或至少超級用戶它是有道理的。然後打開討論。 – 2012-01-27 00:04:44

回答

0

我沒有很多在這裏貢獻,但由於其沒有得到答覆,我想我會扔我兩分錢英寸

就個人而言,我禁用它dev的箱子,當我處理不重要的事情。當我正在處理任何生產,或者需要更好的安全性時,我會保留它並/或花時間調整它以處理我需要的事情。

天氣還是不是你使用它真的歸結於你的需求,但它是有原因的,所以考慮使用它,而不是總是關閉它。

2

SELinux需要用戶注意和手動權限授予(哦,好吧)你沒有權限的東西。許多人發現它阻礙了它並關閉它。

在最近的版本中,SELinux更加用戶友好,甚至還有關於刪除關閉或隱藏它的可能性的討論,所以只有知識豐富的用戶纔會知道如何做到這一點 - 並且假定用戶是精確的那些瞭解後果的人。

在SELinux中,存在一個雞和雞蛋的問題:爲了始終擁有它,您作爲用戶需要向開發人員報告問題,以便他們改進它。但用戶不希望在改進之前使用它,如果沒有多少用戶使用它,它不會得到改進。

因此,默認情況下它保持開啓狀態,希望大多數人能夠使用它足夠長的時間,以便在關閉之前至少報告一些問題。

最後,這是您的呼籲:您是否尋找短期修復或軟件的長期改進,這將導致有一天無需提出這樣的問題。

13

三年或四年前,當確定的政策存在許多缺陷時,我制定了政策,但是我沒有時間學習。當然,這不在關鍵的機器上。

當今所有的工作都是爲了發佈帶有明智策略的發行版,而存在的toolstutorials可幫助您創建,修復和定義策略,因此無法將其禁用。

+1

唷!我不孤獨! – 2010-05-26 03:01:42

+1

我與你,夥計! – Gabe 2013-12-08 13:54:20

2

我聽說它越來越好,但我仍然禁用它。對於服務器來說,除非你是一家ISP或想要在多個本地用戶上實施細粒度訪問級別控制的大型公司,否則這沒有任何意義。

在Web服務器上使用它,我有許多問題與Apache權限。我經常要運行,

chcon -R -h -t httpd_sys_content_t /var/www/html 

當添加新文件時更新ACL。我相信現在已經解決了這個問題,但是,對於在標準網站部署中實現它所獲得的有限回報,SELinux仍然是一個很大的麻煩。

+5

有限的獎勵?在面臨網站的互聯網?你住在哪個世界? – 2008-09-19 09:36:01

+3

我同意「有限的獎勵?」題。由於httpd使用的軟件包中存在安全漏洞,selinux保存了我的Web服務器免遭黑客攻擊,其中selinux阻止漏洞利用。 – Eddie 2009-02-23 20:54:43

1

我不禁用它,但有一些問題。

某些應用程序不適用於它。

例如,我相信我能smartd,試圖讓我的 RAID磁盤的磁道S.M.A.R.T.狀態,但selinux會迷惑 新的/dev/sda*節點在啓動時創建(我認爲這就是問題所在)

你必須下載源規則瞭解事情。

只需檢查/var/log/messages「avc denied」消息,並且您的 可以解碼被拒絕的內容。

谷歌「selinux常見問題」,你會發現一個fedora selinux常見問題,將 告訴你如何解決這些問題。

7

我在一家公司去年我們在那裏設置它在CentOS 5.x的系統上啓用「目標」的政策執行。它不會干擾我們開發人員開發的任何Web應用程序代碼,因爲Apache處於默認策略中。它確實對從非Red Hat(或CentOS)軟件包安裝的軟件造成了一些挑戰,但我們通過配置管理工具Puppet設法解決了這個問題。

我們使用了Puppet的模板功能來生成我們的策略。參見SELinux Enhancements for Puppet,標題爲「未來的東西」,項目「政策生成」。

以下是我們實施該方法的一些基本步驟。除了audit2allow之外,這是全自動的。

產生一些服務命名爲$ {name}的SELinux的模板文件。

sudo audit2allow -m "${name}" -i /var/log/audit/audit.log > ${name}.te 

創建一個腳本,/etc/selinux/local/${name}-setup.sh

SOURCE=/etc/selinux/local 
BUILD=/etc/selinux/local 

/usr/bin/checkmodule -M -m -o ${BUILD}/${name}.mod ${SOURCE}/${name}.te 
/usr/bin/semodule_package -o ${BUILD}/${name}.pp -m ${BUILD}/${name}.mod 
/usr/sbin/semodule -i ${BUILD}/${name}.pp 

/bin/rm ${BUILD}/${name}.mod ${BUILD}/${name}.pp 

也就是說,很多人都是最好只禁用SELinux和通過其他普遍接受的共識,基於最佳實踐強化他們的系統,如The Center for Internet Security's Benchmarks(注意他們推薦了SELinux :-))。

-1

在紅色的帽子,您可以編輯/etc/sysconfig/selinux,並設置SELINIX=disabled

我認爲所有版本的Linux下,你可以在lilo.conf中或grub.conf中添加selinux=0 noselinux到引導線。

+0

你並沒有真正回答這個問題。 – Saustrup 2016-04-08 12:46:49

5

我公司製作CMS /集成平臺產品。我們的許多客戶都有傳統的第三方系統,這些系統中仍然有重要的操作數據,並且大多數人都希望繼續使用這些系統,因爲他們只是在工作。因此,我們通過多種手段來鎖定我們的系統,以便將數據發佈出去或發佈報告等。在每臺服務器上運行大量客戶端特定的東西,使得SELinux的配置變得困難,並且相應地也是一項昂貴的任務。

許多客戶最初希望在安全的最佳,但是當他們聽到的成本估計爲我們的集成解決方案中,在「SELinux的殘疾人」往往出現在項目計劃非常快。

這是一個恥辱,因爲縱深防禦是一個好主意。儘管如此,SELinux從不需要需要,而這似乎是它的垮臺。當客戶詢問'所以你可以在沒有SELinux的情況下安全嗎?',我們應該回答什麼? '呃...我們不確定'?

我們可以而且我們會的,但是當地獄凍結了,並且發現了一些新的漏洞,並且更新不及時出現,並且您的系統不夠成爲地面零... SELinux只是可能救你的屁股。

但這是一個艱難的銷售。

+0

你的意思是說,emacs C-m M-c M-butterfly的目標遠程機器的硬盤和本地硬盤一樣好? – Joshua 2010-05-26 03:02:15

2

不幸的是,我大部分時間都關閉SELinux,因爲大量的第三方應用程序(如Oracle)在運行SELinux的平臺上運行並不能很好地運行SELinux和/或不受支持。

需要注意的是Red Hat的自己的衛星產品需要您關閉SELinux的太多,這 - 同樣,遺憾的是 - 說了很多關於人有上運行SELinux的複雜應用困難啓用平臺。

使用技巧,可能會或可能不會對你有用:SELinux的可以打開和關閉在運行時通過使用setenforce(使用getenforce檢查當前狀態)被打開。在chcon很麻煩的情況下,restorecon可能會有所幫助,但是ymmv。

0

我從未禁用selinux,我的承包商必須使用它。而且,如果/某些守護進程(帶有OSS許可證btw)沒有安全策略,則必須寫一個(好的)守護進程。這並不是因爲我相信selinux在Linux上是一個無懈可擊的MAC - 無用的例子 - 但是因爲它無論如何都會增加操作系統的安全性。對於Web應用程序,OSS安全性更好的解決方案是mod_security:所以我使用兩者。儘管近幾年來情況有了很大的改善,但selinux的問題大部分都是少量的或者可理解的文件。

1

是的。這是腦死亡。它可以引入幾乎不可能診斷的標準守護進程的破壞。它也可以關上一扇門,但是打開一扇窗戶。也就是說,由於某些原因,新鮮的CentOS安裝它會阻止從「/etc/init.d/smb」開始的smbd。但是,它在調用「sh /etc/init.d/smb」或「smbd -D」或者將init.d/smb文件移動到另一個目錄時不會阻止它啓動,只需從其中啓動smbd就可以了精細。

所以,無論它認爲自己在做什麼,以確保我們的系統 - 通過打破他們 - 它甚至沒有做一致。諮詢一些嚴重的CentOS大師,他們也不瞭解其行爲的不一致性。它旨在讓你感覺安全。但它是安全的門面。它可以替代你做系統安全鎖定的真正工作。

-1

如果在默認情況下,我會保持開啓狀態,直到它破壞某些東西然後關閉它。

我個人認爲這是不提供任何保障,我不會去管它。

0

作爲開發機器的CENTOS盒子已經開啓了,我關掉了它。它正在阻止我在測試我正在開發的Web應用程序時嘗試做的一些事情。這個系統當然是在防火牆後面的,它完全阻擋了我們局域網之外的訪問,並且有很多其他的安全措施,所以即使在SELinux關閉的情況下,我仍然感到相當安全。

3

我曾經爲一家大型計算機制造商在RedHat Linux上3級支持(以及其他兩種口味)的工作,公司的服務器上運行。在絕大多數情況下,我們關閉了SELinux。我的感覺是,如果你真的需要SeLinux,你知道你需要它,並且可以具體說明你爲什麼需要它。當你不需要它,或者不能清楚地表達原因,並且默認啓用時,你很快意識到這是後端的痛苦。跟着你的直覺走。

1

我把它關掉所有我的cPanel盒,因爲的cPanel不會與它上運行。