如何使用 PSK(预共享密钥)配置 StrongSwan IKEv2 VPN?

Dan*_*e P 8 vpn strongswan

我正在寻找 IKEv2 VPN 的配置说明,它使用pre-shared keys而不是certs(这些是我假设的隧道加密的不同方法?)。

我已经按照这个精彩的教程让 IKEv2 VPN 工作(使用certificate)并且它工作正常。

我的问题是需要更改什么才能使用它PSK?我假设更改/etc/ipsec.secrets并且/etc/ipsec.conf将要进行。

我的当前ipsec.conf看起来像这样:

config setup
    charondebug="ike 1, knl 1, cfg 0"
    uniqueids=no

conn ikev2-vpn
    auto=add
    compress=no
    type=tunnel
    keyexchange=ikev2
    fragmentation=yes
    forceencaps=yes
    ike=aes256-sha1-modp1024,3des-sha1-modp1024!
    esp=aes256-sha1,3des-sha1!
    dpdaction=clear
    dpddelay=300s
    rekey=no
    left=%any
    leftid=@server_name_or_ip
    leftcert=/etc/ipsec.d/certs/vpn-server-cert.pem
    leftsendcert=always
    leftsubnet=0.0.0.0/0
    right=%any
    rightid=%any
    rightauth=eap-mschapv2
    rightdns=8.8.8.8,8.8.4.4
    rightsourceip=10.10.10.0/24
    rightsendcert=never
    eap_identity=%identity
Run Code Online (Sandbox Code Playgroud)

UPD:根据我的修补和@ChandanK 的回答,我制作了两个脚本来在全新的 Ubuntu 16.04 安装上部署 StrongSwan VPN 服务器:https : //github.com/truemetal/ikev2_vpn

Cha*_*anK 9

假设你想用 psk 设置你的右侧。这相当容易。

1. remove eap_identity and rightsendcert fields. 2. set rightauth=secret

现在编辑 /etc/ipsec.secrets 文件:

1. remove "your_username %any% : EAP "your_password"" line. 2. add ": PSK <your_password>"

然后重新读取机密并重新启动服务。

$sudo ipsec rereadsecrets $sudo ipsec reload $sudo ipsec restart

搞定。按照“从 iOS 连接”并创建一个新的 ikev2 vpn 连接。在身份验证设置中选择无并放置共享密钥。希望你连接。

编辑:

根据评论,切换到预共享密钥身份验证所需的配置更改:

config setup
    charondebug="ike 1, knl 1, cfg 0"
    uniqueids=no

conn ikev2-vpn
    auto=add
    compress=no
    type=tunnel
    keyexchange=ikev2
    fragmentation=yes
    forceencaps=yes
    ike=aes256-sha1-modp1024,3des-sha1-modp1024!
    esp=aes256-sha1,3des-sha1!
    dpdaction=clear
    dpddelay=300s
    rekey=no
    left=%any
    leftid=@server_name_or_ip
    leftsubnet=0.0.0.0/0
    right=%any
    rightid=%any
    rightdns=8.8.8.8,8.8.4.4
    rightsourceip=10.10.10.0/24
    authby=secret
Run Code Online (Sandbox Code Playgroud)

从 ipsec.secrets 中删除以下行:

server_name_or_ip : RSA "/etc/ipsec.d/private/vpn-server-key.pem

然后重新读取机密并重新启动服务。