【问题标题】:Falco security and falcosidekick on docker composedocker compose 上的 Falco 安全性和 falcosidekick
【发布时间】:2021-11-16 11:24:23
【问题描述】:

我正在尝试在 docker compose 中运行 falcofalcosikick 容器。

version: "3.9"
services:
  falco:
    image: falcosecurity/falco:latest
    privileged: true
    volumes:
      - /var/run/docker.sock:/host/var/run/docker.sock
      - /dev:/host/dev
      - /proc:/host/proc:ro
      - /boot:/host/boot:ro
      - /lib/modules:/host/lib/modules:ro
      - /usr:/host/usr:ro
      - /etc:/host/etc:ro
      - /var/log/falco_events.log:/var/log/falco_events.log
      - /home/ubuntu/falco.yaml:/etc/falco/falco.yaml
      - /home/ubuntu/falco_rules.yaml:/etc/falco/falco_rules.yaml
      - /home/ubuntu/falco_rules.local.yaml:/etc/falco/rules.d/custom-rules.yaml
  falcosidekick:
    image: falcosecurity/falcosidekick
    ports:
      - 2801:2801

我配置 falco.yaml 将 http_output 发送到 falcosidekick 容器:

http_output:
  enabled: true
  url: "http://falcosidekick:2801"

然后我在 falco.yaml 中添加了 slack 配置


debug: false 
customfields: # custom fields are added to falco events
  Akey: "AValue"
  Bkey: "BValue"
  Ckey: "CValue"
mutualtlsfilespath: "/etc/certs" # folder which will used to store client.crt, client.key and ca.crt files for mutual tls (default: "/etc/certs")

slack:
  webhookurl: "https://hooks.slack.com/services/XXX/XXXX/XXXXX"
  #footer: "" # Slack footer
  #icon: "" # Slack icon (avatar)
  #username: "" # Slack username (default: Falcosidekick)
  outputformat: "all" # all (default), text, fields
  minimumpriority: "" # minimum priority of event for using this output, order is emergency|alert|critical|error|warning|notice|informational|debug or "" (default)
  messageformat: 'Alert : rule *{{ .Rule }}* triggered by user *{{ index .OutputFields "user.name" }}*' # a Go template to format Slack Text above Attachment, displayed in addition to the output from `SLACK_OUTPUTFORMAT`, see [Slack Message Formatting](#slack-message-formatting) in the README for details. If empty, no Text is displayed before Attachment.

使用此配置,我的 Slack 频道从未收到警报。 怎么了?

谢谢

【问题讨论】:

    标签: docker docker-compose slack falco


    【解决方案1】:

    falco 和 falcosidekick 的配置必须在 2 个不同的文件中,这意味着您还需要在 falcosidekick 容器中挂载一个卷。如果您愿意,您也可以使用环境变量(但这意味着您的 slack webhook url 将在您的 docker-compose 文件中以明文形式显示)。

    version: "3.9"
    services:
      falco:
        image: falcosecurity/falco:latest
        privileged: true
        volumes:
          - /var/run/docker.sock:/host/var/run/docker.sock
          - /dev:/host/dev
          - /proc:/host/proc:ro
          - /boot:/host/boot:ro
          - /lib/modules:/host/lib/modules:ro
          - /usr:/host/usr:ro
          - /etc:/host/etc:ro
          - /var/log/falco_events.log:/var/log/falco_events.log
          - /home/ubuntu/falco.yaml:/etc/falco/falco.yaml
          - /home/ubuntu/falco_rules.yaml:/etc/falco/falco_rules.yaml
          - /home/ubuntu/falco_rules.local.yaml:/etc/falco/rules.d/custom-rules.yaml
      falcosidekick:
        image: falcosecurity/falcosidekick
        ports:
          - 2801:2801
        volumes:
          - /home/ubuntu/falcosidekick.yaml:/etc/falco/falcosidekick.yaml
        command: "-c /etc/falco/falcosidekick.yaml"
    

    【讨论】:

    • 谢谢!我以不同的方式完成了它。我没有在 docker-compose 中使用命令,而是更改了入口点 -> 入口点: /app/falcosidekick --config-file=/app/config.yaml 。这个解决方案有问题吗?
    • 两种解决方案都有效
    猜你喜欢
    • 2022-10-09
    • 1970-01-01
    • 2023-03-19
    • 2021-10-16
    • 2022-08-05
    • 2019-07-21
    • 2020-12-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多