diff --git a/kubernetes/k3s-protection-with-crowdsec.md b/kubernetes/k3s-protection-with-crowdsec.md index 9913656..3770d38 100644 --- a/kubernetes/k3s-protection-with-crowdsec.md +++ b/kubernetes/k3s-protection-with-crowdsec.md @@ -18,6 +18,7 @@ Fail2Ban (он написан на Golang), работает с IPv6 и имее инструментами. CrowdSec активно растёт в нише DevOps, облаков, контейнеров и кластеров Kubernetes. А еще он не требовательный по ресурсам (~100 МБ RAM) и подходит для Orange Pi. +---- ## Утановка CrowdSec В принципе, СrowdSec можно установить в кластер через Helm. Тогда он сам развернется на всех узлах кластера и это @@ -31,8 +32,10 @@ Fail2Ban (он написан на Golang), работает с IPv6 и имее * Кластерный CrowdSec Agent, внутри k3s, анализирует логи Traefik и создаёт решения (decisions) о бане IP. * Traefik Bouncer в k3s, также подключается к LAPI для защиты HTTP (для git.cube2.ru и других web-приложений). +---- ### CrowdSec на первом узле и защита SSH на хосте +---- #### Подготовка к установке CrowdSec Делаем обновляем список пактов и систему: @@ -46,6 +49,7 @@ sudo apt upgrade curl -s https://packagecloud.io/install/repositories/crowdsec/crowdsec/script.deb.sh | sudo bash ``` +---- #### Установка CrowdSec и проверка Устанавливаем CrowdSec: @@ -249,6 +253,7 @@ sudo cscli metrics Как видим, CrowdSec читает `/var/log/auth.log` (логи SSH). +---- #### Установка CrowdSec Firewall Bouncer -- блокировщик IP-адресов По мне, блокировки CrowdSec довольно беззубые. К счастью через "вышибалу" Firewall Bouncer можно блокировать @@ -278,6 +283,7 @@ sudo cscli bouncers list ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── ``` +---- #### Подключаем наш CrowdSec к обмену данными об атаках CrowdSec может обмениваться данными об атаках с другими участниками сети. Чтобы это сделать, нужно пойти [на сайт @@ -352,6 +358,7 @@ sudo cscli decisions list --origin CAPI ╰───────┴────────┴────────────────────────────────────┴────────────────┴────────┴─────────┴────┴────────┴────────────┴──────────╯ ``` +---- #### Настройка Whitelist (белого списка) Чтобы не заблокировать себя (случайно) нужно создать в Whitelist (белый список). Например, сделаем `home_whitelist` @@ -399,7 +406,7 @@ sudo cscli allowlist inspect home_whitelist тот же результат. Только управлять через списки (allowlist) удобнее. [См. документацию](https://doc.crowdsec.net/u/getting_started/post_installation/whitelists/). - +---- #### Настройка Firewall Bouncer (блокировщик IP-адресов) Когда мы проверяли установку CrowdSec, и проверим список сценариев `shell sudo cscli scenarios list`, то нам был