web-dev-qa-db-ja.com

strongSwanのipsec構成

AWSでホストされている2つのピア間にipsecVPNを設定しようとしていますが、それを機能させることができません。私の環境は次のとおりです。

1つのピアにはプライベートIPとして10.10.1.100、パブリックIPとして8.a.b.cがあり、リモートクライアントはIP 9.d.e.cから到達可能です。構成では、次のパラメーターに従うように指示されています。

フェーズ1の設定:

•IKEバージョン:IKEv2

•IKE認証方法:事前共有キー

•IKE暗号化アルゴリズム:AES256

•IKE認証アルゴリズム:HMAC_SHA256

•IKEDiffie-Hellmanグループ:グループ2-1024ビット

•IKEフェーズ1のライフタイム:86400秒

•IKEExchangeモード:メイン

フェーズ2設定:

•暗号化アルゴリズム:AES256

•認証アルゴリズム:HMAC_SHA256

•Diffie-Hellmanグループ:グループ2-1024ビット

•フェーズ2の寿命:3600秒

したがって、ピアの1つで、これをipsec.confファイルに設定しました。

# ipsec.conf - strongSwan IPsec configuration file

# basic configuration

config setup
        charondebug="ike 4, knl 2, cfg 2, net 4, lib 2, chd 4, mgr 4, enc 4"
        # strictcrlpolicy=yes
        # uniqueids = no

# Add connections here.

# Sample VPN connections

conn cet
        authby=secret
        keyexchange=ikev2
        esp=aes256-sha256-modp1024
        ikelifetime=86400s
        ike=aes256-sha256-modp1024
        keylife=3600s
        leftsubnet=10.10.1.0/24
        left=10.10.1.100
        right=9.d.e.c
        rightsubnet=192.168.1.0/24
        mobike=no
        auto=start

また、/ etc /ipsec.secretsファイルは次のようになります。

#ipsec.secrets - strongSwan IPsec secrets file
54.169.72.161 : PSK "oddRandomCharacters"

しかし、VPN接続を確立しようとすると、これが得られる出力です。

initiating IKE_SA cet[68] to 9.d.e.f
generating IKE_SA_INIT request 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) N(FRAG_SUP) N(HASH_ALG) N(REDIR_SUP) ]
sending packet: from 10.10.1.100[500] to 9.d.e.f[500] (900 bytes)
received packet: from 9.d.e.f[500] to 10.10.1.100[500] (336 bytes)
parsed IKE_SA_INIT response 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) N(FRAG_SUP) N(HASH_ALG) N(MULT_AUTH) ]
local Host is behind NAT, sending keep alives
remote Host is behind NAT
authentication of '10.10.1.100' (myself) with pre-shared key
establishing CHILD_SA cet
generating IKE_AUTH request 1 [ IDi N(INIT_CONTACT) IDr AUTH SA TSi TSr N(MULT_AUTH) N(EAP_ONLY) ]
sending packet: from 10.10.1.100[4500] to 9.d.e.f[4500] (384 bytes)
received packet: from 9.d.e.f[4500] to 10.10.1.100[4500] (80 bytes)
parsed IKE_AUTH response 1 [ N(AUTH_FAILED) ]
received AUTHENTICATION_FAILED notify error
establishing connection 'cet' failed

私の知る限り、フェーズ1のネゴシエーションは良好ですが、トンネルがそれを確立しようとすると失敗するため、フェーズ2のパラメーターが欠落していると推測しています。秘密鍵は正しく、構成パラメーターは以前に共有されたものなので、問題にはならないはずです。残念ながら、リモートピアログにアクセスできないため、/ var/log/syslogだけがあります。

Aug 27 02:03:11 ap-southeast-2-gw charon: 10[IKE] successfully created shared key MAC
Aug 27 02:03:11 ap-southeast-2-gw charon: 10[IKE] establishing CHILD_SA cet
Aug 27 02:03:11 ap-southeast-2-gw charon: 10[CFG] proposing traffic selectors for us:
Aug 27 02:03:11 ap-southeast-2-gw charon: 10[CFG]  10.10.1.0/24
Aug 27 02:03:11 ap-southeast-2-gw charon: 10[CFG] proposing traffic selectors for other:
Aug 27 02:03:11 ap-southeast-2-gw charon: 10[CFG]  192.168.1.0/24
Aug 27 02:03:11 ap-southeast-2-gw charon: 10[CFG] configured proposals: ESP:AES_CBC_256/HMAC_SHA2_256_128/NO_EXT_SEQ, ESP:AES_CBC_128/AES_CBC_192/AES_CBC_256/3DES_CBC/BLOWFISH_CBC_256/HMAC_SHA2_256_128/HMAC_SHA2_384_192/HMAC_SHA2_512_256/HMAC_SHA1_96/AES_XCBC_96/HMAC_MD5_96/NO_EXT_SEQ
Aug 27 02:03:11 ap-southeast-2-gw charon: 10[KNL] got SPI cd02b0dc
Aug 27 02:03:11 ap-southeast-2-gw charon: 10[ENC] generating IKE_AUTH request 1 [ IDi N(INIT_CONTACT) IDr AUTH SA TSi TSr N(MULT_AUTH) N(EAP_ONLY) ]
Aug 27 02:03:11 ap-southeast-2-gw charon: 10[NET] sending packet: from 10.10.1.100[4500] to 54.169.72.161[4500] (384 bytes)
Aug 27 02:03:11 ap-southeast-2-gw charon: 05[NET] sending packet: from 10.10.1.100[4500] to 54.169.72.161[4500]
Aug 27 02:03:12 ap-southeast-2-gw charon: 03[NET] received packet: from 54.169.72.161[4500] to 10.10.1.100[4500]
Aug 27 02:03:12 ap-southeast-2-gw charon: 03[NET] waiting for data on sockets
Aug 27 02:03:12 ap-southeast-2-gw charon: 15[NET] received packet: from 54.169.72.161[4500] to 10.10.1.100[4500] (80 bytes)
Aug 27 02:03:12 ap-southeast-2-gw charon: 15[ENC] parsed IKE_AUTH response 1 [ N(AUTH_FAILED) ]
Aug 27 02:03:12 ap-southeast-2-gw charon: 15[IKE] received AUTHENTICATION_FAILED notify error

私は何かが足りないのですか?

1
nikolaigauss

AFAIK Ikev2は、authメソッドとしてsecretをサポートしていません。

編集:これは、サイト間の設定では当てはまらない場合があります。私はWindows10クライアントでのロードウォリアーのセットアップにStrongswanを使用しただけで、シークレットまたはPSKはWindows forIkev2では機能しません。

両側でEAP-TLSなどの相互EAP方式を実行するか、要求側でEAPを実行し、サーバー側で公開鍵を実行する必要があります。

編集:もう一方の端から構成を共有できますか?

2
Ost99