HTTP Configuration
Enable HTTP Query
The HTTP query interface is disabled by default. You can enable it using any of these methods:HTTP Configuration Options
| Parameter | Environment Variable | Default | Type | Description |
|---|---|---|---|---|
--query-http-enable | TSSERVER_QUERY_HTTP_ENABLED | false | Boolean | Enables the HTTP query interface |
--query-http-port | TSSERVER_QUERY_HTTP_PORT | 10080 | Integer (1-65535) | Port for HTTP query connections |
--query-http-ip | TSSERVER_QUERY_HTTP_IP | [0.0.0.0, ::] | String | IP addresses to bind for HTTP queries |
HTTPS Configuration
Enable HTTPS Query
The HTTPS interface provides encrypted query connections using SSL/TLS. You’ll need a valid certificate and private key.HTTPS Configuration Options
| Parameter | Environment Variable | Default | Type | Description |
|---|---|---|---|---|
--query-https-enable | TSSERVER_QUERY_HTTPS_ENABLED | false | Boolean | Enables the HTTPS query interface |
--query-https-port | TSSERVER_QUERY_HTTPS_PORT | 10443 | Integer (1-65535) | Port for HTTPS query connections |
--query-https-ip | TSSERVER_QUERY_HTTPS_IP | [0.0.0.0, ::] | String | IP addresses to bind for HTTPS queries |
--query-https-certificate | TSSERVER_QUERY_HTTPS_CERT | None | String | Path to SSL certificate file |
--query-https-private-key | TSSERVER_QUERY_HTTPS_PRIVATE_KEY | None | String | Path to SSL private key file |
Binding to Specific IP Addresses
By default, the query interfaces bind to all available IPv4 and IPv6 addresses. You can restrict this to specific IPs:Complete Configuration Examples
HTTP Only
Simple HTTP query interface for local network access:tsserver.yaml
HTTPS Only (Production)
Secure HTTPS configuration for production environments:tsserver.yaml
Both HTTP and HTTPS
Run both protocols simultaneously:tsserver.yaml
In this example, HTTP is restricted to localhost (127.0.0.1) for local administration, while HTTPS is available on all interfaces for remote access.
Docker Configuration
When running TeamSpeak 6 in Docker, expose the query ports:Firewall Configuration
Ensure your firewall allows query traffic:UFW (Ubuntu)
firewalld (CentOS/RHEL)
iptables
Testing Your Configuration
Verify Service is Listening
Check that the server is listening on the configured ports:You should see your configured HTTP and/or HTTPS ports listed.
Security Best Practices
- Use HTTPS in production: Always use HTTPS for query connections over the internet
- Use trusted certificates: Obtain certificates from a trusted CA for production use
- Restrict IP access: Use
--query-ip-allow-listto limit which IPs can connect - Use strong passwords: Set a strong admin password with
--query-admin-password - Enable logging: Use
--query-log-commandsto audit query activity - Limit exposure: Bind to specific IPs instead of all interfaces when possible
- Keep HTTP local: If using both protocols, restrict HTTP to localhost and use HTTPS for remote access
Next Steps
SSH Query
Configure the SSH query interface
Authentication
Set up query admin credentials