cloudflare / cloudflare/cloudflared
🐛Cannot enable Post-Quantum tunnel using Environment variable
- Dominant language
- Go
- Stars
- 15.6k
- Forks
- 1.4k
- PR merge metrics
- No merged PRs in 30d
Description
**Describe the bug**
Using cloudflared:latest docker image (Version 2022.10.0)
The TUNNEL_POST_QUANTUM environment variable does not seem to work.
**To Reproduce**
My Docker compose is specified as follows:
```
version: '3'
services:
cloudflared:
image: "cloudflare/cloudflared"
container_name: "cloudflared"
command:
- "tunnel"
environment:
- TUNNEL_FORCE_PROVISIONING_DNS=true
- TUNNEL_RUN_FORCE_OVERWRITE=true
- TUNNEL_URL=https://traefik.local/
- TUNNEL_HOSTNAME=XXX.XXX.com
- NO_TLS_VERIFY=TRUE
- TUNNEL_NAME=tunnel
- TUNNEL_CRED_FILE=/etc/cloudflared/cloudflared.json
# logging
- TUNNEL_LOGLEVEL=debug
- TUNNEL_TRANSPORT_LOGLEVEL=debug
- TUNNEL_POST_QUANTUM=true
volumes:
- "cloudflared_data:/etc/cloudflared"
restart: unless-stopped
volumes:
cloudflared_data:
external: true
```
I have tried setting TUNNEL_POST_QUANTUM to TRUE, true, "TRUE", "true"
If it's an issue with Cloudflare Tunnel:
4. Tunnel ID : N/A
5. cloudflared config: See docker config above
**Expected behavior**
Expected logs to show a line stating "Using experimental hybrid post-quantum key agreement" as per https://blog.cloudflare.com/post-quantum-tunnel/
**Environment and versions**
- OS: Docker Running on Windows 11 WSL2
- Architecture: AMD
- Version: latest docker image (2022.10.0)
**Logs and errors**
For all cases, when starting up logs show:
2022-10-04T20:12:27Z INF Settings: map[no-autoupdate:true]
2022-10-04T20:12:27Z INF Environmental variables map[XXX TUNNEL_POST_QUANTUM:true XXX]
2022-10-04T20:12:27Z INF Generated Connector ID: XXX
2022-10-04T20:12:27Z INF Initial protocol quic
2022-10-04T20:12:27Z INF ICMP proxy will use XXX as source for IPv4
There should be an additional line after Initial protocol quic mentioning the post quantum key agreement algorithm which is used
**Additional context**
Note that the other two boolean variables specified in the environment variables do seem to work:
- TUNNEL_FORCE_PROVISIONING_DNS=true
- TUNNEL_RUN_FORCE_OVERWRITE=true
and both are specified differently in subcommands.go when compared to the postQuantumFlag:
`postQuantumFlag = altsrc.NewBoolFlag(&cli.BoolFlag{`
`forceDeleteFlag = &cli.BoolFlag{`
`overwriteDNSFlag = &cli.BoolFlag{`
Not sure if that could be the cause of the issue
Contributor guide
Assessment
This issue has not been assessed yet.