IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> kubernetes之Apparmor -> 正文阅读

[系统运维]kubernetes之Apparmor

容器运行使用的是宿主机的CPU、内存、内核等资源。在容器中的操作也和影响到操作系统上,同样,在操作系统中的漏洞也肯恩影响到容器的运行。例如,容器运行时和加载底层操作系统的linux内核中的模块,如果宿主机linux的内核中加载了有扣动的模块,则会影响到容器的安全,所以我们也需要在操作系统层面进行加固。

一、最小权限原则

最小权限原则(Principle of least privilege,POLP):是一种信息安全概念,即为用户提供执行其工作职责的最小权限等或许可。

最小权限原则被广泛认为是网络安全的最佳实践,也是饱和高价值数据和资产的特权访问的基本方式。

1.1 最小特权原则重要性:

? 减少网络攻击面: 当今,大多数高级攻击都依赖于利用特权凭证。通过限制超级用户和管理员权限,最小权限执行有助于减少总体网络攻击面。
? 阻止恶意软件的传播: 通过在服务器或者在应用系统上执行最小权限,恶意软件攻击(例如SQL注入攻击)将很难提权来增加访问权限并横向移动破坏其他软件、设备。
? 有助于简化合规性和审核 :许多内部政策和法规要求都要求组织对特权帐户实施最小权限原则,以防止对关键业务系统的恶意破坏。最小权限执行可以帮助组织证明对特权活动的完整审核跟踪的合规性。

1.2 实现方式

  1. 在内部、云、DevOps环境和端点中,审核整个环境以查找特权帐户(例如密码、SSH密钥、密码哈希和访问密钥)。
  2. 消除不必要的本地管理员权限,并确保所有人类用户和非人类用户仅具有执行其工作所需的权限。
  3. 将管理员帐户与标准帐户分开,并隔离特权用户会话。
  4. 将特权管理员帐户凭据提供给数字保管库,以开始保护和管理这些帐户。
  5. 每次使用后,立即轮换所有管理员密码,以使按键记录软件可能已捕获的所有凭据无效,并降低哈希传递的风险。
  6. 持续监视与管理员帐户有关的所有活动,以快速检测和警告可能表明正在进行攻击的异常活动。
  7. 启用即时访问特权升级,允许用户根据需要临时访问特权帐户或运行特权命令。

二、Apparmor

AppArmor(Application Armor) 是一个 Linux 内核安全模块,可用于限制主机操作系统上运行的进程的功能。每个进程都可以拥有自己的安全配置文件。安全配置文件用来允许或禁止特定功能,例如网络访问、文件读/写/执行权限等。Apparmor已经内置在Ubuntu、Debian中
Linux内核已启用AppArmor,查看 cat /sys/module/apparmor/parameters/enabled。容器运行时需要支持AppArmor,目前Docker已支持

2.1 Apparmor两种工作模式

Enforcement(强制模式) :在这种模式下,配置文件里列出的限制条件都会得到执行,并且对于违反这些限制条件的程序会进行日志记录。使用aa-enforce <程序名>开启
Complain(投诉模式):在这种模式下,配置文件里的限制条件不会得到执行,Apparmor只是对程序的行为进行记录。一般用于调试。使用aa-complain <程序名>
Disable: 此时对应配置文件不加载,没有对程序行为进行限制。aa-disable <程序名>

2.2 Apparmor使用

Apparmor通过配置文件来管理各个程序的权限。配置文件的文件名通常是其控制的程序的完整路径名(比如 /etc/apparmor.d/usr.sbin.nginx 是控制nginx的配置文件)。生效的配置文件的位置是/etcd/apparmor.d,
安装;
apt install apparmor-utils apparmor-profiles apparmor-profiles-extra
之后使用命令 aa-enabled 可以查看Apparmor 是否开启买也可以使用aa-status来查看Apparmor的运行状态
aa-enabled
> Yes
常用命令:
? apparmor_status:查看AppArmor配置文件的当前状态的
? apparmor_parser:将AppArmor配置文件加载到内核中
? ? ?? apparmor_parser <profile># 加载到内核中
? ? ?? apparmor_parser -r <profile># 重新加载配置
? ? ?? apparmor_parser -R <profile># 删除配置
? aa-complain:将AppArmor配置文件设置为投诉模式,需要安装apparmor-utils软件包
? aa-enforce:将AppArmor配置文件设置为强制模式,需要安装apparmor-utils软件包

三、示例

案例:容器文件系统访问限制
步骤:
1、将自定义策略配置文件保存到/etc/apparmor.d/
2、加载配置文件到内核:apparmor_parser <profile>
3、Pod注解指定策略配置名

??限制容器对目录或者文件的访问

apiVersion: v1
kind: Pod
metadata:
  name: hello-apparmor
annotations:
  container.apparmor.security.beta.kubernetes.io/hello: localhost/k8s-deny-write
spec:
  containers:
    - name: hello
    image: busybox
    command: [ "sh", "-c", "echo 'Hello AppArmor!' && sleep 1h" ]
  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-01-03 16:30:34  更:2022-01-03 16:32:49 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 6:22:38-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码