Server Config
WireGuard servers require one literal UDP address with a nonzero port, or omit
the bind location when peer_client_chain is configured. They do not support
port ranges, multiple bind addresses, or Unix socket paths. See WireGuard.
This is a field sketch, not one runnable listener: choose one bind form and a
concrete server protocol. name optionally gives the
listener a stable dashboard identity. Omitted rules allow direct forwarding;
use routing rules to restrict destinations or select upstreams.
Optional dns selects the listener’s resolver (see DNS and
Fake DNS); sniff: true enables TCP hostname sniffing.
# Bind to IP address and portaddress: "0.0.0.0:8080" # IPv4address: "[::]:8080" # IPv6address: "0.0.0.0:443-445" # Port range
# OR bind to multiple addresses and port ranges (`address` is also accepted)addresses: - "127.0.0.1:22223" - "172.17.0.1:22223-22225"
# OR bind to Unix socket (TCP only)path: "/tmp/shoes.sock"
# Protocol configuration (required)protocol: ServerProxyConfigname: string? # Optional dashboard identitysniff: false # TCP hostname sniffing, default falsedns: {servers: system} # Optional resolver configuration
# Transport layer (default: tcp)transport: tcp | quic # WireGuard only: udp (default, required)
# TCP settings (only when transport: tcp)tcp_settings: no_delay: true # Default: true
# QUIC settings (required when transport: quic)quic_settings: cert: string # TLS certificate (path or named PEM) key: string # TLS private key (path or named PEM) certificate_source: string # Alternative managed certificate source alpn_protocols: [string] # Optional ALPN protocols client_ca_certs: [string] # Optional client CA certificates client_fingerprints: [string] # Optional client certificate fingerprints num_endpoints: int # Optional, 0 = auto (based on thread count) key_exchange_groups: [X25519MLKEM768] # Optional; see TLS key exchange
# Routing rules (default: allow-all-direct; WireGuard requires explicit nonempty rules)rules: string | [RuleConfig]Use either certificate_source or cert/key, not both; see
certificate sources. For supported hybrid and
classical groups, see TLS key exchange.