Skip to content

Configuration

All runtime behaviour is controlled through environment variables. No configuration file is required.

Environment variables

Variable Default Purpose
GUACD_HOST 127.0.0.1 Host where guacd is reachable
GUACD_PORT 4822 guacd listening port
RDP_HOST 127.0.0.1 Target RDP host
RDP_PORT 3389 Target RDP port
HTTP_PORT 8080 HTTP/WebSocket listen port
MAX_SESSIONS 10 Maximum concurrent active sessions

Session capacity

Keep MAX_SESSIONS aligned with the Windows RDP CAL count and available host memory. Excess requests are closed with a retry-later WebSocket response before any credential is provisioned.

Network exposure

Use non-public network placement for HTTP_PORT. The embedded client performs no authentication — protect the endpoint with a reverse proxy or network policy.

RDP target

RDP_HOST and RDP_PORT point guacd at the Windows RDP server. In a single-host setup both go-rdp-server and the RDP target are the same machine (127.0.0.1).

Example: PowerShell (Windows Service)

[System.Environment]::SetEnvironmentVariable("GUACD_HOST", "127.0.0.1", "Machine")
[System.Environment]::SetEnvironmentVariable("GUACD_PORT", "4822",      "Machine")
[System.Environment]::SetEnvironmentVariable("RDP_HOST",   "127.0.0.1", "Machine")
[System.Environment]::SetEnvironmentVariable("RDP_PORT",   "3389",      "Machine")
[System.Environment]::SetEnvironmentVariable("HTTP_PORT",  "8080",      "Machine")
[System.Environment]::SetEnvironmentVariable("MAX_SESSIONS","10",       "Machine")