selinux对超级管理员也有效
安全加强型linux
自主访问体制 :又大变小
user group other
\ | /
file
/ | \
r w x
强制访问体制 最小权限:由小该大
打开SELINUX
sestatus 查看slinux状态
vim/etc/sysconfig/selinux
enforcing - SELinux security policy is enforced.强制限制
4 # permissive - SELinux prints warnings instead of enforcing. 警告但不限制
5 # disabled - SELinux is fully disabled.
SELINUXTYPE=targeted 定义使用的SELINUX 保护大多数的网络服务
1改为 permissive
2.配置
sealert -a /var/log/audit/audit.log 显示所有的selinux报错
布尔直boolean 0关1开
安全上下文
man -k(模糊查询)ftp|grep selinux
ls -Zd /var/ftp 安全上下文
system_u:object_r:public_content_t:s0
身份 角色 类型
设置semanage fcontext -a -t public_content_rw_t "/var/ftp/incoming(/.*)?"
恢复 restorecon -R -v /var/ftp/incoming
setenforce 0关只警告不阻止1开启 警告1警告和阻止
setenforce permissive <===> setenforce 0 0关只警告不阻止
setenforce enforcing <===> setenforce 1 1警告并且阻止
1、开启FTP服务,并用普通系统帐号直接登录FTP服务器,selinux会不允许访问,上传。
如何配置selinux来解决?
思路:
A、看日志
1、tail /var/log/messages ---
sealert -l xxxxxxxxxxxxxxxxxxxxx 看指定ID的警告提示消息
2、sealert -a /var/log/audit/audit.log 看所有的ID的警告消息
3、有一个程序会自动弹出提示(右上角的五角星SelinuxTroubleshooter程序),此程序要想正常的运行,必须ps aux | grep setroubleshootd 进程存在(]# setroubleshootd 执行此命令便可)
B、日志中会提示如何配置selinux,以便开放相应的权限
最好自行查询帮助来解决问题
[root@ mnt]# man ftpd_selinux
[root@ mnt]# man httpd_selinux
[root@ mnt]# man samba_selinux
[root@ mnt]# man nfs_selinux
[root@ mnt]# man -k ftp | grep selinux
ftpd_selinux (8) - Security-Enhanced Linux policy for ftp daemons
[root@ mnt]# man 8 ftpd_selinux
[root@ mnt]# man -k http | grep selinux
httpd_selinux (8) - Security Enhanced Linux Policy for the httpd daemon
setenforce permissive <===> setenforce 0
setenforce enforcing <===> setenforce 1
sestatus
目的:设置匿名用户可以上传下载FTP 192.168.0.28
1、设置selinux为只警告,不阻止状态
setenforce 0
2、开始配置vsftpd
vim /etc/vsftpd/vsftpd.conf
anon_root=/ftp /ftp共享目录
anon_upload_enable=YES //允许下载
anon_mkdir_write_enable=YES //允许上传
anon_other_write_enable=YES //允许其他人上传
---
mkdir -p /ftp/public
chown ftp /ftp/public
chmod u=rwx /ftp/public
---
service vsftpd restart
----
3、客户端匿名访问,确实可以上传,说明 FTP配置文件权限设置正确,/ftp/public目录权限设置正确
4、把selinux设置为enforcing状态。
需要配置selinux允许匿名写:
man 8 ftpd_selinux
a.根据Manual来修改匿名共享根目录的file type(ls -Z)