flavio/podlock

GitHub: flavio/podlock

基于 Landlock LSM 的 Kubernetes Pod 安全工具,通过声明式配置限制容器内进程的文件访问和执行权限。

Stars: 10 | Forks: 0

# PodLock PodLock 使用 [Landlock](https://landlock.io/) Linux Kernel LSM 来限制 Kubernetes Pod 中的进程执行和文件访问。 Kubernetes 用户可以定义 PodLock 配置文件(profile),用于指定在容器内运行的进程的限制。 每个配置文件描述了应用于容器内单个二进制文件的限制。 容器内单个二进制文件的文件系统访问(读取、写入和执行权限) 可以通过 PodLock 进行控制。 例如,给定以下配置文件: ``` apiVersion: podlock.kubewarden.io/v1alpha1 kind: LandlockProfile metadata: name: nginx namespace: default spec: profilesByContainer: nginx: "/usr/sbin/nginx": readExec: - /lib - /lib64 readOnly: - /usr/share/nginx readWrite: - /tmp ``` 此配置文件将限制由 `/usr/bin/nginx` 启动的进程,它们将 获得对系统库(`/lib` 和 `/lib64`)的读取和执行权限。 对 `/usr/share/nginx` 的访问将是只读的,而 `/tmp` 也将是可写的。 Landlock 采用“拒绝所有(deny all)”的方法。因此,nginx 进程将 无法读取文件系统的其他部分。除非位于 lib 目录下(对此它没有写权限),否则它将无法从 系统启动其他二进制文件。 ## 文档 完整的项目文档可在 [https://flavio.github.io/podlock](https://flavio.github.io/podlock) 获取。 ## 当前限制 - 更新配置文件不会自动触发关联 Pod 的滚动更新,可能需要手动干预。 - 目前没有可用的机制来观察或记录由 PodLock 强制执行的违规行为。 - 用于辅助配置文件创建和验证的学习模式尚未实现。
标签:EVTX分析, HTTP工具, JSONLines, Kubewarden, Landlock, Linux内核安全, LSM, nginx, Pod安全, Web截图, 子域名突变, 安全策略, 容器安全, 提示词设计, 文件访问控制, 日志审计, 最小权限原则, 权限管理, 模型越狱, 沙箱, 系统加固, 网络安全审计, 进程限制, 防护, 零信任