diff --git a/internal/provider/cyberghost/openvpnconf.go b/internal/provider/cyberghost/openvpnconf.go index e497eadb..ba4874ac 100644 --- a/internal/provider/cyberghost/openvpnconf.go +++ b/internal/provider/cyberghost/openvpnconf.go @@ -22,13 +22,16 @@ func (c *Cyberghost) BuildConf(connection models.Connection, lines = []string{ "client", - "dev " + settings.Interface, "nobind", - "remote-cert-tls server", "tls-exit", + "dev " + settings.Interface, + "verb " + strconv.Itoa(settings.Verbosity), // Cyberghost specific "ping 10", + "remote-cert-tls server", + "auth-user-pass " + constants.OpenVPNAuthConf, + "auth " + settings.Auth, // Added constant values "auth-nocache", @@ -37,12 +40,9 @@ func (c *Cyberghost) BuildConf(connection models.Connection, "auth-retry nointeract", "suppress-timestamps", - // Modified variables - "verb " + strconv.Itoa(settings.Verbosity), - "auth-user-pass " + constants.OpenVPNAuthConf, + // Connection variables connection.OpenVPNProtoLine(), connection.OpenVPNRemoteLine(), - "auth " + settings.Auth, } lines = append(lines, utils.CipherLines(settings.Cipher, settings.Version)...) diff --git a/internal/provider/fastestvpn/openvpnconf.go b/internal/provider/fastestvpn/openvpnconf.go index bb68b684..1576559f 100644 --- a/internal/provider/fastestvpn/openvpnconf.go +++ b/internal/provider/fastestvpn/openvpnconf.go @@ -23,16 +23,19 @@ func (f *Fastestvpn) BuildConf(connection models.Connection, lines = []string{ "client", - "dev " + settings.Interface, "nobind", "tls-exit", + "dev " + settings.Interface, + "verb " + strconv.Itoa(settings.Verbosity), // Fastestvpn specific - "ping 15", - "tls-cipher TLS-DHE-RSA-WITH-AES-256-GCM-SHA384:TLS-DHE-RSA-WITH-AES-256-CBC-SHA256:TLS-DHE-RSA-WITH-CAMELLIA-256-CBC-SHA:TLS-DHE-RSA-WITH-AES-256-CBC-SHA:TLS-RSA-WITH-CAMELLIA-256-CBC-SHA:TLS-RSA-WITH-AES-256-CBC-SHA", //nolint:lll - "key-direction 1", "tun-mtu-extra 32", "mssfix " + strconv.Itoa(int(settings.MSSFix)), // defaults to 1450 + "ping 15", + "tls-cipher TLS-DHE-RSA-WITH-AES-256-GCM-SHA384:TLS-DHE-RSA-WITH-AES-256-CBC-SHA256:TLS-DHE-RSA-WITH-CAMELLIA-256-CBC-SHA:TLS-DHE-RSA-WITH-AES-256-CBC-SHA:TLS-RSA-WITH-CAMELLIA-256-CBC-SHA:TLS-RSA-WITH-AES-256-CBC-SHA", //nolint:lll + "key-direction 1", + "auth-user-pass " + constants.OpenVPNAuthConf, + "auth " + settings.Auth, // Added constant values "auth-nocache", @@ -41,12 +44,9 @@ func (f *Fastestvpn) BuildConf(connection models.Connection, "auth-retry nointeract", "suppress-timestamps", - // Modified variables - "verb " + strconv.Itoa(settings.Verbosity), - "auth-user-pass " + constants.OpenVPNAuthConf, + // Connection variables connection.OpenVPNProtoLine(), connection.OpenVPNRemoteLine(), - "auth " + settings.Auth, } lines = append(lines, utils.CipherLines(settings.Cipher, settings.Version)...) diff --git a/internal/provider/hidemyass/openvpnconf.go b/internal/provider/hidemyass/openvpnconf.go index bfb97ae6..38cf4c54 100644 --- a/internal/provider/hidemyass/openvpnconf.go +++ b/internal/provider/hidemyass/openvpnconf.go @@ -17,14 +17,15 @@ func (h *HideMyAss) BuildConf(connection models.Connection, lines = []string{ "client", - "dev " + settings.Interface, "nobind", "tls-exit", + "dev " + settings.Interface, + "verb " + strconv.Itoa(settings.Verbosity), // HideMyAss specific "ping 5", "remote-cert-tls server", // updated name of ns-cert-type - // "route-metric 1", + "auth-user-pass " + constants.OpenVPNAuthConf, // Added constant values "mute-replay-warnings", @@ -33,10 +34,8 @@ func (h *HideMyAss) BuildConf(connection models.Connection, "auth-retry nointeract", "suppress-timestamps", - // Modified variables - "verb " + strconv.Itoa(settings.Verbosity), - "auth-user-pass " + constants.OpenVPNAuthConf, - "proto " + connection.Protocol, + // Connection variables + connection.OpenVPNProtoLine(), connection.OpenVPNRemoteLine(), } diff --git a/internal/provider/ipvanish/openvpnconf.go b/internal/provider/ipvanish/openvpnconf.go index 33eb83ed..47313e9d 100644 --- a/internal/provider/ipvanish/openvpnconf.go +++ b/internal/provider/ipvanish/openvpnconf.go @@ -20,12 +20,16 @@ func (i *Ipvanish) BuildConf(connection models.Connection, lines = []string{ "client", - "dev " + settings.Interface, "nobind", "tls-exit", + "dev " + settings.Interface, + "verb " + strconv.Itoa(settings.Verbosity), // Ipvanish specific + "verify-x509-name " + connection.Hostname + " name", "tls-cipher TLS-DHE-RSA-WITH-AES-256-CBC-SHA:TLS-DHE-DSS-WITH-AES-256-CBC-SHA:TLS-RSA-WITH-AES-256-CBC-SHA", + "auth-user-pass " + constants.OpenVPNAuthConf, + "auth " + settings.Auth, // Added constant values "mute-replay-warnings", @@ -34,13 +38,9 @@ func (i *Ipvanish) BuildConf(connection models.Connection, "auth-retry nointeract", "suppress-timestamps", - // Modified variables - "verb " + strconv.Itoa(settings.Verbosity), - "auth-user-pass " + constants.OpenVPNAuthConf, - "proto " + connection.Protocol, + // Connection variables + connection.OpenVPNProtoLine(), connection.OpenVPNRemoteLine(), - "verify-x509-name " + connection.Hostname + " name", - "auth " + settings.Auth, } lines = append(lines, utils.CipherLines(settings.Cipher, settings.Version)...) diff --git a/internal/provider/ivpn/openvpnconf.go b/internal/provider/ivpn/openvpnconf.go index 6c367347..255f1b2c 100644 --- a/internal/provider/ivpn/openvpnconf.go +++ b/internal/provider/ivpn/openvpnconf.go @@ -20,15 +20,18 @@ func (i *Ivpn) BuildConf(connection models.Connection, lines = []string{ "client", - "dev " + settings.Interface, "nobind", "tls-exit", + "dev " + settings.Interface, + "verb " + strconv.Itoa(settings.Verbosity), // IVPN specific "ping 5", "remote-cert-tls server", // updated name of ns-cert-type "key-direction 1", + "verify-x509-name " + namePrefix + " name-prefix", "tls-cipher TLS-DHE-RSA-WITH-AES-256-CBC-SHA:TLS-DHE-DSS-WITH-AES-256-CBC-SHA:TLS-RSA-WITH-AES-256-CBC-SHA", + "auth-user-pass " + constants.OpenVPNAuthConf, // Added constant values "mute-replay-warnings", @@ -37,12 +40,9 @@ func (i *Ivpn) BuildConf(connection models.Connection, "auth-retry nointeract", "suppress-timestamps", - // Modified variables - "verb " + strconv.Itoa(settings.Verbosity), - "auth-user-pass " + constants.OpenVPNAuthConf, - "proto " + connection.Protocol, + // Connection variables + connection.OpenVPNProtoLine(), connection.OpenVPNRemoteLine(), - "verify-x509-name " + namePrefix + " name-prefix", } lines = append(lines, utils.CipherLines(settings.Cipher, settings.Version)...) diff --git a/internal/provider/mullvad/openvpnconf.go b/internal/provider/mullvad/openvpnconf.go index d7ee2fcf..064599a6 100644 --- a/internal/provider/mullvad/openvpnconf.go +++ b/internal/provider/mullvad/openvpnconf.go @@ -17,13 +17,15 @@ func (m *Mullvad) BuildConf(connection models.Connection, lines = []string{ "client", - "dev " + settings.Interface, "nobind", - "remote-cert-tls server", "tls-exit", + "dev " + settings.Interface, + "verb " + strconv.Itoa(settings.Verbosity), + "auth-user-pass " + constants.OpenVPNAuthConf, // Mullvad specific "ping 10", + "remote-cert-tls server", "sndbuf 524288", "rcvbuf 524288", "tls-cipher TLS-DHE-RSA-WITH-AES-256-GCM-SHA384:TLS-DHE-RSA-WITH-AES-256-CBC-SHA", @@ -35,9 +37,7 @@ func (m *Mullvad) BuildConf(connection models.Connection, "auth-retry nointeract", "suppress-timestamps", - // Modified variables - "verb " + strconv.Itoa(settings.Verbosity), - "auth-user-pass " + constants.OpenVPNAuthConf, + // Connection variables connection.OpenVPNProtoLine(), connection.OpenVPNRemoteLine(), } diff --git a/internal/provider/nordvpn/openvpnconf.go b/internal/provider/nordvpn/openvpnconf.go index dfdc08d9..e23a88e8 100644 --- a/internal/provider/nordvpn/openvpnconf.go +++ b/internal/provider/nordvpn/openvpnconf.go @@ -25,17 +25,20 @@ func (n *Nordvpn) BuildConf(connection models.Connection, lines = []string{ "client", - "dev " + settings.Interface, "nobind", - "remote-cert-tls server", "tls-exit", + "dev " + settings.Interface, + "verb " + strconv.Itoa(settings.Verbosity), // Nordvpn specific "tun-mtu-extra 32", "mssfix " + strconv.Itoa(int(settings.MSSFix)), + "ping 15", + "remote-cert-tls server", "reneg-sec 0", "key-direction 1", - "ping 15", + "auth-user-pass " + constants.OpenVPNAuthConf, + "auth " + settings.Auth, // Added constant values "auth-nocache", @@ -44,12 +47,9 @@ func (n *Nordvpn) BuildConf(connection models.Connection, "auth-retry nointeract", "suppress-timestamps", - // Modified variables - "verb " + strconv.Itoa(settings.Verbosity), - "auth-user-pass " + constants.OpenVPNAuthConf, + // Connection variables connection.OpenVPNProtoLine(), connection.OpenVPNRemoteLine(), - "auth " + settings.Auth, } lines = append(lines, utils.CipherLines(settings.Cipher, settings.Version)...) diff --git a/internal/provider/privado/openvpnconf.go b/internal/provider/privado/openvpnconf.go index d1ddf55e..060d9ed2 100644 --- a/internal/provider/privado/openvpnconf.go +++ b/internal/provider/privado/openvpnconf.go @@ -21,14 +21,17 @@ func (p *Privado) BuildConf(connection models.Connection, lines = []string{ "client", - "dev " + settings.Interface, "nobind", "tls-exit", + "dev " + settings.Interface, + "verb " + strconv.Itoa(settings.Verbosity), // Privado specific "ping 10", "tls-cipher TLS-DHE-RSA-WITH-AES-256-CBC-SHA:TLS-DHE-DSS-WITH-AES-256-CBC-SHA:TLS-RSA-WITH-AES-256-CBC-SHA", "verify-x509-name " + connection.Hostname + " name", + "auth-user-pass " + constants.OpenVPNAuthConf, + "auth " + settings.Auth, // Added constant values "auth-nocache", @@ -37,12 +40,9 @@ func (p *Privado) BuildConf(connection models.Connection, "auth-retry nointeract", "suppress-timestamps", - // Modified variables - "verb " + strconv.Itoa(settings.Verbosity), - "auth-user-pass " + constants.OpenVPNAuthConf, + // Connection variables connection.OpenVPNProtoLine(), connection.OpenVPNRemoteLine(), - "auth " + settings.Auth, } lines = append(lines, utils.CipherLines(settings.Cipher, settings.Version)...) diff --git a/internal/provider/privateinternetaccess/openvpnconf.go b/internal/provider/privateinternetaccess/openvpnconf.go index 8e9cc642..b159226a 100644 --- a/internal/provider/privateinternetaccess/openvpnconf.go +++ b/internal/provider/privateinternetaccess/openvpnconf.go @@ -40,14 +40,16 @@ func (p *PIA) BuildConf(connection models.Connection, lines = []string{ "client", - "dev " + settings.Interface, "nobind", - "remote-cert-tls server", "tls-exit", + "dev " + settings.Interface, + "verb " + strconv.Itoa(settings.Verbosity), // PIA specific + "remote-cert-tls server", "reneg-sec 0", "disable-occ", + "auth-user-pass " + constants.OpenVPNAuthConf, // Added constant values "auth-nocache", @@ -56,9 +58,7 @@ func (p *PIA) BuildConf(connection models.Connection, "auth-retry nointeract", "suppress-timestamps", - // Modified variables - "verb " + strconv.Itoa(settings.Verbosity), - "auth-user-pass " + constants.OpenVPNAuthConf, + // Connection variables connection.OpenVPNProtoLine(), connection.OpenVPNRemoteLine(), } diff --git a/internal/provider/privatevpn/openvpnconf.go b/internal/provider/privatevpn/openvpnconf.go index fa5f8796..130feda6 100644 --- a/internal/provider/privatevpn/openvpnconf.go +++ b/internal/provider/privatevpn/openvpnconf.go @@ -21,12 +21,15 @@ func (p *Privatevpn) BuildConf(connection models.Connection, lines = []string{ "client", - "dev " + settings.Interface, "nobind", - "remote-cert-tls server", "tls-exit", + "dev " + settings.Interface, + "verb " + strconv.Itoa(settings.Verbosity), // Privatevpn specific + "remote-cert-tls server", + "auth-user-pass " + constants.OpenVPNAuthConf, + "auth " + settings.Auth, // Added constant values "auth-nocache", @@ -35,12 +38,9 @@ func (p *Privatevpn) BuildConf(connection models.Connection, "auth-retry nointeract", "suppress-timestamps", - // Modified variables - "verb " + strconv.Itoa(settings.Verbosity), - "auth-user-pass " + constants.OpenVPNAuthConf, + // Connection variables connection.OpenVPNProtoLine(), connection.OpenVPNRemoteLine(), - "auth " + settings.Auth, } lines = append(lines, utils.CipherLines(settings.Cipher, settings.Version)...) diff --git a/internal/provider/protonvpn/openvpnconf.go b/internal/provider/protonvpn/openvpnconf.go index 4226d179..c4a1309a 100644 --- a/internal/provider/protonvpn/openvpnconf.go +++ b/internal/provider/protonvpn/openvpnconf.go @@ -26,17 +26,19 @@ func (p *Protonvpn) BuildConf(connection models.Connection, lines = []string{ "client", - "dev " + settings.Interface, "nobind", - "remote-cert-tls server", "tls-exit", + "dev " + settings.Interface, + "verb " + strconv.Itoa(settings.Verbosity), // Protonvpn specific + "remote-cert-tls server", "tun-mtu-extra 32", "mssfix " + strconv.Itoa(int(settings.MSSFix)), "reneg-sec 0", "key-direction 1", - "pull", + "auth-user-pass " + constants.OpenVPNAuthConf, + "auth " + settings.Auth, // Added constant values "auth-nocache", @@ -45,12 +47,9 @@ func (p *Protonvpn) BuildConf(connection models.Connection, "auth-retry nointeract", "suppress-timestamps", - // Modified variables - "verb " + strconv.Itoa(settings.Verbosity), - "auth-user-pass " + constants.OpenVPNAuthConf, + // Connection variables connection.OpenVPNProtoLine(), connection.OpenVPNRemoteLine(), - "auth " + settings.Auth, } lines = append(lines, utils.CipherLines(settings.Cipher, settings.Version)...) diff --git a/internal/provider/purevpn/openvpnconf.go b/internal/provider/purevpn/openvpnconf.go index 20798a72..28f85d8a 100644 --- a/internal/provider/purevpn/openvpnconf.go +++ b/internal/provider/purevpn/openvpnconf.go @@ -17,16 +17,17 @@ func (p *Purevpn) BuildConf(connection models.Connection, lines = []string{ "client", - "dev " + settings.Interface, "nobind", - "remote-cert-tls server", "tls-exit", + "dev " + settings.Interface, + "verb " + strconv.Itoa(settings.Verbosity), // Purevpn specific "ping 10", - "key-direction 1", "remote-cert-tls server", + "key-direction 1", "cipher AES-256-CBC", + "auth-user-pass " + constants.OpenVPNAuthConf, // Added constant values "auth-nocache", @@ -35,9 +36,7 @@ func (p *Purevpn) BuildConf(connection models.Connection, "auth-retry nointeract", "suppress-timestamps", - // Modified variables - "verb " + strconv.Itoa(settings.Verbosity), - "auth-user-pass " + constants.OpenVPNAuthConf, + // Connection variables connection.OpenVPNProtoLine(), connection.OpenVPNRemoteLine(), } diff --git a/internal/provider/surfshark/openvpnconf.go b/internal/provider/surfshark/openvpnconf.go index a1d8fa3f..daf3b857 100644 --- a/internal/provider/surfshark/openvpnconf.go +++ b/internal/provider/surfshark/openvpnconf.go @@ -26,17 +26,20 @@ func (s *Surfshark) BuildConf(connection models.Connection, lines = []string{ "client", - "dev " + settings.Interface, "nobind", - "remote-cert-tls server", "tls-exit", + "dev " + settings.Interface, + "verb " + strconv.Itoa(settings.Verbosity), // Surfshark specific - "ping 15", "tun-mtu-extra 32", "mssfix " + strconv.Itoa(int(settings.MSSFix)), + "ping 15", + "remote-cert-tls server", "reneg-sec 0", "key-direction 1", + "auth-user-pass " + constants.OpenVPNAuthConf, + "auth " + settings.Auth, // Added constant values "auth-nocache", @@ -45,12 +48,9 @@ func (s *Surfshark) BuildConf(connection models.Connection, "auth-retry nointeract", "suppress-timestamps", - // Modified variables - "verb " + strconv.Itoa(settings.Verbosity), - "auth-user-pass " + constants.OpenVPNAuthConf, + // Connection variables connection.OpenVPNProtoLine(), connection.OpenVPNRemoteLine(), - "auth " + settings.Auth, } lines = append(lines, utils.CipherLines(settings.Cipher, settings.Version)...) diff --git a/internal/provider/torguard/openvpnconf.go b/internal/provider/torguard/openvpnconf.go index fe232eae..d2bae625 100644 --- a/internal/provider/torguard/openvpnconf.go +++ b/internal/provider/torguard/openvpnconf.go @@ -26,19 +26,22 @@ func (t *Torguard) BuildConf(connection models.Connection, lines = []string{ "client", - "dev " + settings.Interface, "nobind", - "remote-cert-tls server", "tls-exit", + "dev " + settings.Interface, + "verb " + strconv.Itoa(settings.Verbosity), // Torguard specific - "ping 5", "tun-mtu-extra 32", "mssfix " + strconv.Itoa(int(settings.MSSFix)), - "reneg-sec 0", - "key-direction 1", "sndbuf 393216", "rcvbuf 393216", + "ping 5", + "remote-cert-tls server", + "reneg-sec 0", + "key-direction 1", + "auth-user-pass " + constants.OpenVPNAuthConf, + "auth " + settings.Auth, // Added constant values "auth-nocache", @@ -47,12 +50,9 @@ func (t *Torguard) BuildConf(connection models.Connection, "auth-retry nointeract", "suppress-timestamps", - // Modified variables - "verb " + strconv.Itoa(settings.Verbosity), - "auth-user-pass " + constants.OpenVPNAuthConf, + // Connection variables connection.OpenVPNProtoLine(), connection.OpenVPNRemoteLine(), - "auth " + settings.Auth, } lines = append(lines, utils.CipherLines(settings.Cipher, settings.Version)...) diff --git a/internal/provider/vpnunlimited/openvpnconf.go b/internal/provider/vpnunlimited/openvpnconf.go index 063eacd0..c836a52b 100644 --- a/internal/provider/vpnunlimited/openvpnconf.go +++ b/internal/provider/vpnunlimited/openvpnconf.go @@ -13,14 +13,15 @@ func (p *Provider) BuildConf(connection models.Connection, settings configuration.OpenVPN) (lines []string, err error) { lines = []string{ "client", - "dev " + settings.Interface, "nobind", "tls-exit", - "remote-cert-tls server", + "dev " + settings.Interface, + "verb " + strconv.Itoa(settings.Verbosity), // VPNUnlimited specific - "reneg-sec 0", "ping 5", + "remote-cert-tls server", + "reneg-sec 0", "route-metric 1", // Added constant values @@ -30,8 +31,7 @@ func (p *Provider) BuildConf(connection models.Connection, "auth-retry nointeract", "suppress-timestamps", - // Modified variables - "verb " + strconv.Itoa(settings.Verbosity), + // Connection variables connection.OpenVPNProtoLine(), connection.OpenVPNRemoteLine(), } diff --git a/internal/provider/vyprvpn/openvpnconf.go b/internal/provider/vyprvpn/openvpnconf.go index ce1161cf..75a4936a 100644 --- a/internal/provider/vyprvpn/openvpnconf.go +++ b/internal/provider/vyprvpn/openvpnconf.go @@ -21,15 +21,18 @@ func (v *Vyprvpn) BuildConf(connection models.Connection, lines = []string{ "client", - "dev " + settings.Interface, "nobind", - "remote-cert-tls server", "tls-exit", + "dev " + settings.Interface, + "verb " + strconv.Itoa(settings.Verbosity), // Vyprvpn specific "ping 10", + "remote-cert-tls server", // "verify-x509-name lu1.vyprvpn.com name", "tls-cipher TLS-ECDHE-RSA-WITH-AES-256-GCM-SHA384:TLS-DHE-RSA-WITH-AES-256-CBC-SHA256:TLS-DHE-RSA-WITH-AES-256-CBC-SHA", //nolint:lll + "auth-user-pass " + constants.OpenVPNAuthConf, + "auth " + settings.Auth, // Added constant values "auth-nocache", @@ -38,12 +41,9 @@ func (v *Vyprvpn) BuildConf(connection models.Connection, "auth-retry nointeract", "suppress-timestamps", - // Modified variables - "verb " + strconv.Itoa(settings.Verbosity), - "auth-user-pass " + constants.OpenVPNAuthConf, + // Connection variables connection.OpenVPNProtoLine(), connection.OpenVPNRemoteLine(), - "auth " + settings.Auth, } lines = append(lines, utils.CipherLines(settings.Cipher, settings.Version)...) diff --git a/internal/provider/windscribe/openvpnconf.go b/internal/provider/windscribe/openvpnconf.go index 1a3c66aa..2de93cf8 100644 --- a/internal/provider/windscribe/openvpnconf.go +++ b/internal/provider/windscribe/openvpnconf.go @@ -22,15 +22,19 @@ func (w *Windscribe) BuildConf(connection models.Connection, lines = []string{ "client", - "dev " + settings.Interface, "nobind", - "remote-cert-tls server", "tls-exit", + "dev " + settings.Interface, + "verb " + strconv.Itoa(settings.Verbosity), // Windscribe specific "ping 10", + "remote-cert-tls server", + "verify-x509-name " + connection.Hostname + " name", "key-direction 1", "reneg-sec 0", + "auth-user-pass " + constants.OpenVPNAuthConf, + "auth " + settings.Auth, // Added constant values "auth-nocache", @@ -39,13 +43,9 @@ func (w *Windscribe) BuildConf(connection models.Connection, "auth-retry nointeract", "suppress-timestamps", - // Modified variables - "verb " + strconv.Itoa(settings.Verbosity), - "auth-user-pass " + constants.OpenVPNAuthConf, + // Connection variables connection.OpenVPNProtoLine(), connection.OpenVPNRemoteLine(), - "auth " + settings.Auth, - "verify-x509-name " + connection.Hostname + " name", } lines = append(lines, utils.CipherLines(settings.Cipher, settings.Version)...)