Skip to content

Releases: qdm12/gluetun

v3.10.4 - Empty connection fix for NordVPN and Windscribe

31 Jan 18:54
Compare
Choose a tag to compare
Fix: Empty connections for NordVPN and Windscribe

v3.12.1: Revert to Alpine 3.12 for 32 bit systems

31 Jan 00:45
Compare
Choose a tag to compare

Revert back to Alpine 3.12 and Openvpn 2.4.10-r0 to fix Openvpn TLS issues with time due to the Alpine 3.13 upgrade.

v3.12.0 Upgrade to Alpine 3.13 and Openvpn ping fixes

23 Jan 17:06
Compare
Choose a tag to compare

Features

  • Upgrade Alpine to 3.13
  • Set a 10s ping with a 60s exit ping for all openvpn configurations, so that openvpn exits and restarts if it does not receive a ping for 60s
  • Openvpn exits if it encounters a TLS issue. It will then be restarted by the entrypoint program.
  • OPENVPN_MSSFIX environment variable
  • Upgrade Openvpn to 2.5.0

Servers

  • Update Nordvpn hardcoded servers list

Bug fixes

  • Openvpn restart loop because of ping-restart options, now replaced by ping-exit.

Documentation

  • Most documentation moved to the Wiki (reached the Docker hub readme limit of 25KB)

Maintenance

  • Configure dependabot to monitor go modules and docker dependencies
  • Update and improve development container configuration
  • Update golibs and its params package
  • OpenVPN BuildConf arity reduced
  • Unit test internal/provider/utils.go
  • Update golangci-lint to v1.35.2

CI

  • All build workflows merged into a single yml configuration file
  • Go mod tidy check
  • Remove duplicate COPY in Dockerfile
  • Fix xcputranslate version and uage
  • Set default BUILDPLATFORM=linux/amd64 in Dockerfile for older Docker CLIs

v3.11.1 Fix DNS_KEEP_NAMESERVER behavior

06 Jan 21:58
Compare
Choose a tag to compare
Fix: DNS_KEEP_NAMESERVER

v3.11.0 small stability improvements

06 Jan 04:02
69713f3
Compare
Choose a tag to compare

Bug fixes

  • Unbound log lines processing (showing an ERROR where it was an INFO level)

Features

  • Log healthcheck: passed once the healthcheck succeeds after a failed attempt
  • Unbound now serves clients from any IP address and not just localhost (access-control: 0.0.0.0/0 allow)
  • Improved logging of DNS settings
  • s390x and ppc64le CPU architectures supported

Code maintenance

Continuous integration

  • Test, lint and build using the native builder CPU architecture only even for cross CPU architecture builds, speeding up builds from 15 minutes to about 5 minutes.
  • Change workflow structure and Dockerfile structure, 'glued' together using Docker Buildkit and target images.
  • Remove microbadger hooks for branch and release workflows
  • Dependabot for Github actions added

v3.10.3 Fix DNS_KEEP_NAMESERVER behavior

06 Jan 22:00
Compare
Choose a tag to compare
Fix: DNS_KEEP_NAMESERVER

v3.10.2 Fix DNS_KEEP_NAMESERVER behavior

03 Jan 16:39
Compare
Choose a tag to compare

Bug fixes to v3.10.0 (the big december refactor)

02 Jan 23:59
Compare
Choose a tag to compare

v3.10.0 The Big December Refactor

02 Jan 18:29
Compare
Choose a tag to compare

Features

  • Docker secrets
  • qmcgaw/gluetun Docker image name
  • Faster healthcheck, the container should be healthy as soon as it connects almost
  • Change redundant dns over tls: DNS over TLS ready to dns over tls: ready
  • Update PIA servers using their v5 API
  • Two-fold increasing backoff sleep times on crashes for every subprocess/thread.
  • PureVPN server information updated

Bug fixes

  • PureVPN updater fixed
  • Plaintext DNS fix
  • Privado settings logging fixed
  • Privado server selection
  • Healthcheck uses DNS over TLS instead of default resolver (maybe a bug fix)
  • PublicIP loop exit bug fixed
  • Updater loop exit bug fixed
  • Updater loop stop action deadlock fixed
  • Program exit bug when openvpn crashes
  • servers.json merging with different versions
  • DNS SetSettings missing mutex unlocking
  • Do not fail if servers.json is emty

Changes

Breaking

  • Remove undocumented CLIENT_KEY environment variable (for Cyberghost only)
  • Remove decommissioned SecureDNS DOT provider

Non breaking

  • Rename UID and GID to PUID and PGID so that they don't conflict with already set variables (but retrocompatible)
  • Rename USER to OPENVPN_USER (but retrocompatiblity maintained)
  • Rename PASSWORD to OPENVPN_PASSWORD (but retrocompatiblity maintained)
  • Rename HOSTNAME to SERVER_HOSTNAME (but retrocompatiblity maintained) to avoid conflict with OS-set HOSTNAME variable

Documentation

  • Most of the readme is moved to the Wiki (running out of the 25KB allowed!)
  • Remove videos section (outdated)
  • Add quick links section for help and support
  • Simplify support section
  • More badges and metadata
  • Update Docker image labels

Code maintenance

Go code

  • Updater: Ovpn host extraction reworked
  • HTTP proxy and Shadowsocks proxy loops reworked to be more resilient and 'REST' oriented
  • Custom OS package for OS operations: filesystem, environment variables, users, etc.
  • Stream oriented JSON encoding and decoding for files and HTTP requests/responses.
  • Use native http.Client instead of custom client for better compatibility across repositories / easier reading for new devs
  • Unix abstraction package (to create the TUN device)
  • CLI interface abstraction
  • Remove unneeded defaultInterface in Shadowsocks
  • Updater loop waitgroup
  • Params package: use built-in Unset() option instead of os.Unsetenv function
  • Unit tests: remove unneeded .Times(1) and ctrl.Finish()
  • Upgrade dependencies

Dockerfile

  • Upgrade golangci-lint to v1.34.1

CI

  • Microbadger hooks use continue-on-error: true in CI
  • Upgrade docker hub readme sync workflow
  • Upgrade buildx from 1 to v3

v3.9.0 Newer versioned HTTP control server & bug fixes

28 Dec 02:42
Compare
Choose a tag to compare

Features

  • New versioned HTTP control server at URI /v1 (retro compatible with older routes)
  • Openvpn, DNS and updater status getting and setting
  • Re use username with the UID set in the env variable UID if it exists instead of creating one
  • Public IP endpoint at /v1/publicip/ip

Bug fixes

  • Updater periodic trigger fix
  • Fix settings logging of PureVPN mixing with Mullvad
  • Add block-outside-dns to pull filter for Surfshark Openvpn servers

Coding and maintenance

  • Openvpn, DNS, Updater and public IP loops reworked
  • Github workflows build simplified
  • Development container simplified and documented
  • Upgrade Golangci-lint to v1.33.0

Documentation

  • 256x256 logo for Unraid
  • Fix PureVPN environment variables table