Commit Graph

1163 Commits

Author SHA1 Message Date
Quentin McGaw
7fdc7de210 feat(ipv6): use ipv6 endpoint IPs if supported 2022-09-12 21:31:37 +00:00
Quentin McGaw
dd7630997b fix(vpnsecure): allow empty OpenVPN user+password 2022-09-10 14:46:17 +00:00
Quentin McGaw
aba5ca4536 fix(cyberghost): remove outdated server groups
- Remove `94-1` pemium udp usa
- Remove `95-1` premium udp asia
- Remove `93-1` pemium udp usa
- Remove `96-1` premium tcp asia
- Update servers data
2022-09-08 12:19:12 +00:00
Quentin McGaw
7506625f40 chore(tests): fix netlink test for previous crash 2022-09-06 12:17:51 +00:00
Quentin McGaw
5ddd703f6a feat(vpn): auto detection of IPv6 support
- `OPENVPN_IPV6` removed
- Affects OpenVPN
- Use the same mechanism for OpenVPN and Wireguard
- Check only once at program start since this is unlikely to change at runtime
- Log if IPv6 is supported
- Remove `IPv6` boolean from settings structs
- Move IPv6 detection as a method on NetLinker
2022-09-06 12:16:29 +00:00
Quentin McGaw
71c51a7455 chore(provider/utils): do not check for empty wg keys 2022-09-05 15:50:02 +00:00
Quentin McGaw
284d4340b1 fix(tests): fix netlink wireguard test 2022-09-05 15:23:31 +00:00
Quentin McGaw
2c1281d0a2 hotfix(tests): panic tests for previous commit 2022-09-05 15:04:43 +00:00
Stijn Hoop
532df9f8d4 fix(privateinternetaccess): get token for port forwarding (#1132) 2022-09-05 08:01:48 -07:00
Quentin McGaw
45b7da1058 chore(dev): improve missing provider panic string 2022-09-05 14:51:30 +00:00
Quentin McGaw
e59e28152f fix(ivpn): update mechanism for Wireguard servers 2022-09-02 00:36:13 +00:00
Quentin McGaw
2fe0594db7 feat(servers): update ProtonVPN servers data 2022-08-30 11:44:34 +00:00
Quentin McGaw
e583f9de47 fix(codeql): fix integer parsing (false positive) 2022-08-27 16:45:29 +00:00
Quentin McGaw
8570e09eb9 chore(config): rename Reader to Source struct 2022-08-26 15:40:35 +00:00
Quentin McGaw
ae5cba519c chore(config): define Source interface locally where needed 2022-08-26 15:03:59 +00:00
Quentin McGaw
26f3832187 chore(config): rename mux source to merge 2022-08-26 14:59:35 +00:00
Quentin McGaw
5989f29035 feat(surfshark): Wireguard support (#587) 2022-08-26 07:55:46 -07:00
Quentin McGaw
4ace99f318 chore(servers): remove "udp": true for Wireguard 2022-08-25 13:24:22 +00:00
Quentin McGaw
d1c5e00df8 fix(updater): error when server has not the minimal information 2022-08-25 13:23:27 +00:00
Quentin McGaw
5eacb46226 feat(servers): update servers data for Ivpn, Mullvad and Windscribe 2022-08-25 13:05:20 +00:00
Quentin McGaw
6c17612310 chore(filter): no network protocol filter for Wireguard 2022-08-25 13:03:58 +00:00
Quentin McGaw
fba73a0a0f fix(settings): OPENVPN_CUSTOM_CONFIG precedence for custom provider only if VPN_SERVICE_PROVIDER is empty 2022-08-25 04:01:17 +00:00
Quentin McGaw
5914cb0e37 chore(build): bump Go from 1.17 to 1.18
- Unneeded disabled linters are: `rowserrcheck`, `sqlclosecheck`
- Disabled linter is `wastedassign` which is tolerable
2022-08-24 21:54:08 +00:00
Quentin McGaw
aa53436e56 chore(lint): upgrade golangci-lint to v1.49.0
- Add linter `interfacebloat` and fix code issues
- Add linter `reassign`
- Remove deprecated linter `nosnakecase`
2022-08-24 21:48:24 +00:00
Quentin McGaw
8dfaebc737 chore(all): remove deprecated io/ioutil import 2022-08-24 21:43:37 +00:00
Quentin McGaw
062b6a276c fix(settings): read PEM files but b64 env vars
- Extract base64 data from PEM files and secret files
- Environment variables are not PEM encoded and only the base64 data
- Affects OpenVPN certificate, key and encrypted key
2022-08-24 17:48:45 +00:00
Quentin McGaw
647cd07de7 feat(surfshark): update servers data 2022-08-24 13:04:34 +00:00
Quentin McGaw
a530c84c5f fix(surshark): remove invalid retro-servers 2022-08-24 13:04:18 +00:00
Quentin McGaw
0bb320065e feat(server): patch VPN settings
- `PUT` at `/v1/vpn/settings`
- Undocumented, experimental for now
2022-08-21 23:36:48 +00:00
Quentin McGaw
d685d78e74 feat(server): add vpn route to replace /openvpn 2022-08-21 23:29:25 +00:00
Quentin McGaw
48896176e5 chore(server): do not redact openvpn credentials from response 2022-08-21 22:04:04 +00:00
Quentin McGaw
54dcf28b31 chore(server): replace 404 with 401 for unsupported routes and methods 2022-08-21 22:02:06 +00:00
Quentin McGaw
a182e3503b feat: add VPNsecure.me support (#848)
- `OPENVPN_ENCRYPTED_KEY` environment variable 
- `OPENVPN_ENCRYPTED_KEY_SECRETFILE` environment variable 
- `OPENVPN_KEY_PASSPHRASE` environment variable 
- `OPENVPN_KEY_PASSPHRASE_SECRETFILE` environment variable 
- `PREMIUM_ONLY` environment variable
- OpenVPN user and password not required for vpnsecure provider
2022-08-15 16:54:58 -07:00
Richard Hodgson
d0dfc21e2b feat: SlickVPN Support (#961)
- `internal/updater/html` package
- Add unit tests for slickvpn updating code
- Change shared html package to be more share-able
- Split html utilities in multiple files
- Fix processing .ovpn files with prefix space

Authored by @Rohaq 
Co-authored-by: Quentin McGaw <quentin.mcgaw@gmail.com>
2022-08-15 08:25:06 -07:00
Quentin McGaw
8db2944749 chore(settings): OpenVPN ClientCrt -> Cert 2022-08-13 18:59:07 +00:00
Quentin McGaw
5986432a22 chore(settings): OpenVPN ClientKey -> Key 2022-08-13 18:58:09 +00:00
Quentin McGaw
652daec509 Change: OPENVPN_CLIENTKEY -> OPENVPN_KEY
- No breaking change since this was undocumented
2022-08-13 18:56:37 +00:00
Quentin McGaw
f94d4b761a Change: OPENVPN_CLIENTCRT -> OPENVPN_CERT
- No breaking change since this was undocumented
2022-08-13 18:55:29 +00:00
Quentin McGaw
1ab74e6bb3 chore: OpenVPN user and password as nullable
- Username and password can be the empty string for custom provider
2022-08-13 18:01:26 +00:00
Quentin McGaw
ebae167815 chore(lint): golangci-lint v1.47.2 -> v1.48.0
- Remove deprecated `ifshort` linter
- Fix bad `//nolint:gomnd` comment
2022-08-12 23:52:30 +00:00
Quentin McGaw
a6f00f2fb2 chore(lint): upgrade golangci-lint to v1.47.2
- Fix Slowloris attacks on HTTP servers
- Force set default of 5 minutes for pprof read timeout
- Change `ShutdownTimeout` to time.Duration since it cannot be set to 0
2022-08-01 21:09:16 +00:00
Quentin McGaw
2800588ef7 feat(expressvpn): update servers data 2022-07-18 18:01:08 +00:00
Quentin McGaw
dbb71bd695 chore(mocks): use common mocks for ivpn and ipvanish 2022-07-04 00:34:48 +00:00
Quentin McGaw
420ae40901 feat(dev): Add provider example package 2022-07-02 21:04:57 +00:00
Quentin McGaw
34e67f9f99 chore(markdown): alphabetically sorted headers 2022-07-02 20:58:43 +00:00
Quentin McGaw
6d2f9b9508 chore(updater): check servers have minimal information 2022-07-02 20:58:43 +00:00
Quentin McGaw
6826b05d58 chore(all): remove all package comments 2022-07-02 20:58:43 +00:00
barino28
9f959dbc6a fix(expressvpn): OpenVPN fragment option and add ciphers (#1047)
* Fragment was defined in `OpenVPNProviderSettings` but was not written to the OpenVPN configuration file.
* Added two additional ciphers to the configuration for ExpressVPN

Authored-by: barino86 <barino@mac.com>
2022-06-29 05:23:16 -07:00
Quentin McGaw
87dbae5745 hotfix(fastestvpn): re-fix Openvpn configuration
- add `auth sha256` option
- remove `remote-cert-tls server` option
2022-06-26 21:29:05 +00:00
Quentin McGaw
037f19e852 hotfix(publicip): revert back JSON to public_ip 2022-06-26 18:08:11 +00:00