掃二維碼與項目經(jīng)理溝通
我們在微信上24小時期待你的聲音
解答本文疑問/技術咨詢/運營咨詢/技術建議/互聯(lián)網(wǎng)交流
semanage命令 是用來查詢與修改SELinux默認目錄的安全上下文。SELinux的策略與規(guī)則管理相關命令:seinfo命令、sesearch命令、getsebool命令、setsebool命令、semanage命令,下面為大家分享一下使用semanage管理SELinux安全策略具體方法。

創(chuàng)新互聯(lián)建站專業(yè)為企業(yè)提供平原網(wǎng)站建設、平原做網(wǎng)站、平原網(wǎng)站設計、平原網(wǎng)站制作等企業(yè)網(wǎng)站建設、網(wǎng)頁設計與制作、平原企業(yè)網(wǎng)站模板建站服務,10余年平原做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡服務。
Centos7.7操作系統(tǒng)
Selinux已經(jīng)開啟 開啟方式:
[root@localhost ~]# sed -i '/^SELINUX/s/disabled/enforcing/g' /etc/selinux/config
# 然后重啟一下操作系統(tǒng)
[root@localhost ~]# reboot
# 重啟完成之后檢查一下是否是enforcing模式
[root@localhost ~]# getenforce
Enforcing
使用semanage port命令列出所有端口
[root@localhost ~]# semanage port -l
SELinux Port Type Proto Port Number
afs3_callback_port_t tcp 7001
afs3_callback_port_t udp 7001
afs_bos_port_t udp 7007
afs_fs_port_t tcp 2040
afs_fs_port_t udp 7000, 7005
afs_ka_port_t udp 7004
afs_pt_port_t tcp 7002
afs_pt_port_t udp 7002
afs_vl_port_t udp 7003
agentx_port_t tcp 705
agentx_port_t udp 705
amanda_port_t tcp 10080-10083
amanda_port_t udp 10080-10082
…
…
列出指定的端口類型的端口
[root@localhost ~]# semanage port -l|grep -w http_port_t
http_port_t tcp 80, 81, 443, 488, 8008, 8009, 8443, 9000
通過查詢端口號來列出端口類型
[root@localhost ~]# semanage port -l|grep -w 53
dns_port_t tcp 53
dns_port_t udp 53
[root@localhost ~]# semanage port -l|grep -w 20
ftp_data_port_t tcp 20
[root@localhost ~]# semanage port -l|grep -w 21
ftp_port_t tcp 21, 989, 990
如何使用semanage管理SELinux安全策略如何使用semanage管理SELinux安全策略
通過下面的命令為http添加新端口
[root@localhost ~]#
[root@localhost ~]# semanage port -a -t http_port_t -p tcp 8888
[root@localhost ~]#
# 查看新添加的端口
[root@localhost ~]# semanage port -l|grep -w 8888
http_port_t tcp 8888, 80, 81, 443, 488, 8008, 8009, 8443, 9000
# 也可以使用-C參數(shù)查看自定義的端口號
[root@localhost ~]# semanage port -lC
SELinux Port Type Proto Port Number
http_port_t tcp 8888
添加一個范圍的端口
[root@localhost ~]# semanage port -a -t http_port_t -p tcp 11180-11188
[root@localhost ~]#
[root@localhost ~]# semanage port -lC
SELinux Port Type Proto Port Number
http_port_t tcp 8888, 11180-11188
如何使用semanage管理SELinux安全策略如何使用semanage管理SELinux安全策略
[root@localhost ~]# semanage port -d -t http_port_t -p tcp 8888
[root@localhost ~]#
[root@localhost ~]# semanage port -d -t http_port_t -p tcp 11180-11188
[root@localhost ~]#
# 查看一下,已經(jīng)沒有自定義的端口了
[root@localhost ~]# semanage port -lC
如何使用semanage管理SELinux安全策略如何使用semanage管理SELinux安全策略
為samba共享目錄添加安全上下文
# 沒添加安全上下文之前是default_t
[root@localhost ~]# ll -dZ /share/
drwxr-xr-x. root root unconfined_u:object_r:default_t:s0 /share/
[root@localhost ~]# semanage fcontext -a -t samba_share_t '/share(/.*)?'
# 恢復文件默認的安全上下文
[root@localhost ~]# restorecon -Rv /share
restorecon reset /share context unconfined_u:object_r:default_t:s0->unconfined_u:object_r:samba_share_t:s0
# 查看一下文件夾已經(jīng)變成samba_share_t了
[root@localhost ~]# ll -dZ /share
drwxr-xr-x. root root unconfined_u:object_r:samba_share_t:s0 /share
為nfs共享目錄添加讀寫
[root@localhost ~]# ll -dZ /nfsshare/
drwxr-xr-x. root root unconfined_u:object_r:default_t:s0 /nfsshare/
[root@localhost ~]#
[root@localhost ~]# semanage fcontext -a -t public_content_rw_t '/nfsshare(/.*)?'
[root@localhost ~]# restorecon -Rv /nfsshare
[root@localhost ~]# ll -dZ /nfsshare/
drwxr-xr-x. root root unconfined_u:object_r:public_content_rw_t:s0 /nfsshare/
如何使用semanage管理SELinux安全策略如何使用semanage管理SELinux安全策略
本文講述了添加、修改和刪除端口,修改安全上下文。如果你的系統(tǒng)有安裝桌面,可以安裝圖形化管理軟件 policycoreutils-gui來進行管理。
[root@localhost ~]# yum -y install policycoreutils-gui
# system-config-selinux執(zhí)行該命令打開圖形化管理界面
[root@localhost ~]# system-config-selinux
如何使用semanage管理SELinux安全策略如何使用semanage管理SELinux安全策略

我們在微信上24小時期待你的聲音
解答本文疑問/技術咨詢/運營咨詢/技術建議/互聯(lián)網(wǎng)交流