关于Polaris
Polaris是一款针对Kubernetes的开源安全策略引擎,可以帮助广大研究人员通过验证和修复Kubernetes的资源配置,来审查Kubernetes集群是否遵循了最佳安全实践。
当前版本的Polaris包含了30多种内置的配置策略,并且能够使用JSON Schema构建自定义策略。如果你通过命令行或Webhook运行Polaris的话,Polaris则可以根据策略标准自动修复问题。
工具特性
Polaris支持下列三种运行模式:
1、仪表盘模式:根据“策略即代码”来验证Kubernetes资源安全态势;
2、准入控制器模式:自动拒绝或修改不符合组织策略的工作负载;
3、命令行工具:将策略作为代码纳入CI/CD流程,以测试本地YAML文件;
Polaris仪表盘
Polaris仪表盘可以使用kubectl或Helm安装在集群上。它也可以在本地运行,并使用存储在KUBECONFIG中的凭据连接到集群。
需要注意的是,仪表盘是了解集群或“代码基础结构”中哪些工作负载不符合最佳实践的好方法。
工具安装
Helm安装
helm repo add fairwinds-stable https:
//charts.fairwinds.com/stable
helm upgrade --install polaris fairwinds-stable/polaris --
namespace
polaris --create-
namespace
kubectl port-forward --
namespace
polaris svc/polaris-dashboard
8080
:
80
(向右滑动,查看更多)
本地代码安装
首先,你需要一个有效的KUBECONFIG来设置仪表盘并连接到你的集群。
广大研究人员可以直接访问该项目的Releases页面来下载最新的代码发布版本,或使用Homebrew安装:
brew
tap reactiveops/tap
brew
install reactiveops/tap/polaris
polaris
dashboard --port 8080
我们还可以将仪表盘指向本地文件系统:
polaris
dashboard --port
8080
--audit-path=./deploy/
本地Docker容器安装
docker run -d -
p8080:
8080
-v ~
/.kube/config
:/opt/app/config
:ro
quay.io/fairwinds/
polaris:
1.2
polaris dashboard --kubeconfig /opt/app/config
(向右滑动,查看更多)
工具使用
Polaris仪表板可以简单直观地了解Kubernetes工作负载的当前状态,以及可以改进的路线图。仪表板提供了集群范围的概述,以及按类别、命名空间和工作负载划分结果:
Polaris的默认标准是非常高的,所以如果你的分数低于你的预期,请不要感到惊讶。Polaris的一个关键目标是设定一个高标准,并在默认情况下实现出色的配置。如果我们包含的默认值过于严格,那么很容易将配置作为部署配置的一部分进行调整,以更好地适应你的工作负载。
许可证协议
本项目的开发与发布遵循Apache-2.0开源许可证协议。
项目地址
Polaris:
https://github.com/FairwindsOps/polaris
原文始发于微信公众号(FreeBuf):如何使用Polaris验证你的Kubernetes集群是否遵循了最佳安全实践
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论