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
feat: Add pseudo-variables to F5 WAF for NGINX (#1402)
This commit uses the shortcode psuedo-variable pattern to make multiple
component versions for F5 WAF for NGINX into strings. This allows for
content in multiple locations to be changed at once by updating the file
relating to the version.
Many of the versions are currently identical: if the individual
components all use the same version, then the amount of shortcode files
can be reduced accordingly.
- Closes#1318 by replacing the string with a shortcode
- Closes#1364 by creating shortcode psuedovariables for each item
This document describes how to use the F5 WAF for NGINX compiler, a tool for converting security policies and logging profiles from JSON to a bundle file that F5 WAF can process and apply.
@@ -64,7 +62,7 @@ This example Dockerfile is based on a Debian image.
@@ -236,6 +217,7 @@ When [configuring policies]({{< ref "/waf/policies/configuration.md">}}), you ma
236
217
There are ways to remediate them based on the context:
237
218
238
219
{{< table >}}
220
+
239
221
| Description | Solution |
240
222
| ----------------------- | -------- |
241
223
|_Expected declarative policy_| Ensure the JSON of the policy is well-formed |
@@ -248,6 +230,7 @@ There are ways to remediate them based on the context:
248
230
|_Duplicate policy name found_| Don't compile multiple policies with the same name, or one policy to multiple bundles. Each policy can be compiled once but a bundle can be re-used. |
249
231
|_Duplicate logging profile name found_| Don't compile the same logging profile to multiple bundles. Each profile can be compiled once but a bundle can be re-used. |
250
232
|_Timeout waiting for enforcer_| Likely an internal issue: [contact Support]({{< ref "/waf/support.md" >}}) |
This topic describes how to install F5 WAF for NGINX in a disconnected or air-gapped environment.
@@ -48,7 +46,6 @@ You will need `git` and `wget` in your connected environment.
48
46
49
47
Run the following two commands: replace `<hugo-release>` with the tarball appropriate to the environment from [the release page](https://github.com/gohugoio/hugo/releases/tag/v0.147.8):
50
48
51
-
52
49
```shell
53
50
git clone git@github.com:nginx/documentation.git
54
51
wget <hugo-release>
@@ -97,10 +94,10 @@ Once you've obtained the package files and transferred them to your disconnected
97
94
After pulling or building Docker images in a connected environment, you can save them to `.tar` files:
98
95
99
96
```shell
100
-
docker save -o waf-enforcer.tar waf-enforcer:5.2.0
101
-
docker save -o waf-config-mgr.tar waf-config-mgr:5.2.0
97
+
docker save -o waf-enforcer.tar waf-enforcer:{{< version-waf-enforcer >}}
98
+
docker save -o waf-config-mgr.tar waf-config-mgr:{{< version-waf-config-mgr >}}
102
99
# Optional, if using IP intelligence
103
-
docker save -o waf-ip-intelligence.tar waf-ip-intelligence:5.2.0
100
+
docker save -o waf-ip-intelligence.tar waf-ip-intelligence:{{< version-waf-ip-intelligence >}}
104
101
```
105
102
106
103
You can then transfer the files and load the images in your disconnected environment:
|| _appprotect.wafEnforcer.env.enforcerPort_ | Port for the WAF Enforcer. | 50000 |
326
326
|| _appprotect.wafEnforcer.resources_ | The resources of the WAF Enforcer container. | requests: cpu=20m,memory=256Mi |
327
327
|**WAF IP Intelligence**| _appprotect.wafIpIntelligence.enable | Enable or disable the use of the IP intelligence container |false|
328
328
|| _appprotect.wafIpIntelligence.image.repository_ | Docker image repository for the WAF IP Intelligence. | private-registry.nginx.com/nap/waf-ip-intelligence |
329
-
|| _appprotect.wafIpIntelligence.image.tag_ | Docker image tag for the WAF Enforcer. |5.6.0|
329
+
|| _appprotect.wafIpIntelligence.image.tag_ | Docker image tag for the WAF Enforcer. |{{< version-waf-ip-intelligence >}}|
F5 WAF for NGINX has an IP intelligence feature which allows you to customize enforcement based on the source IP address of a request. This allows you to limit access from specific IP addresses.
@@ -106,7 +104,7 @@ Modify the _original docker-compose.yml_ file to include the IP intelligence con
0 commit comments