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
|`--enable-host-access`| flag |`false`| Enable access to host services via host.docker.internal |
45
50
|`--allow-host-ports <ports>`| string |`80,443`| Ports to allow when using --enable-host-access |
46
51
|`--allow-host-service-ports <ports>`| string | — | Ports to allow ONLY to host gateway (for GitHub Actions `services:`) |
@@ -96,6 +101,40 @@ Path to file with allowed domains. Supports comments (`#`) and one domain per li
96
101
--allow-domains-file ./allowed-domains.txt
97
102
```
98
103
104
+
### `--ruleset-file <path>`
105
+
106
+
YAML rule file for domain allowlisting. Can be specified multiple times to load multiple files. Domains from ruleset files are merged with `--allow-domains` and `--allow-domains-file`.
subdomains: true # default: true — also allows *.github.com
123
+
- domain: example.com
124
+
subdomains: false # exact match only
125
+
```
126
+
127
+
**Fields:**
128
+
- `version` — Must be `1`
129
+
- `rules`— Array of rule objects
130
+
131
+
Each rule has the following fields:
132
+
133
+
| Field | Required | Default | Description |
134
+
|-------|----------|---------|-------------|
135
+
| `domain` | Yes | — | Domain name to allow |
136
+
| `subdomains` | No | `true` | Whether to also allow all subdomains |
137
+
99
138
### `--block-domains <domains>`
100
139
101
140
Comma-separated list of blocked domains. **Blocked domains take precedence over allowed domains**, enabling fine-grained control. Supports the same wildcard patterns as `--allow-domains`.
@@ -176,6 +215,24 @@ Keep containers and configuration files after command exits for debugging.
Maximum time in minutes for the agent command to run. When the timeout is reached, the agent container is stopped and the firewall exits. Must be a positive integer.
If your agent process is being killed unexpectedly (OOM), try increasing the memory limit with `--memory-limit 8g` or higher.
376
+
:::
377
+
263
378
### `--dns-servers <servers>`
264
379
265
380
Comma-separated list of trusted DNS servers. DNS traffic is **only** allowed to these servers, preventing DNS-based data exfiltration. Both IPv4 and IPv6 addresses are supported.
**Note:** The directory must be writable by the current user.
382
497
498
+
### `--audit-dir <path>`
499
+
500
+
Directory for firewall audit artifacts. When specified, the firewall saves configuration files, the policy manifest, and iptables state to this directory for compliance and debugging purposes.
501
+
502
+
```bash
503
+
# Save audit artifacts
504
+
sudo awf --audit-dir ./audit \
505
+
--allow-domains github.com \
506
+
-- curl https://api.github.com
507
+
508
+
# Review audit artifacts
509
+
ls ./audit/
510
+
```
511
+
512
+
:::tip
513
+
Use `--audit-dir` in CI/CD pipelines to capture firewall configuration for audit trails. Can also be set via the `AWF_AUDIT_DIR` environment variable.
514
+
:::
515
+
383
516
### `--agent-image <value>`
384
517
385
518
Specify the agent container image to use. Supports pre-built presets or custom base images.
0 commit comments