selinux對於埠的限制
setrouble
作為系統級加強型火牆,selinux
開啟後對檔案和程式都會產生影響.
對於檔案而言
當selinux
開啟時,核心會對每個檔案及每個開啟的程式進行標籤載入,標籤內記錄程式和檔案的安全上下文.
對程式功能而言
當selinux
開啟時,會對程式的功能載入開關,並設定此開關的狀態為關閉.
當需要此功能時需要手動開啟功能開關.
這個開關功能叫做sebool
##開啟selinux
vim /etc/selinux/config
selinux=disabled ##此時為關閉狀態
selinux=enforcing ##此時為強制狀態
selinux=permissive ##此時為警告狀態
##檢視selinux狀態
getenforce
##切換selinux狀態
setenforce 0 ##切換到警告
setenforce 1 ##切換到強制
##selinux日誌位置
/var/log/audit/audit/log
permissive
和enforcing
都是開啟狀態,區別在於enforcing
狀態下不符合條件的一定不能被允許並會收到警告資訊;而permissive
狀態儘管會收到警告資訊但仍可以執行相關功能.
在開啟了selinux後,所有的檔案和程式都被打上了標籤,指定安全上下文的程式只能訪問對應安全上下文的檔案.
chcon -t public_content_t /testdir/
使用semanage
命令可以管理安全上下文的設定規則,實現持久的修改安全上下文.
在開啟selinux後,會自動對程式的功能增加開關並設定為關,許多功能即使在配置中開啟也無法使用.需要設定其sebool
屬性為on
才能正常執行.
除了會設定安全上下文,對程式功能設定開關,selinux還會對程式使用的埠進行限制.
如ssh
服務本身執行在22
埠上,如果在開啟selinux強制模式的前提下修改其埠並重啟服務,會發現無法重啟.
在上面的實驗中我們可以看到,在selinux
開啟的情況下.,message
中輸出了相關的警告資訊.顯然,系統並不會自發的輸出相關資訊,一定是有配套軟體來進行這一過程.
setrouble
是系統中用來對selinux
警告資訊進行分析並提供解釋和方法的軟體,通常來說系統中都是預先安裝好的.
##檢視安裝好的setroubleshoot軟體包
rpm -qa |
grep setrouble
在系統中有安裝好的setroubleshoot
軟體包時,如果出現安全上下文等問題,audit
日誌只會輸出警告資訊,而不會告訴你解決方法;message
在提示警告資訊的同時也會出現對應的解決方法提示.
如果清空message
和audit
日誌後解除安裝setroubleshoot
軟體包,則在出現selinux
警告問題時只有audit
日誌中會出現警告資訊,而message
內不會有任何相關資訊出現,因為能夠提供警告和解決資訊的軟體已經被解除安裝了,並不能起到應有的作用.
Linux 核心級加強型火牆
檢視 getenforce 開啟後給每個檔案和程式新增標籤 安全上下文 匹配則可以訪問 檔案是功能標籤 程式是加了波爾開關 修改狀態檔案 狀態 enforcing 強制 拒絕訪問,有警告資訊 permissive 警告 可以訪問,有警告資訊 disabled 關閉 切換 setenforce 0 切...
linux中核心級加強型火牆管理
安全上下文的作用 特定安全上下文的程式只能訪問特定安全上下文的檔案,否則訪問失敗,會被selinux拒絕 selinux的狀態及管理 開啟vim etc selinux config selinux disabled selinux關閉 selinux enforcing selinux開機設定為強...
SELinux 核心級加強型火牆
selinux security enhanced linux 是美國 局 nsa 對於強制訪問控制的實現,是 linux歷史上最傑出的新安全子系統。nsa是在linux社群的幫助下開發了一種訪問控制體系,在這種訪問控制體系的限制下,程序只能訪問那些在他的任務中所需要檔案。selinux特點 1.m...