一、云原生安全的核心挑战
云原生环境(容器、微服务、动态编排)带来新的攻击面:
- 容器逃逸:恶意进程突破隔离访问宿主机。
- API滥用:未授权访问Kubernetes API Server。
- 东西向流量风险:服务间通信缺乏加密与鉴权。
二、Kubernetes安全加固实战
1. 集群组件安全基线
- API Server:
- 启用RBAC,禁用匿名访问。
- 审计日志记录关键操作(
--audit-log-path
)。
- kubelet:
- 配置证书轮换(
--rotate-certificates
)。 - 限制节点访问(
--anonymous-auth=false
)。
- 配置证书轮换(
2. Pod安全策略(PSP)与替代方案
PSP示例(已弃用,推荐使用OPA/Gatekeeper):
apiVersion: policy/v1beta1
kind: PodSecurityPolicy
metadata:
name: restricted
spec:
privileged: false
allowPrivilegeEscalation: false
requiredDropCapabilities: ["NET_RAW"]
volumes: ["configMap", "emptyDir"]
替代方案:OPA Gatekeeper策略引擎:
# 禁止特权容器
violation[{"msg": msg}] {
input.spec.containers[_].securityContext.privileged == true
msg :=