良许Linux教程网 干货合集 轻松自如关闭与开启SELinux

轻松自如关闭与开启SELinux

SELinux 主要由美国国家安全局开发。2.6 及以上版本的 Linux 内核都已经集成了 SELinux 模块,SELinux 的结构及配置非常复杂,而且有大量概念性的东西,要学精难度较大。很多 Linux 系统管理员嫌麻烦都把 SELinux 关闭了,本篇文章就为大家分享一下如何方便的关闭与开启SELinux。

img

脚本代码

#!/bin/bash  
#  -------------+--------------------  
# * Filename    :       selinux.sh          
# * Revision    :       2.0            
# * Date        :       2017-09-02
# * Author      :       Aubin          
# * Description :                      
#  -------------+---------------------
#       www.shuaiguoxia.com
#

path=/app/selinux
selinux=`sed -rn "/^(SELINUX=).*\$/p" $path`

case $1 in
enforcing|en)

       sed -ri "s@^(SELINUX=).*\$@\1enforcing@g" $path
       if [ $selinux ==  'SELINUX=disabled' ];then
               read -p "SELinux enforcing. you need reboot system ( yes or no ):" input
               [ $input == 'yes' -o $input == 'y' ] && reboot || echo "please Manual operation reboot"
       else
               echo "SELinux enforcing."
       fi
       ;;
permissive|per|pe)
       sed -ri "s@^(SELINUX=).*\$@\1permissive@g" $path
       if [ $selinux == 'SELINUX=disabled' ];then
               read -p "SELinux permissive. you need reboot system ( yes or no ):" input
               [ $input == 'yes' -o $input == 'y'] && reboot || echo "please Manual operation reboot"
       else
               echo "SELINUX permissive"
       fi
       ;;
disabled|dis|di)
       sed -ri "s@^(SELINUX=).*\$@\1disabled@g" $path
       if [ $selinux == 'SELINUX=enforcing' ];then
                read -p "SELinux permissive. you need reboot system ( yes or no ):" input
               [ $input == 'yes' -o $input == 'y' ] && reboot || echo "please Manual operation reboot"
       else
               echo "SELINUX disabled"
       fi
       ;;
l|a)
       echo `sed -nr 's@(^SELINUX=.*)@\1@p' $path`
       ;;
help|--help)
       echo "$0 [ enforcing | permissive | disabled  ]"
       ;;
*)
       echo "$0 [ enforcing | permissive | disabled  ]"

       ;;
esac

脚本测试 SELinux轻松一键开启与禁用脚本SELinux轻松一键开启与禁用脚本

根据case语句对用户的位置变量(输入的参数)进行判断,进而根据不同的参数实现不同的效果。

SELinux在enforcing状态与disabled状态切换时必须要进行重启才能生效,所以要在脚本中判断用户之前的SELinux的状态是什么样的,询问用户是否进程重启操作系统。

以上就是良许教程网为各位朋友分享的Linux系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你 !

img
本文由 良许Linux教程网 发布,可自由转载、引用,但需署名作者且注明文章出处。如转载至微信公众号,请在文末添加作者公众号二维码。
良许

作者: 良许

良许,世界500强企业Linux开发工程师,公众号【良许Linux】的作者,全网拥有超30W粉丝。个人标签:创业者,CSDN学院讲师,副业达人,流量玩家,摄影爱好者。
上一篇
下一篇

发表评论

联系我们

联系我们

公众号:良许Linux

在线咨询: QQ交谈

邮箱: yychuyu@163.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部