利用SELinux增强容器化工作负载安全与策略管理
1. 利用Kubernetes的SELinux支持
在较大的环境中使用容器时,通常会借助容器编排框架来管理,Kubernetes就是这样一个受欢迎的框架。当在Fedora的CoreOS上安装Kubernetes时,它会检测到Docker并使用其引擎来管理容器。
若要使用 /srv/containers 位置,需创建等价规则以确保其标签正确:
# semanage fcontext -a -e /var/lib/containers \
/srv/containers
# restorecon -R -v /srv/containers
如果该位置是网络挂载,可能还需要更改相应的SELinux布尔值。
1.1 配置支持SELinux的Kubernetes
Kubernetes安装方法多样,可使用 kubeadm 来引导集群。不过,Kubernetes服务在初始化时会从主机系统映射到容器,但未使用 :Z 或 :z 选项,这会导致服务以默认的 container_t SELinux域运行,而该域无法访问这些位置。
为解决此问题,可让服务以高度特权的 spc_t 域运行,具体步骤如下:
1. 在安装开始前,将 container_t 类型标记为允许域:
超级会员免费看
订阅专栏 解锁全文
47

被折叠的 条评论
为什么被折叠?



