selinux常用操作

#selinux操作,操作系统centos7,系统selinux为打开状态。
破坏selinux标签:
# cp /var/log/messages /root/ //只需反复复制到不同的目录,selinux标签就变了 admin_home_t变成了var_log_t,如果系统不开启selinux,新复制的文件标签为空。
# ll -Z /var/log/messages
-rw-------. root root system_u:object_r:var_log_t:s0 /var/log/messages
# ll -Z /root/messages
-rw-------. root root unconfined_u:object_r:admin_home_t:s0 /root/messages
# \mv /root/messages /var/log/
# ll -Z /var/log/messages
-rw-------. root root unconfined_u:object_r:admin_home_t:s0 /var/log/messages //此时原来的标签已被破坏,原来为var_log_t,现在变成了admin_home_t,现在原进程往这个文件记录日志会被禁止。
# logger "this is log test" //写入这个命令会以某个用户身份向/var/log/message里写日志
# tail -f /var/log/message 日志没有反应
# chcon -t var_log_t /var/log/messages //修改标签
# ll -Z /var/log/messages
-rw-------. root root unconfined_u:object_r:var_log_t:s0 /var/log/messages //改回了var_log_t

systemctl restart rsyslog //要重启使用/var/log/messages的服务才能生效

# logger 'this is test log'
# tail -f /var/log/messages 日志写入成功

参考某个文件修改selinux标签:

ll -Z

    -rw-r--r--. root root unconfined_u:object_r:default_t:s0 test.txt
\# ll -Z /var/log/messages
    -rw-------. root root unconfined_u:object_r:var_log_t:s0 /var/log/messages
\# chcon --reference /var/log/messages /testdir/test.txt  //参考messages 修改 test.txt

\ # ll -Z /testdir/test.txt
rw-r--rw-r--r--. root root unconfined_u:object_r:var_log_t:s0 /testdir/test.txt
selinux httpd修改网站代码路径并添加selinux标签

mkdir /data/www --> # touch /data/www/index.html

\# ll -Z /data/www/index.html 
    rw-r--rw-r--r--. root root unconfined_u:object_r:default_t:s0 /data/www/index.html  //此时标签为default_t

\ # semanage fcontext -l | grep "/var/www/html" //httpd默认selinux标签
# semanage fcontext -a -t httpd_sys_rw_content_t "/data/www(/.)?"
# semanage fcontext -l | grep /data/www //多了一条规则
# ll -Z /www/data //标签还没生效
# restorecon -R /data/www/ //根据selinux数据库规则递归重新更新标签
# semanage fcontext -d "/data/www(/.
)?" //从数据库删除规则
# semanage fcontext -l | grep data/www 规则不存在了

selinux httpd端口修改:

semanage port -l | grep http //查看允许的端口

\# systemctl start httpd   # ss -ntl  //服务正常访问
将httpd监听端口改为 9527 后,重启httpd服务失败
\# semanage port -a -t http_port_t -p tcp 9527  //增加端口
\# systemctl restart httpd  //重启成功

selinux 修改ssh默认端口:

semanage port -l | grep ssh

\# semanage port -m -t ssh_port_t -p tcp 9527  //9527端口要已被添加到selinux的端口,随便加一个不行。
\# semanage port -d -t ssh_port_t -p tcp 9527  //删除端口

selinux 设置bool布尔值

getsebool -a

\ # semanage boolean -l | grep samba_enable //查看临时生效与永久生效
# getsebool -a | grep samba_enable
# setsebool samba_enable_home_dirs 1 //临时生效
# setsebool sambgetsebool -a | grep samba_enable 已开启
# setsebool -P samba_enable_home_dirs on //永久生效
# semanage boolean -l -C //查看修改过的布尔值

转载于:https://blog.51cto.com/12555197/2172684

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值