linux之selinux使用


SELinux(安全增强linux) security enhanced linux,安全等级达到B1级军事安全性能,linux2.6以上版本支持(uname -r查看内核版本)。

信息安全评估标准:D,C1,C2,B1,B2,B3,A

特点
1)、MAC-访问控制彻底化
2)、RBAC-对用户只赋予最小权限
3)、TE-对进程只赋予最小运行权限

SELinux运行模式
1)、enforcing强制模式
2)、permissive警告模式
3)、disabled关闭模式

SELinux安装
1)、默认已经安装,rpm -qa |grep selinux
2)、未安装安装命令,yum -y install selinux

SELinux操作命令
1)、查询当前状态,getenforce
2)、开启SELinux,修改/etc/selinux/config文件中SELINUX=disabled为SELINUX=enforcing(必须修改配置文件并重启系统reboot或init 6,初次启动需更新文件标签,启动时间较强)
3)、临时关闭selinux,setenforce 0,再次打开setenforce 1
4)、修改grub关闭selinux,修改/boot/grub/grub.cfg添加selinux=0
5)、修改配置关闭selinux,同2修改SELINUX值为disabled

安全上下文
1)、user类似于UID,普通用户user_u、系统用户system_u、非限制用户undefined_u
2)、role类似于GID,文件目录object_r、进程system_r
3)、type将主体与客体划分为不同的组

查看配置文件的selinux安全上下文
ls -Z /etc/hosts
ls -Zd /var

修改selinux属性标签
chcon -t var_t /etc/hosts
chcon -R -t samba_share_t /tmp/abc
chcon --reference=/var/www/html/ /var/www/html/a.html

预设selinux安全上下文
/etc/selinux/targeted/contexts/files/file_contexts

恢复文件安全上下文
restorecon -v /etc/ntp.conf

selinux策略及其使用
1.getsebool -a查看selinux策略值
2.getsebool -a |grep ftp_home
3.setsebool -P ftp_home_dir=on,-P表示永久修改,否则系统重启失效。
4.getsebool -a |grep allow_ftpd
5.setsebool -P allow_ftpd_anon_write=on
6.chcon -t public_content_rw_t /var/ftp/pub