Control network access, egress rules, proxy settings, and deployment security for your enterprise instance.
The Network & Firewall tab controls who can access your AgenticMail instance (inbound) and what your agents can reach on the internet (outbound). These settings form the perimeter defense of your deployment.
Restricts which IP addresses can access the dashboard, APIs, and engine endpoints. Supports individual IPs and CIDR ranges.
| Setting | Description |
|---|---|
| Enable | Master toggle for IP filtering |
| Mode |
|
| Allowed IPs / CIDRs | IPs permitted in allowlist mode. E.g., 10.0.0.0/8, 203.0.113.42 |
| Blocked IPs / CIDRs | IPs rejected in blocklist mode |
| Bypass Paths | URL paths that skip IP filtering (e.g., /health, /ready for load balancer checks) |
Enter any IP address and click "Test" to see whether it would be allowed or blocked under the current rules. Useful for validating your configuration before saving.
securityConfig in the settings table).Controls which external hosts and ports agents can reach when using web fetch, browser automation, and other network tools.
| Setting | Description |
|---|---|
| Enable | Master toggle for egress filtering |
| Mode |
|
| Allowed Hosts | Wildcards supported: *.googleapis.com, api.openai.com |
| Blocked Hosts | Hosts agents cannot reach: evil.example.com |
| Allowed Ports | Only these outbound ports are permitted (e.g., 443, 80) |
| Blocked Ports | These outbound ports are blocked (e.g., 25 for SMTP, 22 for SSH) |
Configure HTTP/HTTPS proxies for agent outbound traffic. Required in corporate environments with restricted internet access.
| Setting | Description |
|---|---|
| HTTP Proxy | Proxy URL for HTTP traffic: http://proxy.corp.internal:8080 |
| HTTPS Proxy | Proxy URL for HTTPS traffic (often the same as HTTP proxy) |
| No-Proxy Hosts | Hosts that bypass the proxy: localhost, 127.0.0.1, *.internal |
When configured, these proxy settings are applied to all outbound HTTP/HTTPS requests made by agents via tools like web_fetch, web_search, and browser automation.
When your instance sits behind a reverse proxy (nginx, Cloudflare, AWS ALB), the real client IP is in the X-Forwarded-For header. You must list your proxy IPs here so the system extracts the correct client IP.
| Setting | Description |
|---|---|
| Enable | Toggle trusted proxy validation |
| Trusted Proxy IPs / CIDRs | IP ranges of your proxies: 10.0.0.0/8, 172.16.0.0/12 |
Controls which domains can make cross-origin API requests from a browser. Required when your dashboard is served from a different domain than the API.
| Setting | Description |
|---|---|
| Allowed Origins | List of allowed origins: https://dashboard.example.com. Leave empty to allow all (*). |
Per-IP rate limiting using a token bucket algorithm. Protects against brute-force attacks, API abuse, and basic DDoS.
| Setting | Default | Description |
|---|---|---|
| Enable | On | Master toggle |
| Requests per Minute | 120 | Maximum API requests per IP per minute |
| Skip Paths | /health, /ready | Paths excluded from rate limiting (health checks, webhooks) |
When a client exceeds the limit, they receive a 429 Too Many Requests response with a Retry-After header.
Redirects all HTTP requests to HTTPS. Essential for production deployments.
| Setting | Description |
|---|---|
| Enforce HTTPS | Redirect HTTP to HTTPS. Checks X-Forwarded-Proto for reverse proxy setups. |
| Exclude Paths | Paths that can be accessed over HTTP (e.g., health checks from internal LB) |
HTTP headers added to every response for browser-level security.
| Header | Default | Purpose |
|---|---|---|
| Strict-Transport-Security (HSTS) | Enabled, 1 year | Forces browsers to always use HTTPS. max-age sets how long browsers remember this. |
| X-Content-Type-Options | nosniff | Prevents browsers from guessing content types. Stops MIME-based attacks. |
| X-Frame-Options | DENY | Prevents your dashboard from being embedded in iframes. Stops clickjacking. |
| Referrer-Policy | strict-origin-when-cross-origin | Controls how much URL info is sent in the Referer header. |
| Permissions-Policy | camera=(), microphone=(), geolocation=() | Disables browser features not needed by the dashboard. |
SAMEORIGIN if you embed the dashboard in your own portal.Validates the Host header against an allowlist to prevent DNS rebinding attacks.
An attacker registers a domain that initially resolves to their server, then re-resolves to your internal server IP. The browser thinks it's making a same-origin request to the attacker's domain, but it's actually hitting your internal API.
When enabled, requests with a Host header not in the allowlist are rejected with a 403 Forbidden.
| Setting | Description |
|---|---|
| Enable | Toggle DNS rebinding protection |
| Allowed Hosts | Your domain(s): enterprise.example.com, localhost |
Maximum size for incoming request bodies. Prevents denial-of-service via oversized payloads.
| Setting | Default | Description |
|---|---|---|
| Max Body Size | 10,240 KB (10 MB) | Requests exceeding this are rejected with 413 Payload Too Large |
Increase this if agents need to upload large files (documents, images). Decrease for tighter security in exposed environments.
Restrict access by country using built-in IP geolocation. Works without Cloudflare or any reverse proxy — the server resolves IPs directly.
| Setting | Description |
|---|---|
| Enable | Toggle geo-IP filtering |
| Mode |
|
| Countries | Select countries using the picker (search by name or code) |
Security controls for inbound webhook endpoints used by Slack, Google Chat, and third-party integrations.
| Setting | Description |
|---|---|
| Enable | Toggle webhook security |
| Require HMAC Signature | Webhooks must include a valid HMAC signature. Prevents spoofed requests from attackers. |
| Allowed Source IPs | Only accept webhooks from known provider IP ranges (e.g., Google: 35.0.0.0/8, Slack: 3.0.0.0/8) |
173.245.48.0/20, 103.21.244.0/22, etc.)