专栏首页云计算教程系列如何在Ubuntu上安装SELinux
原创

如何在Ubuntu上安装SELinux

Ubuntu有一个类似于SELinux的强制访问控制系统,名为AppArmor。SELinux(Security-Enhanced Linux) 是美国国家安全局(NSA)对于强制访问控制的实现,是 Linux历史上最杰出的新安全子系统。NSA是在Linux社区的帮助下开发了一种访问控制体系,在这种访问控制体系的限制下,进程只能访问那些在他的任务中所需要文件。SELinux 默认安装在 Fedora 和 Red Hat Enterprise Linux 上,也可以作为其他发行版上容易安装的包得到。SELinux和AppArmor都提供了一组工具来隔离应用程序,以保护主机系统免受攻击。AppArmor为Ubuntu用户提供强制访问控制选项,没有SELinux可能遇到的困难或学习曲线效应。如果您想要切换到Ubuntu,已经熟悉SELinux并希望使用它来强制系统的安全性,您可以按照这个简短的教程安装它。

开始之前

您需要一台已经设置好可以使用sudo命令的非root账号的CentOS服务器,并且已开启防火墙。没有服务器的同学可以在这里购买,不过我个人更推荐您使用免费的腾讯云开发者实验室进行试验,学会安装后在购买服务器

腾讯云的Ubuntu系统默认不支持SELinux。需要安装特定的内核,请遵循本教程,并在管理器的内核菜单中选择GRUB2。如果您使用的是远程服务器,如腾讯云的CVM,则不要使用reboot命令,请从控制台管理器重新启动计算机。

删除AppArmor

警告 在本教程中,AppArmor是您的默认安全模块。删除但不替换AppArmor会使您的系统面临风险。如果您认为将来可能会重新使用AppArmor,则不要删除它。

/etc/init.d/停止AppArmor脚本:

sudo /etc/init.d/apparmor stop

从系统中清除AppArmor。

apt purge apparmor

如果您担心配置文件被删除,请使用apt remove apparmor

更新并重新启动系统:

apt update && upgrade -yuf
reboot

安装SELinux

安装SELinux软件包并重启系统:

apt install selinux
reboot

您可以通过尝试将SELinux设置为enforcing模式来确定SELinux是否在您的系统上强制执行安全性。

root@ubuntu:~# setenforce 1
root@ubuntu:~# getenforce
Enforcing

注意 如果收到错误消息setenforce: SELinux is disabled,请检查您是否仍在使用腾讯云自定义内核。如果没有,请确保所选内核为GRUB2并再次尝试安装SELinux。

如果想要在重启之后保持enforcing模式,请将位于/etc/selinux/config的SELinux配置文件从默认值SELINUX=permissive修改为SELINUX=enforcing

/etc/selinx/config

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=enforcing

这样,你就可以在Ubuntu系统上启用SELinux内核了!请持续关注腾讯云+社区的教程,稍后我们将带来更多SELinux的教程。


参考文献:《Getting Started with SELinux》

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 如何将Ubuntu升级到18.04最新版

    Ubuntu操作系统的最新长期支持(LTS)版本Ubuntu 18.04(Bionic Beaver)于2018年4月26日发布。本教程将讲解如何将16.04或...

    挺问中原
  • 如何在Ubuntu 14.04上安装OpenLiteSpeed Web服务器

    OpenLiteSpeed是一种优化的开源Web服务器,可用于管理和提供站点。就Linux Web服务器而言,OpenLiteSpeed具有一些有趣的功能,使其...

    挺问中原
  • 如何在Ubuntu 14.04上保护Redis安装

    但是,请记住,Redis旨在供受信任环境中的受信任客户端使用,并且没有自己的强大安全功能。为了突出显示这一点,可以看看这里来自Redis官方网站的引用:

    挺问中原
  • SELinux 入门详解

    回到 Kernel 2.6 时代,那时候引入了一个新的安全系统,用以提供访问控制安全策略的机制。这个系统就是 Security Enhanced Linux (...

    砸漏
  • 查看 SELinux状态及关闭SELinux

    1、/usr/sbin/sestatus -v ##如果SELinux status参数为enabled即为开启状态

    yaohong
  • 如何在 CentOS 8 上禁用 SELinux

    Security Enhanced Linux 或者 SELinux 是一个安全机制,广泛内置于 RHEL 系列版本的 Linux kernel 中。

    雪梦科技
  • Centos给文件设置了777权限仍不能访问解决方案

    1.查看SELinux状态: /usr/sbin/sestatus -v ##如果SELinux status参数为enabled即为开启状态   SELin...

    流柯
  • S007SELinux(SEAndroid)是怎么解决安全问题的

    上一小结,咱们大概知道,SELinux是个什么。这一节想弄明白SELinux是怎么解决问题的?

    上善若水.夏
  • CentOS-TFTP服务器搭建

    把上面的SELINUX=enforcing 改为:SELINUX=disable 禁用SeLinux 然后reboot重启PC

    偏有宸机
  • python3 sorted 如何实现自定义排序标准

    但是在 python3 中,cmp 这个参数已经被移除了,那么在 python3 中应该怎么实现 python2 的 cmp 功能呢?

    砸漏

扫码关注云+社区

领取腾讯云代金券