linux中没有semanagea安装包,如何使用semanage管理SELinux安全策略
导读
Semanage是用于配置SE
策略某些元素而无需修改或重新编译策略源的工具。 这包括将Linux用户名映射到SELinux用户身份以及对象(如网络端口,接口和主机)的安全上下文映射。
简介
Semanage是用于配置SELinux策略某些元素而无需修改或重新编译策略源的工具。 这包括将Linux用户名映射到SELinux用户身份以及对象(如网络端口,接口和主机)的安全上下文映射。
实验环境
7.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
创建、添加、修改端口
通过下面的命令为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
删除端口
[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
修改安全上下文
为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/
总结
本文讲述了添加、修改和删除端口,修改安全上下文。如果你的系统有安装桌面,可以安装图形化管理软件 policycoreutils-gui来进行管理。
[root@localhost ~]# yum -y install policycoreutils-gui
# system-config-selinux执行该命令打开图形化管理界面
[root@localhost ~]# system-config-selinux
本文原创地址:
linux中没有semanagea安装包,如何使用semanage管理SELinux安全策略相关推荐
- linux中没有semanagea安装包,SELinux:如何撤消/恢复semanage permissive -a httpd_t?
我暂时跑了这个: semanage permissive -a httpd_t 调试我遇到的域进程类型问题,但现在我似乎无法撤消它. 我尝试将"许可"与"强制执行&quo ...
- linux/ubuntu中制作deb安装包
linux/ubuntu中制作deb安装包 由于要制作一个在arm平台上运行的xorg-server-1.12.4版本的安装包,所以需要学习如何制作deb安装包.这里以一个非常小的工程为例,记录制作的 ...
- windows10 中 python3 离线 安装包,没有 网络 的 情况下 安装 whl包
windows10中python3离线 安装包,没有 网络 的 情况下 安装 包 下载whl文件 cd python.exe文件路径 pip download 包名 举例 whl 文件 复制到 没有 ...
- 安卓开发中,release安装包安装后,打开app后再按home键,再次点击程序图标app再次重新启动的解决办法
安卓开发中,release安装包安装后,打开app后再按home键,再次点击程序图标app再次重新启动的解决办法 在开发中我们一般都是直接AS上的安装(Run)按钮,直接安装到真机或模拟器上进行测试, ...
- Linux上下载chronyd安装包,如何在Linux中安装和使用Chrony时间同步
原标题:如何在Linux中安装和使用Chrony时间同步 来自:Linux迷 https://www.linuxmi.com/ Chrony是网络时间协议(NTP)的灵活实现.它用于同步来自不同NTP ...
- Ubuntu中虚拟环境pip安装包超时问题
做爬虫的时使用pip安装一些爬虫框架经常容易报错或者国内镜像资源不足,或者做量化使用开源的vn.py,但只有py27版本的,解决这些问题一个所以这个时候Anaconda中的conda管理工具就非常的必 ...
- R软件中 文本分析安装包 Rjava 和 Rwordseg 傻瓜式安装方法四部曲
这两天,由于要做一个文本分析的内容,所以搜索了一天R语言中的可以做文本分析的加载包,但是在安装包的过程,真是被虐千百遍,总是安装不成功.特此专门写一篇博文,把整个心塞史畅快的释放一下. ------- ...
- dingding for Ubuntu: Ubuntu中钉钉安装包资源及安装
1.钉钉安装包(zip压缩) dingding for Ubuntu 钉钉 Ubuntu(linux)安装包资源: https://pan.baidu.com/s/17zHNAlA-3Itoxzll4 ...
- linux禅道一键安装包
linux一键安装包内置了XXD.apache, php, mysql这些应用程序,不需要再单独安装部署. 从7.3版本开始,linux一键安装包分为32位和64位两个包,请大家根据操作系统的情况下载 ...
最新文章
- 机器学习算法_五分钟了解机器学习十大算法
- 抖音之后,互联网失去创造力
- 【Alpha】事后分析
- Java 虚拟机部分面试题
- keras中的mini-batch gradient descent (转)
- 【UI/UX】Web应用GUI设计
- Ceres配置(vs2013+Win10)
- PyQt5教程(二)——PyQt5的安装(详细)
- vfp和python比较_vfp-和vfp相关的内容-阿里云开发者社区
- 江苏专转本计算机大类(计算机理论基础A)知识点
- Linux 操作系统镜像下载
- SSM+汽车销售平台 毕业设计-附源码171619
- 2020-10-07
- Android iOS防录屏截屏
- lavavel 环境配置 summer版
- 泰国证券交易所预计将在本月批准5个ICO项目
- java的关键业绩指标_SpreadJS前端开发案例:如何利用Javasrcipt创建财务关键业绩指标表...
- 堆和栈的理解 堆和栈的区别 什么是堆和栈 堆是什么 栈是什么
- flowable6.0-用户任务说明
- 人物专访 | 杜军:处在新基建时代,坚定做数字经济大厦奠基人
热门文章
- python-上传文件的几种方式
- Python 下JSON的两种编解码方式实例解析
- java synchronized关键字_Java:手把手教你全面学习神秘的Synchronized关键字
- 中新赛克数据可视化_中新赛克——能否构建更安全的世界
- 计算机英语四六级对调剂有影响吗,英语四六级对考研有什么影响?不过会被歧视吗?...
- 【中级软考】软件质量模型的六大特性27个子特性(软件质量特性:功能性、可靠性、易用性、效率性、软件维护性、软件可移植性)
- 【中级软考】专利权的保护期限可以延长吗?商标使用权呢?
- linux——脚本的练习示例二
- NIO源码解析:FileChannel基本使用
- Java进阶:CountDownLatch倒计时