1、安装
在ubuntu14.04上安装
sudo apt-get install policycoreutils
在CentOS7上安装
sudo yum -y install policycoreutils-python
2、semanage命令行参数
$ semanage --help
semanage用于配置SELinux策略的某些元素,而不需要对策略源进行修改或重新编译。
位置参数(子命令),用法 semanage
如查看子命令用法:semanage port -h
{import,export,login,user,port,interface,module,node,fcontext,boolean,permissive,dontaudit}
import 输出当地定制
export 输出当地定制
login 管理linux用户和SELinux受限用户之间的登录映射
user 管理SELinux受限用户(SELinux用户的角色和级别)
port 管理网络端口类型定义
interface 管理网络接口类型定义
module 管理SELinux策略模块
node 管理网络节点类型定义
fcontext 管理文件上下文映射定义
boolean 管理布尔值以选择性地启用功能
permissive 管理流程类型实施模式
dontaudit 在策略中禁用/启用dontaudit规则
3、semanage port -h
$ semanage port -h
usage: semanage port [-h] [-n] [-N] [-s STORE] [ --add -t TYPE -p PROTOCOL -r RANGE ( port_name | port_range ) | --delete -p PROTOCOL ( port_name | port_range ) | --deleteall | --extract | --list -C | --modify -t TYPE -p PROTOCOL -r RANGE ( port_name | port_range ) ]
位置参数:
port port | port_range
可选参数:
-h, --help 显示此帮助消息并退出
-C, --locallist 列出自定义的端口,需要和“–list”一起使用
如:修改ssh的端口号为1024后,可以使用该命令查询到
$ sudo semanage port --list -C
SELinux Port Type Proto Port Number
ssh_port_t tcp 1024
-n, --noheading 不打印标题
和上面的例子作比较:
$ sudo semanage port --list -C -n
ssh_port_t tcp 1024
-N, --noreload 提交后不重新加载策略(未测试)
-S STORE, --store STORE 选择要管理的另一个SELinux策略存储(未测试)
-a, --add 添加端口
如:给ssh添加一个11234端口
sudo semanage port -a -t ssh_port_t -p tcp 11234
-d, --delete 删除端口
如:删除ssh的11234端口
sudo semanage port --d -t ssh_port_t -p tcp 11234
-m, --modify 修改端口对应的类型,注意不是修改端口号,该端口号必须已经添加了
$ sudo semanage port -m -t zope_port_t -p tcp 11234
$ sudo semanage port --list -C
SELinux Port Type Proto Port Number
zope_port_t tcp 11234
-l, --list 列出端口对象类型的记录
$ sudo semanage port -l
SELinux Port Type Proto Port Number
afs3_callback_port_t tcp 7001
afs3_callback_port_t udp 7001
...略
-E, --extract 提取可定制的命令,以便在事务中使用(未测试)
-D, --deleteall 删除所有自定义的端口
sudo semanage port -l -C
SELinux Port Type Proto Port Number
ssh_port_t tcp 11234, 11235
$ sudo semanage port -D
$ sudo semanage port -l -C
(空)
-t TYPE, --type TYPE 指定对象的SELinux类型
-r RANGE, --range RANGE 用于SELinux登录映射的MLS/MCS安全范围(仅适用于MLS/MCS系统)SELinux范围默认为SELinux用户记录范围。SELinux用户的SELinux范围默认为s0。.
-p PROTO, --proto PROTO 指定端口的协议(tcp|udp)或指定节点的internet协议版本(ipv4|ipv6)。