用于禁用SELinux的Bash脚本

2ic8powd  于 2023-03-07  发布在  Linux
关注(0)|答案(2)|浏览(100)

如何询问用户是否在其计算机上启用了SE Linux?如果启用了,如何要求他们运行脚本将其关闭?

zwghvu4y

zwghvu4y1#

更正已接受的答案。
a)按如下所示使用“getenforce”来编写脚本

SELINUX_STATE=$(getenforce)
if [ "$SELINUX_STATE" == "Enforcing" ]; then
  echo "SELinux is enabled"
elif [ "$SELINUX_STATE" == "Permissive" ]; then
  echo "SELinux is permissive"
else 
  echo "SELinux is disabled (or missing)"
fi

B)setenforce 0将selinux设置为permissive模式-这与disabled不同。禁用的唯一方法是编辑配置并重新启动。

sudo sed -c -i "s/\SELINUX=.*/SELINUX=disabled/" /etc/sysconfig/selinux
sudo restart
ijnw1ujt

ijnw1ujt2#

ENABLED=`cat /selinux/enforce`
if [ "$ENABLED" == 1 ]; then
  echo "SELinux is enabled, disable? (yes/no):"
  read disable
  if [ $disable == "yes" ]; then
    echo "disabling selinux"
    setenforce 0
  fi
fi

此脚本应作为root用户运行,或具有执行以下操作的权限:

cat /selinux/enforce
setenforce 0

相关问题