Files
gluetun/internal/provider/privateinternetaccess/openvpnconf.go

38 lines
1.2 KiB
Go

package privateinternetaccess
import (
"github.com/qdm12/gluetun/internal/configuration/settings"
"github.com/qdm12/gluetun/internal/constants"
"github.com/qdm12/gluetun/internal/models"
"github.com/qdm12/gluetun/internal/provider/utils"
)
func (p *PIA) BuildConf(connection models.Connection,
settings settings.OpenVPN) (lines []string) {
providerSettings := utils.OpenVPNProviderSettings{
RemoteCertTLS: true,
RenegDisabled: true,
AuthUserPass: true,
}
switch *settings.PIAEncPreset {
case constants.PIAEncryptionPresetNormal:
providerSettings.Ciphers = []string{constants.AES128cbc}
providerSettings.Auth = constants.SHA1
providerSettings.CRLVerify = constants.PiaX509CRLNormal
providerSettings.CA = constants.PiaCANormal
case constants.PIAEncryptionPresetNone:
providerSettings.Ciphers = []string{"none"}
providerSettings.Auth = "none"
providerSettings.CRLVerify = constants.PiaX509CRLNormal
providerSettings.CA = constants.PiaCANormal
default: // strong
providerSettings.Ciphers = []string{constants.AES256cbc}
providerSettings.Auth = constants.SHA256
providerSettings.CRLVerify = constants.PiaX509CRLStrong
providerSettings.CA = constants.PiaCAStrong
}
return utils.OpenVPNConfig(providerSettings, connection, settings)
}