經常使用命令以下:html
sestatuslinux |
查詢系統的selinux目 前的狀態tcp |
selinuxenabledide |
查詢系統的selinux支 援是否有啓用工具 |
setenforcespa |
設定selinux運 做狀態rest |
getseboolorm |
列出全部selinux bool數值清單列表與內容htm |
setsebool ci |
設定selinux bool數值內容 |
chcon |
變更檔案目錄security context |
restorecon |
恢復檔案目錄的預設的security context |
fixfiles |
修正檔案目錄的預設的security context |
semanage |
SELiux policy管理程式 |
secon |
檢視行程、檔案等等項目的SELinux context |
audit2why |
檢視SELinux audit訊息內容 |
sealert |
SELinux 訊息診斷用戶端程式 |
下面列出幾個經常使用的:
一、sestatus工具
查詢系統的selinux 目前的狀態
例如:root@monitor:~# sestatus
SELinux status: enabled
SELinuxfs mount: /selinux
Current mode: permissive
Mode from config file: permissive
Policy version: 21
Policy from config file: targeted
二、selinuxenabled工具
檢查系統selinux是否開啓,是經過返回值進行判斷selinux是否已經啓動,0:表示已經啓動selinux;1:表示已經關閉selinux
例如:selinuxenabled ; echo?,返回的結果爲:1
三、setenforce工具
功能:設定切換selinux的運行狀態(0或者1),前提是開啓了selinux,同時這種切換隻對當前有效,若是從新啓動的話,就沒有效了(注意:若是關閉了selinux,那麼就必須配置/etc/selinux/config文件)
語法:setenforce [ Enforcing | Permissive | 1 | 0 ]
說明以下:
enforcing 或者1,表示開啓強制模式
permissive 或者0,表示開啓警告可是無限制模式
例如:下面這個例子
root@monitor:~# sestatus | grep -i mod
Current mode: permissive
Mode from config file: permissive
root@monitor:~# setenforce 1
root@monitor:~# sestatus | grep -i mod
Current mode: enforcing
Mode from config file: permissive
四、getsebool與setsebool工具
說明:SELinux規範了許多boolean數值清單檔案,提供開啓或關閉功能存取項目,而這些值都存放在/selinux/booleans/目錄內相關檔案,這些檔案裏的值只有兩種:1(啓用)或 0(關閉)
1)getsebool
說明:列出全部selinux bool數值清單列表與內容
使用方式:getsebool [ -a ]
例如如下範例:
#getsebool ftpd_disable_trans
ftpd_disable_trans --> off
#getsebool -a
NetworkManager_disable_trans --> off
allow_cvs_read_shadow --> off
allow_daemons_dump_core --> on
allow_daemons_use_tty --> off
allow_execheap --> off
allow_execmem --> on
allow_execmod --> off
..........
2)setsebool
說明:設定selinux bool數值清單列表與內容
使用方式:setsebool [ -P ] boolean value | bool1=val1 bool2=val2 bool3=val3......
參數配置: -P表示設定該項目永久套用
使用範例:
setsebool ftpd_disable_trans=on ( on 或者 1 )
setsebool -P ftpd_disable_trans=off ( off 或者 0 )
五、chcon
說明:變動檔案目錄的security context
使用方式:
chcon [OPTION]... CONTEXT FILE...
chcon [OPTION]... --reference=RFILE FILE...
參數以下:
-u USER:set user USER in the target security context
-r ROLE:set role ROLE in the target security context
-t TYPE:set type TYPE in the target security context
範例:
chcon -t var_t /etc/vsftpd/vsftpd.conf
chcon --reference=/var/www/html index.html
注意事項:如果變動於目錄上,後續於該目錄內創建的檔案目錄會套用目錄自己type設定
六、restorecon
說明:恢復檔案目錄的預設的security Context
規格來源:/etc/selinux/<POLICY>/contexts/files/目錄內的file_contexts與file_contexts.local
經常使用參數以下:
-r | -R:包含子目錄與其下檔案目錄
-F:恢復使用預設的項目(就算是檔案符合存取規範)
-v:顯示執行過程
使用方式:restorecon [FRrv] [-e excludedir ] pathname... ]
使用範例以下:
restorecon /etc/ntp.conf
restorecon -v /etc/ntp.conf
restorecon -v -F /etc/ntp.conf
手動配置新增恢復規則
1)檔案名稱
/etc/selinux/<POLICYTYPE>/contexts/files/file_contexts.local
2)新增配置範例
/var/ftp(/.*)? system_u:object_r:public_content_t
3)注意
可使用semanage程式來維護會比較方便
七、fixfiles
說明:修正檔案目錄的預設的security Context,依據/etc/selinux/<POLICY>/contexts/files/內相關檔案修正
使用方式:
fixfiles { check | restore|[-F] relabel } [[dir] ... ]
fixfiles -R rpmpackage[,rpmpackage...] { check | restore }
參數:
-R:使用指定的rpm 套件所提供的檔案清單
使用範例:
fixfiles check /etc
fixfiles restore /etc
fixfiles -F relabel /
fixfiles -R setup check
八、audit2why
說明:檢視SELinux audit訊息內容,提供檢視/var/log/audit/audit.log內的記錄資訊說明
使用範例:audit2why < /var/log/audit/audit.log
注意:須要搭配啓動auditd服務程式一塊兒使用
九、sealert
說明:SELinux 訊息診斷用戶端程序
參數以下:
-H, --html_output:使用網頁格式輸出(搭配 -a or -l 使用)
-l, --lookupid ID:檢視指定ID的警示訊息
使用範例:
sealert -l xxxxx-xxxxx-xxxx
sealert -H -l xxxxx-xxxxx-xxxx > output.html
注意:須要搭配setroubleshoot服務一塊兒使用
setroubleshoot服務啓動後,會依據audit服務提供的資訊給予適當問題診斷,而後輸出於/var/log/messages,該檔案內會有相關輸出資訊提供除錯檢視
十、semanage
說明:selinux policy維護工具
使用方式:semanage { login | user | port | interface | fcontext | translation} -l [-n]
使用範例:
semanage login -l
semanage user -l
semanage port -l
semanage port -a -t http_port_t -P tcp 81
semanage fcontext -a -t httpd_sys_Context_t "/home/users/(.+)/public_html(/.*)?「
十一、secon
說明:檢視程式、檔案與使用者等相關SELinux Context
使用方式:
secon [-hVurtscmPRfLp] [CONTEXT]
secon [--file] FILE | [--link] FILE | [--pid] PID
參數:
-u, --user:show the user of the security context
-r, --role:show the role of the security context
-t, --type:show the type of the security context
-f, --file FILE:gets the context from the specified file FILE
-p, --pid PID:gets the context from the specified process PID
使用範例:
secon -u
secon -r
secon -t
secon --file /etc/passwd
secon --pid <pid>