From da9a92f9c6f80a0ae5890fe99f312d39304224e9 Mon Sep 17 00:00:00 2001 From: erjemin Date: Sun, 18 May 2025 23:10:28 +0300 Subject: [PATCH] =?UTF-8?q?add:=20=D0=97=D0=B0=D1=89=D0=B8=D1=82=D0=B0=20?= =?UTF-8?q?=D1=85=D0=BE=D1=81=D1=82=D0=B0=20=D1=81=20=D0=BF=D0=BE=D0=BC?= =?UTF-8?q?=D0=BE=D1=89=D1=8C=D1=8E=20CrowdSec=20..........?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 6 +++--- .../k3s-protection-with-crowdsec.md | 13 ++----------- 2 files changed, 5 insertions(+), 14 deletions(-) rename {kubernetes => raspberry-and-orange-pi}/k3s-protection-with-crowdsec.md (95%) diff --git a/README.md b/README.md index 697f03e..04924c6 100644 --- a/README.md +++ b/README.md @@ -18,13 +18,12 @@ * [Перенос контейнера Docker в k3s](kubernetes/k3s-migrating-container-from-docker-to-kubernetes.md) (на примере Gitea) * [Резервное копирование k3s](kubernetes/k3s-backup.md) * [Настройка доступа к панелям управления](kubernetes/k3s-setting-up-web-access-to-dashboard.md) Longhorn и Traefik -* [Защита кластера с помощью CrowdSec](kubernetes/k3s-protection-with-crowdsec.md) ## Python * [Устранение проблем при установке Python-коннектора mysqlclient (MySQL/MariaDB)](python/python-mysql.md) * [Python-скрипт как служба Linux](python/python_as_service.md) -## Orange Pi / Raspberry Pi +## Linux (возможно в специфике Orange Pi / Raspberry Pi) * [Установка (перенос) системы на NVMe или eMMC (для Orange Pi 5 Plus)](raspberry-and-orange-pi/opi5plus-move-system-to-nvme-or-emmc.md) * [Измерение производительности накопителей](raspberry-and-orange-pi/measuring-performance-storage-devices.md) * [Установка Docker и Docker Compose](raspberry-and-orange-pi/install-docker-compose.md) @@ -32,7 +31,8 @@ * [k8s (кubernetes) на Orange Pi (драфт...)](raspberry-and-orange-pi/k8s.md) * [k3s (кubernetes) на Orange Pi](raspberry-and-orange-pi/k3s.md) * [Перекомпиляция ядра Linux (включение пподдержки iSCSI в Orange Pi 5 Plus](raspberry-and-orange-pi/opi5plus-rebuilding-linux-kernel-for-iscsi.md) - +* [Защита хоста с помощью CrowdSec](raspberry-and-orange-pi/k3s-protection-with-crowdsec.md) +* ## Nginx / Apache * [Ограничение доступа по User-Agent (на примере GPTBot)](nginx/nginx-ban-user-agent.md) * [Настройка nginx как прямого прокси](nginx/nginx_as_direct_proxy.md) diff --git a/kubernetes/k3s-protection-with-crowdsec.md b/raspberry-and-orange-pi/k3s-protection-with-crowdsec.md similarity index 95% rename from kubernetes/k3s-protection-with-crowdsec.md rename to raspberry-and-orange-pi/k3s-protection-with-crowdsec.md index b800580..6971424 100644 --- a/kubernetes/k3s-protection-with-crowdsec.md +++ b/raspberry-and-orange-pi/k3s-protection-with-crowdsec.md @@ -1,4 +1,4 @@ -# Защита кластера с помощью CrowdSec +# Защита хоста с помощью CrowdSec Вы наверняка использовали (или как минимум слышали) о Fail2Ban. Он очень широко распространён для защиты SSH на хостах, противодействия сканированию сайтов, легких DDoS-атак и "фонового bot-трафика". Fail2Ban существует с 2004 года @@ -23,7 +23,7 @@ Fail2Ban (он написан на Golang), работает с IPv6 и имее В принципе, СrowdSec можно установить в кластер через Helm. Тогда он сам развернется на всех узлах кластера и это отличный вариант для защиты Traefik (HTTP-запросы, сценарии http-cms-scanning, http-probing) и контейнеризированных -приложений (в моем случае [Gitea](k3s-migrating-container-from-docker-to-kubernetes.md), [3x-ui](k3s-3xui-pod.md) +приложений (в моем случае [Gitea](../kubernetes/k3s-migrating-container-from-docker-to-kubernetes.md), [3x-ui](../kubernetes/k3s-3xui-pod.md) и тому подобного). Но мне нужно защитить еще и SSH самих узлов (узла) кластера. Поэтому план такой: * Хостовый CrowdSec (на одном или всех узлах кластера) использует тот же Local API (LAPI) через виртуальный IP (VIP) @@ -685,14 +685,5 @@ sudo cscli decisions delete --range yyy.yyy.yyyy.yyy/24 sudo cscli decisions delete --all ``` -sudo cscli machines list - - -───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── - Name IP Address Last Update Status Version OS Auth Type Last Heartbeat -───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── - 9e7a9d3f049443b195e176ad55eb5a65T7ENATSHvcKag40Q 127.0.0.1 2025-05-18T11:31:18Z ✔️ v1.6.8-debian-pragmatic-arm64-f209766e Ubuntu/22.04 password 6s -───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -