You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Falco中启用Kubernetes审计规则

启用Falco Kubernetes审计规则操作步骤

1. 开启Falco审计日志接收配置

默认Helm安装Falco时不会自动开启K8s审计日志接收能力,需先确认对应配置已生效:

  • 查看Falco配置ConfigMap:kubectl get cm -l app.kubernetes.io/name=falco -o yaml,检查falco.yaml中的配置是否符合以下要求:
    webserver:
      enabled: true
      listen_port: 8765
      k8s_audit_endpoint: /k8s-audit
      k8s_audit_enabled: true
    
  • 若配置未生效,可通过Helm升级开启对应能力:
    helm upgrade --install falco falcosecurity/falco --namespace falco --create-namespace --set falco.webserver.enabled=true --set falco.webserver.k8s_audit_enabled=true

2. 配置Minikube Kubernetes Apiserver审计规则与转发

Falco的K8s审计规则依赖Apiserver的审计日志主动推送,需修改Apiserver启动配置:

  • 首先创建审计策略文件audit-policy.yaml(适配你使用的K8s v1.17.17版本,使用v1beta1版本API):

    apiVersion: audit.k8s.io/v1beta1
    kind: Policy
    rules:

    • level: RequestResponse
      resources:
      • group: ""
        resources: ["pods", "services", "secrets", "configmaps", "serviceaccounts"]
      • group: "apps"
        resources: ["deployments", "daemonsets", "statefulsets"]
      • group: "rbac.authorization.k8s.io"
        resources: ["roles", "clusterroles", "rolebindings", "clusterrolebindings"]
    • level: Metadata
      omitStages:
      • "RequestReceived"
  • 再创建审计webhook配置文件audit-webhook.yaml,用于指定审计日志转发到Falco的地址:

    apiVersion: v1
    kind: Config
    clusters:

    • name: falco
      cluster:
      server: http://<替换为Falco服务的ClusterIP>:8765/k8s-audit
      contexts:
    • context:
      cluster: falco
      user: ""
      name: default-context
      current-context: default-context
      preferences: {}
      users: []
  • 将上述两个文件存入Minikube节点的固定目录,比如/var/lib/minikube/audit/路径下。
  • 重启Minikube并加载审计相关配置:
    minikube start --extra-config=apiserver.audit-policy-file=/var/lib/minikube/audit/audit-policy.yaml --extra-config=apiserver.audit-webhook-config-file=/var/lib/minikube/audit/audit-webhook.yaml --extra-config=apiserver.audit-webhook-mode=batch

3. 确认K8s审计规则文件已加载

默认Falco的K8s审计规则存放在独立的规则文件中,需确认该文件已被加载:

  • 查看Falco配置ConfigMap中的rules_file配置项,确保包含/etc/falco/k8s_audit_rules.yaml路径。
  • 若未加载,可通过Helm升级添加规则文件路径:
    helm upgrade --install falco falcosecurity/falco --namespace falco --set "falco.rules_file={/etc/falco/falco_rules.yaml,/etc/falco/falco_rules.local.yaml,/etc/falco/k8s_audit_rules.yaml}"

4. 效果验证

配置全部生效后,执行违反审计规则的操作,比如创建特权容器、修改集群角色绑定,执行kubectl logs -n falco -l app.kubernetes.io/name=falco即可查看对应的K8s审计规则告警日志。

内容的提问来源于stack exchange,提问作者Sathya

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 11:12:02