Update infra: SafeLine K3s 이전, Helm 관리 현황
- SafeLine VM → K3s safeline ns 이전 (v9.3.2) - Helm 릴리스 목록 추가 (argocd, cert-manager, longhorn 공식 chart 교체) - ArgoCD Applications 목록 추가 - registry ns 삭제 - Longhorn v1.8.1 → v1.8.2 업그레이드 - SafeLine detector 주소 K3s 서비스로 변경
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
---
|
---
|
||||||
title: CrowdSec 및 SafeLine WAF
|
title: CrowdSec 및 SafeLine WAF
|
||||||
updated: 2026-03-15
|
updated: 2026-03-18
|
||||||
---
|
---
|
||||||
|
|
||||||
## DB 테이블
|
## DB 테이블
|
||||||
@@ -45,9 +45,14 @@ Bouncer 목록: [[apisix]]-waf-bouncer, bunny-cdn-bouncer, cs-[[cloudflare|cf]]-
|
|||||||
- 통과: Request Smuggling, NoSQLi, 일반 경로 스캔
|
- 통과: Request Smuggling, NoSQLi, 일반 경로 스캔
|
||||||
|
|
||||||
### 2차: SafeLine WAF (chaitin-waf 플러그인)
|
### 2차: SafeLine WAF (chaitin-waf 플러그인)
|
||||||
- 위치: APISIX 내부 플러그인
|
- 위치: APISIX 내부 플러그인 → K3s safeline ns의 detector (safeline-detector.safeline.svc.cluster.local:8000)
|
||||||
|
- APISIX plugin_metadata로 detector 주소 설정 (etcd 저장)
|
||||||
- BunnyCDN을 통과한 공격 차단
|
- BunnyCDN을 통과한 공격 차단
|
||||||
- 라우트별 개별 적용 (gitea는 `.git/` 경로 제외, 바이너리 프로토콜 파싱 불가)
|
- 라우트별 개별 적용 (gitea는 `.git/` 경로 제외, 바이너리 프로토콜 파싱 불가)
|
||||||
|
- SafeLine v9.3.2, Helm chart yaencn/safeline 10.1.0
|
||||||
|
- tengine 미사용 (replicas: 0), APISIX가 직접 detector 연동
|
||||||
|
- 관리 콘솔: safeline.inouter.com (IngressRouteTCP TLS passthrough)
|
||||||
|
- 이전: kr2 Incus VM → K3s safeline ns로 이전 (2026-03-18)
|
||||||
|
|
||||||
### 3차: CrowdSec (로그 분석)
|
### 3차: CrowdSec (로그 분석)
|
||||||
- 위치: jp1 CrowdSec (10.253.100.240:8080)
|
- 위치: jp1 CrowdSec (10.253.100.240:8080)
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ tags: [infra, network, kr-zone, openwrt]
|
|||||||
| incus-kr1 | 192.168.9.214 | Debian 13 (trixie) |
|
| incus-kr1 | 192.168.9.214 | Debian 13 (trixie) |
|
||||||
| incus-kr2 | 192.168.9.135 | Debian 13 (trixie) |
|
| incus-kr2 | 192.168.9.135 | Debian 13 (trixie) |
|
||||||
|
|
||||||
주요 네임스페이스: anvil, apisix, argocd, cert-manager, db, gitea, ironclad, kroki, longhorn-system, openmemory, registry, system-upgrade, tools, vault
|
주요 네임스페이스: anvil, apisix, argocd, cert-manager, db, gitea, ironclad, kroki, longhorn-system, openmemory, safeline, system-upgrade, tools, vault
|
||||||
|
|
||||||
Traefik: DaemonSet (3노드), LoadBalancer 192.168.9.134/135/214:80,443
|
Traefik: DaemonSet (3노드), LoadBalancer 192.168.9.134/135/214:80,443
|
||||||
|
|
||||||
@@ -40,6 +40,39 @@ APISIX: Deployment (replicas 3, hostNetwork, strategy Recreate), 3노드 :9080/:
|
|||||||
|
|
||||||
트래픽 흐름: 외부 → OpenWrt HAProxy (TCP 80/443) + nftables (UDP 443) → APISIX hostNetwork (9080/9443, 3노드) → K3s 서비스 → pods
|
트래픽 흐름: 외부 → OpenWrt HAProxy (TCP 80/443) + nftables (UDP 443) → APISIX hostNetwork (9080/9443, 3노드) → K3s 서비스 → pods
|
||||||
|
|
||||||
|
### Helm 릴리스
|
||||||
|
|
||||||
|
| Release | Namespace | Chart | App Version |
|
||||||
|
|---------|-----------|-------|-------------|
|
||||||
|
| apisix | apisix | apisix-2.13.0 | 3.15.0 |
|
||||||
|
| argocd | argocd | argo-cd-9.4.14 | v3.3.4 |
|
||||||
|
| cert-manager | cert-manager | cert-manager-v1.20.0 | v1.20.0 |
|
||||||
|
| gitea | gitea | gitea-12.5.0 | 1.25.4 |
|
||||||
|
| longhorn | longhorn-system | longhorn-1.8.2 | v1.8.2 |
|
||||||
|
| reflector | kube-system | reflector-10.0.18 | 10.0.18 |
|
||||||
|
| safeline | safeline | safeline-10.1.0 | 9.3.2 |
|
||||||
|
| traefik | kube-system | traefik-39.0.201 | v3.6.9 |
|
||||||
|
| vault | vault | vault-0.32.0 | 1.21.2 |
|
||||||
|
|
||||||
|
### ArgoCD Applications
|
||||||
|
|
||||||
|
| App | Namespace | Repo |
|
||||||
|
|-----|-----------|------|
|
||||||
|
| anvil | anvil | infra-apps (anvil-hosting) |
|
||||||
|
| ironclad | ironclad | infra-apps |
|
||||||
|
| bunnycdn-mcp | tools | bunnycdn-mcp |
|
||||||
|
| cf-bouncer-manager | tools | cf-bouncer-manager |
|
||||||
|
| cloud-api-emulator | tools | cloud-api-emulator |
|
||||||
|
| n8n | tools | infra-apps |
|
||||||
|
| namecheap-api | tools | namecheap-api |
|
||||||
|
| nocodb | tools | infra-apps |
|
||||||
|
| pgcat | tools | infra-apps |
|
||||||
|
| vultr-api | tools | vultr-api |
|
||||||
|
|
||||||
|
### kubectl 직접 관리 (Helm/ArgoCD 미적용)
|
||||||
|
|
||||||
|
db, kroki, openmemory, system-upgrade
|
||||||
|
|
||||||
### TCP 튜닝 (3노드 공통)
|
### TCP 튜닝 (3노드 공통)
|
||||||
|
|
||||||
- BBR 혼잡 알고리즘 + fq qdisc (`/etc/sysctl.d/99-bbr.conf`, `/etc/modules-load.d/bbr.conf`)
|
- BBR 혼잡 알고리즘 + fq qdisc (`/etc/sysctl.d/99-bbr.conf`, `/etc/modules-load.d/bbr.conf`)
|
||||||
@@ -57,13 +90,13 @@ APISIX: Deployment (replicas 3, hostNetwork, strategy Recreate), 3노드 :9080/:
|
|||||||
| [[gitea]] | K3s 클러스터 (gitea ns): gitea, postgresql, valkey | kubectl, gitea.anvil.it.com |
|
| [[gitea]] | K3s 클러스터 (gitea ns): gitea, postgresql, valkey | kubectl, gitea.anvil.it.com |
|
||||||
| Ironclad | K3s 클러스터 (ironclad ns): nginx, php-fpm, redis, ssh-server, proxysql | kubectl / NodePort 30297 |
|
| Ironclad | K3s 클러스터 (ironclad ns): nginx, php-fpm, redis, ssh-server, proxysql | kubectl / NodePort 30297 |
|
||||||
| Kroki | K3s 클러스터 (kroki ns) | kubectl |
|
| Kroki | K3s 클러스터 (kroki ns) | kubectl |
|
||||||
| Longhorn | K3s 클러스터 (longhorn-system ns): 분산 스토리지 | kubectl |
|
| Longhorn | K3s 클러스터 (longhorn-system ns): 분산 스토리지 v1.8.2 | kubectl |
|
||||||
| n8n | K3s 클러스터 (tools ns) | kubectl |
|
| n8n | K3s 클러스터 (tools ns) | kubectl |
|
||||||
| NocoDB | K3s 클러스터 (tools ns) | kubectl, nocodb.inouter.com |
|
| NocoDB | K3s 클러스터 (tools ns) | kubectl, nocodb.inouter.com |
|
||||||
| OpenMemory | K3s 클러스터 (openmemory ns): mcp, ui, qdrant | kubectl |
|
| OpenMemory | K3s 클러스터 (openmemory ns): mcp, ui, qdrant | kubectl |
|
||||||
| PgCat | K3s 클러스터 (tools ns): PostgreSQL pooler | kubectl |
|
| PgCat | K3s 클러스터 (tools ns): PostgreSQL pooler | kubectl |
|
||||||
| ProxySQL | K3s 클러스터 (db ns) | kubectl |
|
| ProxySQL | K3s 클러스터 (db ns) | kubectl |
|
||||||
| Registry | K3s 클러스터 (registry ns) | kubectl |
|
| SafeLine WAF | K3s 클러스터 (safeline ns): detector, mgt, fvm, chaos, luigi, pg | kubectl, safeline.inouter.com |
|
||||||
| [[vault]] | K3s 클러스터 (vault ns): HA 3노드(vault-0/1/2), agent-injector, mcp-server | kubectl / vault CLI / MCP |
|
| [[vault]] | K3s 클러스터 (vault ns): HA 3노드(vault-0/1/2), agent-injector, mcp-server | kubectl / vault CLI / MCP |
|
||||||
| Vault (legacy) | sandbox-tokyo (Docker, vault-prod) | vault CLI |
|
| Vault (legacy) | sandbox-tokyo (Docker, vault-prod) | vault CLI |
|
||||||
| WireGuard | sandbox-tokyo (wg-easy Docker) | |
|
| WireGuard | sandbox-tokyo (wg-easy Docker) | |
|
||||||
@@ -100,7 +133,8 @@ APISIX: Deployment (replicas 3, hostNetwork, strategy Recreate), 3노드 :9080/:
|
|||||||
|
|
||||||
### kr2 컨테이너
|
### kr2 컨테이너
|
||||||
|
|
||||||
**default 프로젝트**: etcd (10.100.1.198), mariadb-3 (10.100.1.162), postgres-3 (10.100.1.83), safeline (10.100.1.204), cloudflared (10.100.1.95)
|
**default 프로젝트**: etcd (10.100.1.198), mariadb-3 (10.100.1.162), postgres-3 (10.100.1.83), cloudflared (10.100.1.95)
|
||||||
|
- safeline VM: 셧다운 (K3s safeline ns로 이전, 삭제 예정)
|
||||||
|
|
||||||
**inbest 프로젝트**: mariadb10, nginx, php5, php8, phpmyadmin, sftp
|
**inbest 프로젝트**: mariadb10, nginx, php5, php8, phpmyadmin, sftp
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user