You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -11,107 +11,91 @@ import UnderlineTooltip from '@site/src/components/underline-tooltip';
11
11
12
12
## Objectives
13
13
14
-
This quickstart shows how to deploy the CrowdSec AppSec component with the official Helm chart and protect workloads exposed through the Kubernetes [NGINX Ingress Controller](https://kubernetes.github.io/ingress-nginx/). At the end you will have:
14
+
This quickstart shows how to deploy the CrowdSec AppSec component with the
15
+
official Helm chart and protect workloads exposed through the Kubernetes [NGINX
16
+
Ingress Controller](https://kubernetes.github.io/ingress-nginx/). At the end you
17
+
will have:
15
18
16
19
- CrowdSec running in-cluster with the AppSec API listening on `7422`
17
20
- The ingress controller using the CrowdSec Lua plugin to forward requests for inspection
18
21
- Basic virtual patching rules blocking common web exploits
19
22
20
-
## Prerequisites
21
-
22
-
Before you begin, make sure you have:
23
-
24
-
- A working Kubernetes cluster (v1.25+ recommended) with `kubectl` access
- The [`ingress-nginx` Helm repository](https://artifacthub.io/packages/helm/ingress-nginx/ingress-nginx) available, or an existing controller that can be upgraded
27
-
- Cluster-admin permissions to create namespaces, Deployments, Secrets and ConfigMaps
28
-
- Internet access from the cluster nodes so the CrowdSec pod can download Hub content
29
-
30
-
:::warning Lua-enabled controller required
31
-
CrowdSec’s NGINX Ingress remediation relies on the Lua plugin interface. Use the `crowdsecurity/controller` image shipped by CrowdSec (included in the values below). The vanilla upstream controller dropped Lua support in v1.12.
23
+
## Pre-requisites
24
+
25
+
1. If you're new to the [AppSec Component](/appsec/intro.md#introduction) or
26
+
**W**eb **A**pplication **F**irewalls, start with the
27
+
[Introduction](/appsec/intro.md#introduction) for a better understanding.
28
+
29
+
2. It's assumed that you have already installed **CrowdSec [Security
30
+
Engine](intro.mdx)**: for installation, refer to the [QuickStart
31
+
guide](/u/getting_started/installation/kubernetes). The AppSec Component, which
32
+
analyzes HTTP requests, is included within the security engine as a
33
+
<UnderlineTooltiptooltip="Acquisition files tell CrowdSec where to find logs
34
+
and which application they belong to.">Acquisition</UnderlineTooltip>.
35
+
36
+
:::warning
37
+
A Lua-enabled controller is essential for CrowdSec's NGINX Ingress
38
+
remediation, as it relies on the Lua plugin interface. Please use the
39
+
`crowdsecurity/controller` image provided by CrowdSec (as specified in the
40
+
values below). Note that the standard upstream controller removed Lua support in
You should see both the `crowdsec` pod and the `crowdsec-appsec` pod in `Running` state.
93
-
94
-
## Step 2 – Provide the bouncer key via environment variables
95
-
96
-
The ingress controller authenticates against CrowdSec with a bouncer API key. Instead of invoking `cscli` manually, let the Helm chart create the bouncer by providing the key through an environment variable.
97
-
98
-
1. Generate (or reuse) a strong key and export it in your shell:
Keep working in the same terminal so the variable remains available while you write both values files. If you already have a key, export it instead of generating a new one.
106
-
:::
88
+
```bash
89
+
kubectl -n crowdsec get pods
90
+
```
107
91
108
-
2. When you create `crowdsec-appsec-values.yaml`, ensure the `${NGINX_INGRESS_BOUNCER_KEY}` placeholder is expanded by your shell (for example with `cat <<EOF` or `envsubst`). During installation the chart registers the `nginx_ingress_waf` bouncer automatically, so no additional Kubernetes Secret is required. Repeat the same approach for `crowdsec-ingress-values.yaml` in the next step.
92
+
You should see both the `crowdsec` pod and the `crowdsec-appsec` pod in `Running` state.
109
93
110
-
## Step 3 – Enable the CrowdSec Lua plugin on NGINX Ingress
94
+
## Step 2 – Enable the CrowdSec Lua plugin on NGINX Ingress
111
95
112
-
Create `crowdsec-ingress-values.yaml` (from the same shell session so `${NGINX_INGRESS_BOUNCER_KEY}` is still defined) to extend the ingress controller with the CrowdSec plugin and point it to the AppSec API:
96
+
Create `ingress-values.yaml` is still defined) to extend the ingress controller with the CrowdSec plugin and point it to the AppSec API:
0 commit comments