17.Linux :selinux

Linux : selinux

DAC vs MAC 对比
模型控制方式决策依据安全强度
DAC自主访问控制文件所有者的权限设置
MAC强制访问控制系统级安全策略极高

SELinux的核心原理是基于 强制访问控制(MAC) 模型,通过为系统资源打上安全标签并制定精细策略,实现远超传统 Linux 权限控制的保护机制

安全策略

策略类型适用场景特点
targeted默认策略(推荐)仅保护关键服务(如 httpd)
mls军事/政府级安全极端严格,配置复杂
minimum最小化保护(容器环境)仅基础进程保护

模式

模式状态推荐场景切换命令
Enforcing强制模式生产环境(默认)setenforce 1
Permissive宽容模式故障排查(仅记录不拦截)setenforce 0
Disabled禁用模式彻底禁用(需重启生效)修改 /etc/selinux/config

getenforce 查看selinux当前状态
setenforce 更改selinux当前状态(暂时更改)

在这里插入图片描述

查看

[root@xieyuhui ~]# getenforce 
Enforcing

更改

[root@xieyuhui ~]# setenforce 0
[root@xieyuhui ~]# getenforce 
Permissive

setenforce 0表示更改为permissive,1表示为更改enforcing,永久更改需要进入配置文件/etc/sysconfig/selinux,修改下次开机的selinux状态

上下文

查看文件的context值:
ll -Z /abc/aa

查看目录的context值:
[root@xieyuhui ~]# ll -ldZ /kili
drwxr-xr-x. root root unconfined_u:object_r:default_t:s0 /kili

安全上下文三部分组成:用户u、角色r和类型识别符t
chcon -t tmp_t redhat 更改redhat的context值为tmp_t

# 1. 临时修改文件上下文
[root@xieyuhui ~]# chcon -t tmp_t /kili
[root@xieyuhui ~]# ll -ldZ /kili
drwxr-xr-x. root root unconfined_u:object_r:tmp_t:s0   /kili

# 2. 永久修改目录上下文(含子文件)
semanage fcontext -a -t httpd_sys_content_t "/www(/.*)?"(目录及子目录)
restorecon -Rv /www

# 3. 重置错误上下文
touch /.autorelabel  # 重启后重打标签
布尔值策略管理
# 查看所有布尔值开关
getsebool -a

[root@xieyuhui ~]# getsebool -a
abrt_anon_write --> off
abrt_handle_event --> off
abrt_upload_watch_anon_write --> on
antivirus_can_scan_system --> off
antivirus_use_jit --> off
auditadm_exec_content --> on
authlogin_nsswitch_use_ldap --> off
authlogin_radius --> off
authlogin_yubikey --> off
awstats_purge_apache_log_files --> off

# 查询特定服务开关
getsebool -a | grep ftp

[root@xieyuhui ~]# getsebool -a | grep ftp
ftpd_anon_write --> off
ftpd_connect_all_unreserved --> off
ftpd_connect_db --> off
ftpd_full_access --> off
ftpd_use_cifs --> off
ftpd_use_fusefs --> off
ftpd_use_nfs --> off
ftpd_use_passive_mode --> off
httpd_can_connect_ftp --> off
httpd_enable_ftp_server --> off
tftp_anon_write --> off
tftp_home_dir --> off

# 临时启用
[root@xieyuhui ~]# setsebool cron_can_relabel on

# 永久启用
[root@xieyuhui ~]# setsebool cron_can_relabel on -P
端口标记管理
# 添加 HTTP 端口标记
semanage port -a -t http_port_t -p tcp 8080

[root@xieyuhui ~]# semanage port -l | grep http
http_cache_port_t              tcp      8080, 8118, 8123, 10001-10010
http_cache_port_t              udp      3130
http_port_t                    tcp      80, 81, 443, 488, 8008, 8009, 8443, 9000
pegasus_http_port_t            tcp      5988
pegasus_https_port_t           tcp      5989

# 查询端口标签
[root@xieyuhui ~]# semanage port -l | grep 8080
http_cache_port_t              tcp      8080, 8118, 8123, 10001-10010

# 删除旧端口标记
semanage port -d -t http_port_t -p tcp 80

# 查看所有端口标记
semanage port -l
            tcp      8080, 8118, 8123, 10001-10010

# 删除旧端口标记
semanage port -d -t http_port_t -p tcp 80

# 查看所有端口标记
semanage port -l
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值