mirror of
https://github.com/qdm12/gluetun.git
synced 2025-12-10 00:09:53 -06:00
135 lines
8.2 KiB
Markdown
135 lines
8.2 KiB
Markdown
# Gluetun VPN client
|
|
|
|
⚠️ This and [gluetun-wiki](https://github.com/qdm12/gluetun-wiki) are the only websites for Gluetun, other websites claiming to be official are scams ⚠️
|
|
|
|
Lightweight swiss-army-knife-like VPN client to multiple VPN service providers
|
|
|
|

|
|
|
|
[](https://github.com/qdm12/gluetun/actions/workflows/ci.yml)
|
|
|
|
[](https://hub.docker.com/r/qmcgaw/gluetun)
|
|
[](https://hub.docker.com/r/qmcgaw/gluetun)
|
|
|
|
[](https://hub.docker.com/r/qmcgaw/gluetun)
|
|
[](https://hub.docker.com/r/qmcgaw/gluetun)
|
|
|
|

|
|

|
|
[](https://hub.docker.com/r/qmcgaw/gluetun/tags?page=1&ordering=last_updated)
|
|

|
|

|
|
|
|
[](https://hub.docker.com/r/qmcgaw/gluetun/tags)
|
|
|
|
[](https://github.com/qdm12/gluetun/commits/master)
|
|
[](https://github.com/qdm12/gluetun/graphs/contributors)
|
|
[](https://github.com/qdm12/gluetun/pulls?q=is%3Apr+is%3Aclosed)
|
|
[](https://github.com/qdm12/gluetun/issues)
|
|
[](https://github.com/qdm12/gluetun/issues?q=is%3Aissue+is%3Aclosed)
|
|
|
|

|
|

|
|

|
|
|
|

|
|
|
|
## Quick links
|
|
|
|
- [Setup](#setup)
|
|
- [Features](#features)
|
|
- Problem?
|
|
- Check the Wiki [common errors](https://github.com/qdm12/gluetun-wiki/tree/main/errors) and [faq](https://github.com/qdm12/gluetun-wiki/tree/main/faq)
|
|
- [Start a discussion](https://github.com/qdm12/gluetun/discussions)
|
|
- [Fix the Unraid template](https://github.com/qdm12/gluetun/discussions/550)
|
|
- Suggestion?
|
|
- [Create an issue](https://github.com/qdm12/gluetun/issues)
|
|
- Happy?
|
|
- Sponsor me on [github.com/sponsors/qdm12](https://github.com/sponsors/qdm12)
|
|
- Donate to [paypal.me/qmcgaw](https://www.paypal.me/qmcgaw)
|
|
- Drop me [an email](mailto:quentin.mcgaw@gmail.com)
|
|
- **Want to add a VPN provider?** check [the development page](https://github.com/qdm12/gluetun-wiki/blob/main/contributing/development.md) and [add a provider page](https://github.com/qdm12/gluetun-wiki/blob/main/contributing/add-a-provider.md)
|
|
- Video:
|
|
|
|
[](https://youtu.be/0F6I03LQcI4)
|
|
|
|
- [Substack Console interview](https://console.substack.com/p/console-72)
|
|
|
|
## Features
|
|
|
|
- Based on Alpine 3.22 for a small Docker image of 41.1MB
|
|
- Supports: **AirVPN**, **Cyberghost**, **ExpressVPN**, **FastestVPN**, **Giganews**, **HideMyAss**, **IPVanish**, **IVPN**, **Mullvad**, **NordVPN**, **Perfect Privacy**, **Privado**, **Private Internet Access**, **PrivateVPN**, **ProtonVPN**, **PureVPN**, **SlickVPN**, **Surfshark**, **TorGuard**, **VPNSecure.me**, **VPNUnlimited**, **Vyprvpn**, **WeVPN**, **Windscribe** servers
|
|
- Supports OpenVPN for all providers listed
|
|
- Supports Wireguard both kernelspace and userspace
|
|
- For **AirVPN**, **FastestVPN**, **Ivpn**, **Mullvad**, **NordVPN**, **Perfect privacy**, **ProtonVPN**, **Surfshark** and **Windscribe**
|
|
- For **Cyberghost**, **Private Internet Access**, **PrivateVPN**, **PureVPN**, **Torguard**, **VPN Unlimited**, **VyprVPN** and **WeVPN** using [the custom provider](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/custom.md)
|
|
- For custom Wireguard configurations using [the custom provider](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/custom.md)
|
|
- More in progress, see [#134](https://github.com/qdm12/gluetun/issues/134)
|
|
- DNS over TLS baked in with service provider(s) of your choice
|
|
- DNS fine blocking of malicious/ads/surveillance hostnames and IP addresses, with live update every 24 hours
|
|
- Choose the vpn network protocol, `udp` or `tcp`
|
|
- Built in firewall kill switch to allow traffic only with needed the VPN servers and LAN devices
|
|
- Built in Shadowsocks proxy server (protocol based on SOCKS5 with an encryption layer, tunnels TCP+UDP)
|
|
- Built in HTTP proxy (tunnels HTTP and HTTPS through TCP)
|
|
- [Connect other containers to it](https://github.com/qdm12/gluetun-wiki/blob/main/setup/connect-a-container-to-gluetun.md)
|
|
- [Connect LAN devices to it](https://github.com/qdm12/gluetun-wiki/blob/main/setup/connect-a-lan-device-to-gluetun.md)
|
|
- Compatible with amd64, i686 (32 bit), **ARM** 64 bit, ARM 32 bit v6 and v7, and even ppc64le 🎆
|
|
- Custom VPN server side port forwarding for [Perfect Privacy](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/perfect-privacy.md#vpn-server-port-forwarding), [Private Internet Access](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/private-internet-access.md#vpn-server-port-forwarding), [PrivateVPN](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/privatevpn.md#vpn-server-port-forwarding) and [ProtonVPN](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/protonvpn.md#vpn-server-port-forwarding)
|
|
- Possibility of split horizon DNS by selecting multiple DNS over TLS providers
|
|
- Can work as a Kubernetes sidecar container, thanks @rorph
|
|
|
|
## Setup
|
|
|
|
🎉 There are now instructions specific to each VPN provider with examples to help you get started as quickly as possible!
|
|
|
|
Go to the [Wiki](https://github.com/qdm12/gluetun-wiki)!
|
|
|
|
[🐛 Found a bug in the Wiki?!](https://github.com/qdm12/gluetun-wiki/issues/new/choose)
|
|
|
|
Here's a docker-compose.yml for the laziest:
|
|
|
|
```yml
|
|
---
|
|
services:
|
|
gluetun:
|
|
image: qmcgaw/gluetun
|
|
# container_name: gluetun
|
|
# line above must be uncommented to allow external containers to connect.
|
|
# See https://github.com/qdm12/gluetun-wiki/blob/main/setup/connect-a-container-to-gluetun.md#external-container-to-gluetun
|
|
cap_add:
|
|
- NET_ADMIN
|
|
devices:
|
|
- /dev/net/tun:/dev/net/tun
|
|
ports:
|
|
- 8888:8888/tcp # HTTP proxy
|
|
- 8388:8388/tcp # Shadowsocks
|
|
- 8388:8388/udp # Shadowsocks
|
|
volumes:
|
|
- /yourpath:/gluetun
|
|
environment:
|
|
# See https://github.com/qdm12/gluetun-wiki/tree/main/setup#setup
|
|
- VPN_SERVICE_PROVIDER=ivpn
|
|
- VPN_TYPE=openvpn
|
|
# OpenVPN:
|
|
- OPENVPN_USER=
|
|
- OPENVPN_PASSWORD=
|
|
# Wireguard:
|
|
# - WIREGUARD_PRIVATE_KEY=wOEI9rqqbDwnN8/Bpp22sVz48T71vJ4fYmFWujulwUU=
|
|
# - WIREGUARD_ADDRESSES=10.64.222.21/32
|
|
# Timezone for accurate log times
|
|
- TZ=
|
|
# Server list updater
|
|
# See https://github.com/qdm12/gluetun-wiki/blob/main/setup/servers.md#update-the-vpn-servers-list
|
|
- UPDATER_PERIOD=
|
|
```
|
|
|
|
🆕 Image also available as `ghcr.io/qdm12/gluetun`
|
|
|
|
## Fun graphs
|
|
|
|
[](https://www.star-history.com/#qdm12/gluetun&type=date&legend=top-left)
|
|
|
|
## License
|
|
|
|
[](https://github.com/qdm12/gluetun/blob/master/LICENSE)
|