cloudflare / cloudflare/cloudflared

🐛Cannot enable Post-Quantum tunnel using Environment variable

Open
#773 4 comments 2 reactions 0 assignees View on GitHub
Priority: Normal Type: Bug
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

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.