-
-
Notifications
You must be signed in to change notification settings - Fork 514
Description
Is this urgent?
No
Host OS
Ubuntu 22.04
CPU arch
x86_64
VPN service provider
ProtonVPN
What are you using to run the container
docker-compose
What is the version of Gluetun
Running version latest built on 2025-11-26T13:47:08.821Z (commit c25c9f6)
What's the problem 🤔
The new update feature in 3.40.2 and 3.40.3 which calls the ProtonVPN API fails when run from the gluetun-entrypoint interface because Proton responds with a CAPTCHA challenge.
When running a command like this from within the gluetun container
./gluetun-entrypoint update -enduser -providers protonvpn -proton-email "example-user-name@proton.me" -proton-password "example-password-goes-here"The update fails and this output is shown
025-11-29T02:15:14Z INFO merging by most recent 20962 hardcoded servers and 20962 servers read from /gluetun/servers.json
2025-11-29T02:15:14Z INFO updating Protonvpn servers...
2025-11-29T02:15:25Z ERROR updating server information: getting protonvpn servers: authentifying with Proton: authentifying: HTTP status code not OK: Unprocessable Entity: {"Code":9001,"Error":"For security reasons, please complete CAPTCHA. If you can't pass it, please try updating your app or contact us here: https://proton.me/support/appeal-abuse","Details":{"HumanVerificationToken":"S-REDACTED-REDACTED-REDL","HumanVerificationMethods":["captcha"],"Direct":1,"Description":"","Title":"Human Verification","WebUrl":"https://verify.proton.me/?methods=captcha&token=S-REDACTED-REDACTED-REDL","ExpiresAt":1764384325}}
2025-11-29T02:15:25Z INFO Shutdown successful
The key line being
For security reasons, please complete CAPTCHA. If you can't pass it, please try updating your app or contact us here: https://proton.me/support/appeal-abuse
I attempted copy pasting that WebUrl into a browser and solving the CAPTCHA and then attempted running the update again but it failed and provided a new CAPTCHA challenge.
I'm not sure how to solve for this given that it requires human interaction.
This relates to #2820 and the fix #2878
Share your logs (at least 10 lines)
gluetun | ========================================
gluetun | ========================================
gluetun | =============== gluetun ================
gluetun | ========================================
gluetun | =========== Made with ❤️ by ============
gluetun | ======= https://github.com/qdm12 =======
gluetun | ========================================
gluetun | ========================================
gluetun |
gluetun | Running version latest built on 2025-11-26T13:47:08.821Z (commit c25c9f6)
gluetun |
gluetun | 🔧 Need help? ☕ Discussion? https://github.com/qdm12/gluetun/discussions/new/choose
gluetun | 🐛 Bug? ✨ New feature? https://github.com/qdm12/gluetun/issues/new/choose
gluetun | 💻 Email? quentin.mcgaw@gmail.com
gluetun | 💰 Help me? https://www.paypal.me/qmcgaw https://github.com/sponsors/qdm12
gluetun | 2025-11-29T02:11:04Z INFO [routing] default route found: interface eth0, gateway 172.21.0.1, assigned IP 172.21.0.4 and family v4
gluetun | 2025-11-29T02:11:04Z INFO [routing] local ethernet link found: eth0
gluetun | 2025-11-29T02:11:04Z INFO [routing] local ipnet found: 172.21.0.0/16
gluetun | 2025-11-29T02:11:04Z INFO [firewall] enabling...
gluetun | 2025-11-29T02:11:04Z INFO [firewall] enabled successfully
gluetun | 2025-11-29T02:11:05Z INFO [storage] merging by most recent 20962 hardcoded servers and 20962 servers read from /gluetun/servers.json
gluetun | 2025-11-29T02:11:06Z INFO Alpine version: 3.22.2
gluetun | 2025-11-29T02:11:06Z INFO OpenVPN 2.5 version: 2.5.10
gluetun | 2025-11-29T02:11:06Z INFO OpenVPN 2.6 version: 2.6.16
gluetun | 2025-11-29T02:11:06Z INFO IPtables version: v1.8.11
gluetun | 2025-11-29T02:11:06Z INFO Settings summary:
gluetun | ├── VPN settings:
gluetun | | ├── VPN provider settings:
gluetun | | | ├── Name: protonvpn
gluetun | | | ├── Server selection settings:
gluetun | | | | ├── VPN type: wireguard
gluetun | | | | ├── Countries: sweden
gluetun | | | | ├── Port forwarding only servers: yes
gluetun | | | | └── Wireguard selection settings:
gluetun | | | └── Automatic port forwarding settings:
gluetun | | | ├── Redirection listening port: disabled
gluetun | | | ├── Use code for provider: protonvpn
gluetun | | | ├── Forwarded port file path: /tmp/gluetun/forwarded_port
gluetun | | | └── Forwarded port up command: /bin/sh -c "REDACTED"
gluetun | | └── Wireguard settings:
gluetun | | ├── Private key: REDACTED
gluetun | | ├── Interface addresses:
gluetun | | | └── 10.2.0.2/32
gluetun | | ├── Allowed IPs:
gluetun | | | ├── 0.0.0.0/0
gluetun | | | └── ::/0
gluetun | | └── Network interface: tun0
gluetun | | └── MTU: 1320
gluetun | ├── DNS settings:
gluetun | | ├── Keep existing nameserver(s): no
gluetun | | ├── DNS server address to use: 127.0.0.1
gluetun | | ├── DNS forwarder server enabled: yes
gluetun | | ├── Upstream resolver type: dot
gluetun | | ├── Upstream resolvers:
gluetun | | | └── cloudflare
gluetun | | ├── Caching: yes
gluetun | | ├── IPv6: no
gluetun | | ├── Update period: every 24h0m0s
gluetun | | └── DNS filtering settings:
gluetun | | ├── Block malicious: yes
gluetun | | ├── Block ads: no
gluetun | | └── Block surveillance: no
gluetun | ├── Firewall settings:
gluetun | | └── Enabled: yes
gluetun | ├── Log settings:
gluetun | | └── Log level: info
gluetun | ├── Health settings:
gluetun | | ├── Server listening address: 127.0.0.1:9999
gluetun | | ├── Target addresses:
gluetun | | | ├── cloudflare.com:443
gluetun | | | └── github.com:443
gluetun | | ├── Small health check type: ICMP echo request
gluetun | | | └── ICMP target IPs:
gluetun | | | ├── 1.1.1.1
gluetun | | | └── 8.8.8.8
gluetun | | └── Restart VPN on healthcheck failure: yes
gluetun | ├── Shadowsocks server settings:
gluetun | | └── Enabled: no
gluetun | ├── HTTP proxy settings:
gluetun | | └── Enabled: no
gluetun | ├── Control server settings:
gluetun | | ├── Listening address: :8000
gluetun | | ├── Logging: yes
gluetun | | └── Authentication file path: /gluetun/auth/config.toml
gluetun | ├── Storage settings:
gluetun | | └── Filepath: /gluetun/servers.json
gluetun | ├── OS Alpine settings:
gluetun | | ├── Process UID: 1000
gluetun | | └── Process GID: 1000
gluetun | ├── Public IP settings:
gluetun | | ├── IP file path: /tmp/gluetun/ip
gluetun | | ├── Public IP data base API: ipinfo
gluetun | | └── Public IP data backup APIs:
gluetun | | ├── ifconfigco
gluetun | | ├── ip2location
gluetun | | └── cloudflare
gluetun | └── Version settings:
gluetun | └── Enabled: yes
gluetun | 2025-11-29T02:11:06Z INFO [routing] default route found: interface eth0, gateway 172.21.0.1, assigned IP 172.21.0.4 and family v4
gluetun | 2025-11-29T02:11:06Z INFO [routing] adding route for 0.0.0.0/0
gluetun | 2025-11-29T02:11:06Z INFO [firewall] setting allowed subnets...
gluetun | 2025-11-29T02:11:06Z INFO [routing] default route found: interface eth0, gateway 172.21.0.1, assigned IP 172.21.0.4 and family v4
gluetun | 2025-11-29T02:11:06Z INFO [dns] using plaintext DNS at address 1.1.1.1
gluetun | 2025-11-29T02:11:06Z INFO [healthcheck] listening on 127.0.0.1:9999
gluetun | 2025-11-29T02:11:06Z INFO [http server] read 1 roles from authentication file
gluetun | 2025-11-29T02:11:06Z INFO [http server] http server listening on [::]:8000
gluetun | 2025-11-29T02:11:06Z INFO [firewall] allowing VPN connection...
gluetun | 2025-11-29T02:11:06Z INFO [wireguard] Using available kernelspace implementation
gluetun | 2025-11-29T02:11:06Z INFO [wireguard] Connecting to 192.0.2.1:12345
gluetun | 2025-11-29T02:11:06Z INFO [wireguard] Wireguard setup is complete. Note Wireguard is a silent protocol and it may or may not work, without giving any error message. Typically i/o timeout errors indicate the Wireguard connection is not working.
gluetun | 2025-11-29T02:11:12Z INFO [dns] downloading hostnames and IP block lists
gluetun | 2025-11-29T02:11:16Z INFO [dns] DNS server listening on [::]:53
gluetun | 2025-11-29T02:11:17Z INFO [dns] ready
gluetun | 2025-11-29T02:11:18Z INFO [ip getter] Public IP address is 192.0.2.2 (REDACTED - source: ipinfo)
gluetun | 2025-11-29T02:11:20Z INFO [vpn] You are running on the bleeding edge of latest!
gluetun | 2025-11-29T02:11:20Z INFO [port forwarding] starting
gluetun | 2025-11-29T02:11:20Z INFO [port forwarding] gateway external IPv4 address is 192.0.2.2
gluetun | 2025-11-29T02:11:20Z INFO [port forwarding] port forwarded is 23456
gluetun | 2025-11-29T02:11:20Z INFO [firewall] setting allowed input port 23456 through interface tun0...
gluetun | 2025-11-29T02:11:20Z INFO [port forwarding] writing port file /tmp/gluetun/forwarded_port
gluetun | 2025-11-29T02:12:00Z ERROR [port forwarding] running up command: exit status 1
Share your configuration
services:
gluetun:
image: ghcr.io/qdm12/gluetun
container_name: gluetun
cap_add:
- NET_ADMIN
env_file:
# see .env file for environment variables
- .env
volumes:
- /etc/gluetun:/gluetun
devices:
- /dev/net/tun:/dev/net/tun
networks:
- web_custom # This network is created manually, not in a docker compose file
networks:
web_custom:
external: trueThe .env
VPN_SERVICE_PROVIDER=protonvpn
VPN_TYPE=wireguard
VPN_PORT_FORWARDING=on
VPN_PORT_FORWARDING_UP_COMMAND=REDACTED
VPN_PORT_FORWARDING_PROVIDER=protonvpn
WIREGUARD_PRIVATE_KEY=REDACTED
SERVER_COUNTRIES=Sweden
PORT_FORWARD_ONLY=on