使用semanage管理SELinux安全策略具体方法

semanage命令 是用来查询与修改SELinux默认目录的安全上下文。SELinux的策略与规则管理相关命令:seinfo命令、sesearch命令、getsebool命令、setsebool命令、semanage命令,下面为大家分享一下使用semanage管理SELinux安全策略具体方法。

实验环境

Centos7.7操作系统

Selinux已经开启 开启方式:

[root@localhost ~]# sed -i '/^SELINUX/s/disabled/enforcing/g' /etc/selinux/config# 然后重启一下操作系统
[root@localhost ~]# reboot# 重启完成之后检查一下是否是enforcing模式
[root@localhost ~]# getenforce
Enforcing

常用参数

  • port: 管理定义的网络端口类型
  • fcontext: 管理定义的文件上下文
  • -l: 列出所有记录
  • -a: 添加记录
  • -m: 修改记录
  • -d: 删除记录
  • -t: 添加的类型
  • -p: 指定添加的端口是tcp或udp协议的,port子命令下使用
  • -e: 目标路径参考原路径的上下文类型,fcontext子命令下使用

列出所有定义的端口

使用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参数查看自定义的端口号
[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 ~]## 查看一下,已经没有自定义的端口了
[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
# 查看一下文件夹已经变成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安全策略

总结

本文讲述了添加、修改和删除端口,修改安全上下文。如果你的系统有安装桌面,可以安装图形化管理软件 policycoreutils-gui来进行管理。

[root@localhost ~]# yum -y install policycoreutils-gui# system-config-selinux执行该命令打开图形化管理界面
[root@localhost ~]# system-config-selinux

如何使用semanage管理SELinux安全策略如何使用semanage管理SELinux安全策略

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/223213.html<

(0)
运维的头像运维
上一篇2025-04-15 20:51
下一篇 2025-04-15 20:52

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注