chore(deps): update docker.io/qmcgaw/gluetun docker tag to v3.40.0 #103
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
v3.34.3
->v3.40.0
Warning
Some dependencies could not be looked up. Check the warning logs for more information.
Release Notes
qdm12/gluetun (docker.io/qmcgaw/gluetun)
v3.40.0
Compare Source
Happy holidays release time 🎄 🎅 🎁
💁 If anything doesn't work compared to previous release, please create an issue and revert to using v3.39.1 😉
ℹ️ Life is pretty busy all around currently (moving soon, new job, ill parent) so I might be even slower than usual until summer 2025, I'll do my best!
Features
WaitForDNS
before querying the public ip address (partly address #2325)VPN_PORT_FORWARDING_UP_COMMAND
option (#2399)VPN_PORT_FORWARDING_DOWN_COMMAND
optionconnection refused
error is encountered (partly address #2325)echoip#https://...
(#2529)ifconfigco
option andcloudflare
option (#2502)PUBLICIP_ENABLED
replacesPUBLICIP_PERIOD
PUBLICIP_ENABLED
(on, off) can be set to enable or not public ip data fetching on VPN connectionPUBLICIP_PERIOD=0
still works to indicate to disable public ip fetchingPUBLICIP_PERIOD
!= 0 means to enable public ip fetchingPUBLICIP_PERIOD
STORAGE_FILEPATH
option (#2416)STORAGE_FILEPATH=
disables storing to and reading from a local servers.json fileSTORAGE_FILEPATH
defaults to/gluetun/servers.json
internal/tun
: mention in 'operation not permitted' error the user should specify--device /dev/net/tun
(resolves #2606)genkey
command to generate API keysaes-256-gcm
to OpenVPN ciphers listformat-servers
command supports the json format optionFixes
WIREGUARD_MTU
from1400
to1320
(partially address #2533)-n
flag for testing iptables path (#2574)comp-lzo
optionDocumentation
OPENVPN_MSSFIX
environment variableSTREAM_ONLY
FREE_ONLY
PORT_FORWARD_ONLY
is for both PIA and ProtonVPNMaintenance
Code quality
github.com/qdm12/golibs/command
locally (#2418)internal/natpmp
: fix determinism for testTest_Client_ExternalAddress
internal/routing
: remove redundantrule ip rule
in error messagesinternal/netlink
debug log ip rule commands in netlink instead of routing packageinternal/server
: move log middleware tointernal/server/middlewares/log
gofumpt
for code formattingexecinquery
andexportloopref
goerr113
toerr113
andgomnd
tomnd
canonicalheader
,copyloopvar
,fatcontext
,intrange
Dependencies
VPN_PORT_FORWARDING_UP_COMMAND
CI
canonicalheader
since it's not reliable--device /dev/net/tun
for test containerDevelopment setup
:v0.20-alpine
devcontainer.json
settings directlyv3.39.1
Compare Source
🎥 https://youtu.be/O09rP1DlcFU?si=qPdzWUWnzciNxAc7
Fixes
internal/storage
: add missing selection fields to buildnoServerFoundError
(see #2470)v3.39.0
Compare Source
🎥 Youtube video explaining all this
Features
iptables
)iptables-nft
overiptables-legacy
(Alpine new default is nft backend iptables)WIREGUARD_PERSISTENT_KEEPALIVE_INTERVAL
optionVPN_PORT_FORWARDING=on
(applies only to PIA and ProtonVPN for now)SERVER_CITY
VPN_PORT_FORWARDING=on
(#2378)VPN_PORT_FORWARDING_USERNAME
andVPN_PORT_FORWARDING_PASSWORD
(retro-compatible withOPENVPN_USER
andOPENVPN_PASSWORD
)SECURE_CORE_ONLY
,TOR_ONLY
andPORT_FORWARD_ONLY
(#2182)VPN_ENDPOINT_IP
split intoOPENVPN_ENDPOINT_IP
andWIREGUARD_ENDPOINT_IP
VPN_ENDPOINT_PORT
split intoOPENVPN_ENDPOINT_PORT
andWIREGUARD_ENDPOINT_PORT
Fixes
VPN_PORT_FORWARDING_LISTENING_PORT
fixedport
option line for OpenVPNN / A
with no data for serversinternal/server
:/openvpn
route status get and putPORT_FORWARD_ONLY
is enabled in the server filtering tree of settingsformat-servers
fixed missing VPN type header for providers supporting Wireguard: NordVPN and Surfsharkinternal/tun
: only create tun device if it does not exist, do not create if it exists and does not workDocumentation
/choose
suffix to github links in logsFIREWALL_ENABLED
toFIREWALL_ENABLED_DISABLING_IT_SHOOTS_YOU_IN_YOUR_FOOT
due to the sheer amount of users misusing it.FIREWALL_ENABLED
won't do anything anymore. At least you've been warned not to use it...Maintenance
internal/config
:github.com/qdm12/gosettings
v0.4.2github.com/qdm12/govalid
dependencygithub.com/qdm12/ss-server
to v0.6.0CONTROL_SERVER_ADDRESS
andCONTROL_SERVER_PORT
internal/portforward
: support multiple ports forwardedinternal/tun
: fix unit test for unprivileged usersource.organizeImports
vscode setting value/choose
suffix to issue and discussion linksv3.38.1
Compare Source
ℹ️ This is a bugfix release for v3.38.0. If you can, please instead use release v3.39.0
Fixes
VPN_PORT_FORWARDING_LISTENING_PORT
fixedport
option line for OpenVPNN / A
with no data for serversinternal/server
:/openvpn
route status get and putPORT_FORWARD_ONLY
is enabled in the server filtering tree of settingsformat-servers
fixed missing VPN type header for providers supporting Wireguard: NordVPN and Surfsharkinternal/tun
: only create tun device if it does not exist, do not create if it exists and does not workv3.38.0
Compare Source
Features
PUBLICIP_API_TOKEN
variablePUBLICIP_API
variable supportingipinfo
andip2location
PORT_FORWARD_ONLY
variable (#2070)SERVER_CATEGORIES
(#1806)/run/secrets/wg0.conf
which can be changed with variableWIREGUARD_CONF_SECRETFILE
0.0.0.0/0
or::/0
) for outbound subnetsFixes
STREAM_ONLY
behavior fixed (#2126)Maintenance
v3.37.1
Compare Source
ℹ️ This is a bugfix release for v3.37.0. If you can, please instead use the newer v3.39.0 release.
Fixes
VPN_PORT_FORWARDING_LISTENING_PORT
fixedSTREAM_ONLY
behavior fixed (#2126)port
option line for OpenVPNN / A
with no data for serversinternal/server
:/openvpn
route status get and putformat-servers
fixed missing VPN type header for providers supporting Wireguard: NordVPN and Surfsharkinternal/tun
: only create tun device if it does not exist, do not create if it exists and does not workPS: sorry for re-releasing this one 3 times, CI has been capricious with passing
v3.37.0
Compare Source
🎉 🎆 Happy new year 2024 🎉 🎆 Personal note at the bottom 😉
Features
VPN_PORT_FORWARDING_LISTENING_PORT
Fixes
tcp-client
protocol astcp
DEFAULT:@​SECLEVEL=0
server name
header for PIAMaintenance
Personal note on the state of Gluetun
I have been focusing my effort since mid November on a DNSSEC validator to finalize a Go library on par with the usage we have of Unbound, in order to replace Unbound in Gluetun and add DNS special features for Gluetun. For example:
This is a tough problem not so well documented with few complete and valid implementations, so it's taking some time. There is likely 2 more weeks of work left before finalization.
v3.36.0
Compare Source
🎃 Happy Halloween 🎃 Hopefully it is not a spooky release! 😸
Features
WIREGUARD_ALLOWED_IPS
variable (#1291)/gluetun/wireguard/wg0.conf
(#1120)VPN_PORT_FORWARDING_PROVIDER
variable (#1616)-minratio
if not enough servers are found/32
if not present for Wireguard addressesFixes
DNS_KEEP_NAMESERVER
leaves DNS fully untouchedupdate
command uses dashes instead of spaces for provider names (i.e.-vpn\ unlimited
->-vpn-unlimited
)aes-256-gcm
cipher for OpenVPNVPNLocalGatewayIP
Wireguard supportDocumentation
UPDATER_VPN_SERVICE_PROVIDERS
in docker-compose configMaintenance
OPENVPN_PROCESS_USER
value defaults toroot
HTTPPROXY_STEALTH=off
HTTP_CONTROL_SERVER_LOG=on
internal/settings
: change source precedence order: Secret files then files then environment variablesinternal/routing
: WrapsetupIPv6
rule error correctlyinternal/vpn
: fix typoportForwader
->portForwarder
internal/provider
: use type assertion for port forwardersMarkdown
*.md
files onlyv3.35.0
Compare Source
➡️ 📖 Corresponding wiki
Features
WIREGUARD_MTU
enviromnent variable (#1571)OPENVPN_VERSION=2.6
supportFixes
RouteList
list routes from all tables and does no longer filter by linkAddrReplace
instead ofAddrAdd
Documentation
Maintenance
Code
internal/routing
:IPIsPrivate
asipIsPrivate
VPNDestinationIP
internal/settings
: usegithub.com/qdm12/gosettings
FileExists
,ObfuscateKey
,BoolToYesNo
gosettings/sources/env
functionsinternal/netlink
:github.com/vishvananda/netlink
internal/httpproxy
: addTest_returnRedirect
to prevent error wrap ofErrUseLastResponse
internal/settings/secrets
: add test forreadSecretFileAsStringPtr
Dependencies
CI
Development tooling
linux
for cross development.vscode
recommendationsdupword
,paralleltest
,gosmopolitan
,mirror
,tagalign
,zerologlint
andgocheckcompilerdirectives
musttag
and fix lint errors (change JSON fields in control server)Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Renovate Bot.