Webhood’s network stack uses Kong as a reverse proxy layer that sits in front of both the core UI and the backend API. Kong handles TLS termination, which means you only need to provision a certificate in one place and all services behind it benefit. For outbound traffic, the scanner container supports the standardDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/webhood-io/webhood/llms.txt
Use this file to discover all available pages before exploring further.
HTTP_PROXY / HTTPS_PROXY environment variables, making it straightforward to route scan traffic through a corporate or network proxy.
The
backend service is attached to the frontend internal Docker network only and is not directly exposed on a host port. All external traffic — including API calls from the UI — reaches it through Kong, which bridges the frontend and rest networks. This means TLS configuration on Kong protects the entire externally visible surface of Webhood.Enabling TLS
Kong mounts your certificate and key files read-only from the host filesystem and uses them to terminate HTTPS connections onWEBHOOD_HTTPS_PORT (default 8443).
Steps
1. Obtain a TLS certificate and private key. These can be a CA-signed certificate (recommended for production) or a self-signed certificate for internal use. 2. Add the following variables to your.env file:
https://<your-host>:<WEBHOOD_HTTPS_PORT>.
How it works
Docker Compose evaluates theWEBHOOD_TLS_CERT and WEBHOOD_TLS_KEY variables using shell parameter expansion. When both are set, the compose file passes the paths to Kong’s KONG_SSL_CERT and KONG_SSL_CERT_KEY environment variables and mounts the files into the container at well-known paths:
/dev/null and TLS is not activated — Kong serves plain HTTP only.
Configuring an HTTP Proxy
If your Webhood deployment runs in an environment where outbound internet access requires a proxy, set the standard proxy environment variables in your.env file. Docker Compose forwards these directly to the scanner container.
NO_PROXY is important
The scanner communicates with the kong container over the internal rest Docker network to submit results and retrieve its configuration. If you do not exclude internal hostnames from the proxy, those requests will be sent to your proxy server, which will fail to resolve Docker-internal names like kong and backend.
Always include at minimum:
Proxy scope
The proxy variables are forwarded only to thescanner container. The core and backend services do not receive these variables; their outbound traffic (if any) is not affected.