2021-05-31 00:11:16 +00:00
|
|
|
package ivpn
|
|
|
|
|
|
|
|
|
|
import (
|
2022-01-06 06:40:23 -05:00
|
|
|
"github.com/qdm12/gluetun/internal/configuration/settings"
|
2021-05-31 00:11:16 +00:00
|
|
|
"github.com/qdm12/gluetun/internal/constants"
|
|
|
|
|
"github.com/qdm12/gluetun/internal/models"
|
|
|
|
|
"github.com/qdm12/gluetun/internal/provider/utils"
|
|
|
|
|
)
|
|
|
|
|
|
2021-08-19 14:09:41 +00:00
|
|
|
func (i *Ivpn) BuildConf(connection models.Connection,
|
2022-04-25 07:57:45 +00:00
|
|
|
settings settings.OpenVPN) (lines []string) {
|
|
|
|
|
//nolint:gomnd
|
|
|
|
|
providerSettings := utils.OpenVPNProviderSettings{
|
|
|
|
|
AuthUserPass: true,
|
|
|
|
|
Ciphers: []string{
|
|
|
|
|
constants.AES256cbc,
|
|
|
|
|
},
|
|
|
|
|
Ping: 5,
|
|
|
|
|
RemoteCertTLS: true,
|
|
|
|
|
VerifyX509Type: "name-prefix",
|
|
|
|
|
TLSCipher: "TLS-DHE-RSA-WITH-AES-256-CBC-SHA:TLS-DHE-DSS-WITH-AES-256-CBC-SHA:TLS-RSA-WITH-AES-256-CBC-SHA",
|
|
|
|
|
CA: constants.IvpnCA,
|
|
|
|
|
TLSAuth: constants.IvpnTLSAuth,
|
|
|
|
|
ExtraLines: []string{
|
|
|
|
|
"key-direction 1",
|
|
|
|
|
},
|
2021-05-31 00:11:16 +00:00
|
|
|
}
|
2022-04-25 07:57:45 +00:00
|
|
|
return utils.OpenVPNConfig(providerSettings, connection, settings)
|
2021-05-31 00:11:16 +00:00
|
|
|
}
|