Quentin McGaw
da65f3b016
Maintenance: generate Openvpn conf for 2.4 or 2.5
2021-05-23 17:40:14 +00:00
Quentin McGaw
a8c574219d
Fix: log level for TLS error from debug to warn
2021-05-23 16:24:04 +00:00
Quentin McGaw
a3751a77aa
Fix: log custom port only if set (PIA, Windscribe)
2021-05-19 17:53:11 +00:00
Quentin McGaw
4f521e4dcb
Feature: show Alpine version at start
2021-05-19 14:30:43 +00:00
Quentin McGaw
a9589d8d5b
Fix: only use Openvpn fast-io when using UDP
2021-05-18 23:46:20 +00:00
Quentin McGaw
13e75aaf20
Maintenance: upgrade to qdm12/dns v1.7.0
...
- Fix rebinding protection for IPv6 mapped IPv4 networks
- Use netaddr package for DNS blacklisting
2021-05-14 17:54:35 +00:00
Quentin McGaw
5dba91c9ab
Maintenance: qdm12/dns from v1.4.0 to v1.6.0
2021-05-14 14:07:17 +00:00
Quentin McGaw
7d6763cde7
Maintenance: upgrade golibs (affects logger)
2021-05-14 14:07:16 +00:00
Quentin McGaw
33253c0cfc
Fix: PIA port forwarding nil url map
2021-05-12 12:47:34 +00:00
Quentin McGaw
0099c06056
Hotfix: remove unused code
2021-05-12 00:57:00 +00:00
Quentin McGaw
cff5e693d2
Maintenance: shutdown order
...
- Order of threads to shutdown (control then tickers then health etc.)
- Rely on closing channels instead of waitgroups
- Move exit logs from each package to the shutdown package
2021-05-11 22:24:32 +00:00
Quentin McGaw
ccc7ad7cbd
Change: do not exit on Openvpn config error
2021-05-11 18:23:19 +00:00
Quentin McGaw
61e36d6aff
Maintenance: error wrapping of alpine package
2021-05-11 17:52:29 +00:00
Quentin McGaw
e8c8742bae
Maintenance: split each provider in a package
...
- Fix VyprVPN port
- Fix missing Auth overrides
2021-05-11 17:10:51 +00:00
Quentin McGaw
1cb93d76ed
Feature: only teardown routing if changes occurred
2021-05-10 22:16:26 +00:00
Quentin McGaw
c59ea781e3
Maintenance: Protocol selection as boolean in code
2021-05-10 18:18:12 +00:00
Quentin McGaw
810ff62c26
Maintenance: improve error codes in IP routing
2021-05-10 17:33:31 +00:00
Quentin McGaw
5a0418bba6
Feature: re-fetch PIA API to obtain more servers
2021-05-10 16:17:44 +00:00
Quentin McGaw
baf506ae27
Feature: multiple IP addresses per PIA server
2021-05-10 15:44:46 +00:00
Quentin McGaw
52ff03ae41
Feature: 3 IP addresses per Windscribe server
2021-05-10 14:34:42 +00:00
Quentin McGaw
2d95edf8ab
Feature: Filter VyprVPN servers by hostname, and:
...
- Extract if server supports TCP and UDP (never TCP now)
- Filter servers by protocol (unused for now)
2021-05-10 02:12:13 +00:00
Quentin McGaw
95b0fb81d6
Feature: Multiple IPs for each Torguard server
...
- Fallback on IP from configuration file if DNS resolution fails
- Download both TCP and UDP zip files to detect support for each
- Filter servers by supported network protocol
-
2021-05-10 01:48:52 +00:00
Quentin McGaw
eff65dce00
Feature: filter Surfshark servers by hostname
2021-05-10 01:24:46 +00:00
Quentin McGaw
6c1c069261
Feature: filter by hostname for PureVPN servers
...
- Record support for TCP and UDP for each hostname
- Fix: each hostname supports only TCP or UDP, not both
- Update PureVPN server information
2021-05-10 00:36:14 +00:00
Quentin McGaw
4fe1e062f2
Feature: filter PIA servers by hostname and name
2021-05-09 16:49:22 +00:00
Quentin McGaw
1fb0840e72
Maintenance: Privado server not found error
2021-05-09 16:32:59 +00:00
Quentin McGaw
689ddf8bf0
Maintenance: fix flakky ip unit test
2021-05-09 03:30:54 +00:00
Quentin McGaw
d243ac49f3
Fix #444 Mullvad servers filtering
2021-05-09 01:56:02 +00:00
Quentin McGaw
8407542600
Feature: filter by country, region and city for Privado
2021-05-09 00:51:34 +00:00
Quentin McGaw
a7a5cca8dd
Maintenance: parallelize IP information fetch
2021-05-08 23:37:32 +00:00
Quentin McGaw
d9a70fd094
Maintenance: improve publicip with Result struct
2021-05-08 23:30:29 +00:00
Quentin McGaw
248cc0d3d3
Feature: filter by name and hostname for NordVPN
2021-05-08 22:51:59 +00:00
Quentin McGaw
d7db105a2f
Fix: ProtonVPN SERVER_NAME
2021-05-08 19:32:16 +00:00
Quentin McGaw
2ec2f45c82
Feature: filter by hostname for Mullvad servers
2021-05-08 19:17:36 +00:00
Quentin McGaw
a34769ae02
Feature: filter by hostname for Cyberghost servers
2021-05-08 19:05:11 +00:00
Quentin McGaw
c0e4d805b1
Maintenance: storage package logTimeDiff function
2021-05-08 02:51:39 +00:00
Quentin McGaw
6770336274
Maintenance: add missing server merging logic
2021-05-08 01:15:49 +00:00
Quentin McGaw
8d431dbb34
Feature update all server information
2021-05-08 01:03:09 +00:00
Quentin McGaw
e8e7b83297
Maintenance: refactor servers updater code
...
- Require at least 80% of number of servers now to pass
- Each provider is in its own package with a common structure
- Unzip package with unzipper interface
- Openvpn package with extraction and download functions
2021-05-08 00:59:42 +00:00
Quentin McGaw
442340dcf2
Feature: create /gluetun if it does not exist
2021-05-06 21:10:28 +00:00
Quentin McGaw
91b037a335
Feature: update hardcoded servers for DNS resolution based VPN providers
2021-05-06 18:51:31 +00:00
Quentin McGaw
d5ef3de64c
Feature: more robust updater DNS resolution
...
- Parallel resolver to resolve multiple hosts
- Repeat resolver to repeat resolution for a single host
- Additional parameters for fault toleration
- Do not update servers if e.g. > 10% DNS resolutions failed
- resolver package in updater package
2021-05-06 18:48:14 +00:00
Quentin McGaw
167a0b0b29
Restart unhealthy ( #417 ) ( #441 )
2021-05-04 15:36:12 -04:00
Quentin McGaw
954e3c70b2
Feature: Protonvpn support ( #437 clone on #434 )
2021-04-25 15:44:45 -04:00
Quentin McGaw
b02a80abbd
Feature: update PIA server information
2021-04-24 13:54:13 +00:00
Quentin McGaw
fb8279f8f0
Fix: remove pull-filter ignore ping-restart
2021-04-19 19:51:00 +00:00
Quentin McGaw
e0e56595c6
Fix: only run ip6tables if it is supported by the Kernel ( #431 )
...
- Fix #430
2021-04-19 14:35:29 -04:00
Quentin McGaw
44d8cf9d4e
Replace Surfshark default cipher with aes 256 gcm
2021-04-19 18:00:58 +00:00
Quentin McGaw
282c1e53ec
Clear firewall rules on shutdown, fix #276
2021-04-19 14:27:38 +00:00
Quentin McGaw
7ba98af1cc
Feature/Bugfix: IPv6 blocking ( #428 )
...
- Feature/Bugfix: Block all IPv6 traffic with `ip6tables` by default
- Feature: Adapt existing firewall code to handle IPv4 and IPv6, depending on user inputs and environment
- Maintenance: improve error wrapping in the firewall package
2021-04-19 09:24:46 -04:00