6
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

strongSwanとRTX1210の拠点間VPN接続(IKEv2, IPv4 over IPv6)

Last updated at Posted at 2021-01-14

AWSと自宅の拠点を結ぶため、strongSwanとYAMAHA RTX1210で拠点間VPN接続を行ったので、手順をメモします。IKEv2を利用し、各拠点はIPv6アドレスを持っている想定です。

環境

image.png
AWSのSubnet Bに置かれているstrongSwanサーバーと、自宅のRTX1210間でIPSecトンネルを張り、ServerとPC間で相互接続できるようにします。

strongSwanのインストール

strongSwanのインストールは、過去に記事でまとめたものを参照してください。
https://qiita.com/kerorinfather/items/37aec492f04706d55ade

strongSwanとYAMAHA RTXの設定値について

strongSwanの設定値

connections {
   net-net {
      local_addrs  = XXXX:XXXX::10 #strongSwanのIPv6アドレス
      remote_addrs = YYYY:YYYY::10 #YAMAHA RTX1210のIPv6アドレス

      local {
         auth = psk #PSK(事前共有鍵)で認証
         id = XXXX:XXXX::10 #strongSwanのIPv6アドレス
      }
      remote {
         auth = psk #PSK(事前共有鍵)で認証
         id = YYYY:YYYY::10 #YAMAHA RTX1210のIPv6アドレス
      }
      children {
         net-net {
            local_ts  = 172.31.0.0/16 #AWS側のCIDR
            remote_ts = 192.168.0.0/24 #自宅側のCIDR
            esp_proposals = aes128-sha256 #CHILD_SAフェーズで利用する認証・暗号化のアルゴリズム
         }
      }
      version = 2 #IKEv2を使用
      mobike = no #よくわからないけど公式サイト見る限りnoでよさそう
      proposals = aes128-sha256-modp2048 #IKE_SAフェーズで利用する認証・暗号化・鍵交換のアルゴリズム
   }
}

secrets {
 ike-1 {
  id = XXXX:XXXX::10 #strongSwanのIPv6アドレス
  secret = "pre-shared-key-password" #事前共有鍵
 }
}

proposalsの値は、strongSwanのデフォルト値がaes128-sha256-modp3072なのですが、YAMAHAルータ側でmodp3072が対応できないため、上記の(modp2048)設定が必要です。
esp_proposalsはデフォルト値がaes128-sha256であるため、記載しなくても接続できると思います。
mobikeの設定はテンプレートからの流用ですが、公式サイトを見る限りnoでよさそう(むしろ明示的にnoと書いたほうがよさそう)であるためそのままにしています。

YAMAHAルーターの設定値

ip route 172.31.0.0/16 gateway tunnel 2  #AWS側のCIDR
tunnel select 2
 ipsec tunnel 101
  ipsec sa policy 101 2 esp #暗号アルゴリズムを使用
  ipsec ike version 2 2 #IKEv2を利用する
  ipsec ike duration ipsec-sa 2 14400  #キー交換の間隔
  ipsec ike duration isakmp-sa 2 14400 #キー交換の間隔
  ipsec ike group 2 modp2048 #IKE_SAフェーズで利用する鍵交換のアルゴリズム
  ipsec ike keepalive use 2 on rfc4306 #keepalive これがないとこちらから接続始動しなかった
  ipsec ike local name 2 YYYY:YYYY::10 ipv6-addr #YAMAHA RTX1210のIPv6アドレス
  ipsec ike pre-shared-key 2 text pre-shared-key-password #事前共有鍵
  ipsec ike remote name 2 XXXX:XXXX::10 ipv6-addr #strongSwanのIPv6アドレス
  ipsec ike negotiation receive 2 off #受信しない
 tunnel enable 2

ipsec auto refresh on #こちらから鍵交換を始動

ipsec ike groupのデフォルト値はmodp1024であるため、明示的にmodp2048を利用するように設定します。(IKEv2の場合は記述しなくても動くみたいな記載はRTProにありましたが。。。)
ipsec ike keepalive use 2 on rfc4306の記載がないと、YAMAHAルータ側から接続にいきませんでした。
ipsec ike negotiation receive 2 offの記載があると、strongSwan側からRTXに接続を試みようとすると弾くみたいです。(未検証)

ルートテーブルの設定

AWS側

VPCのルートテーブルに、自宅側のCIDR宛の通信をstrongSwanのサーバーに送る処理が必要になります。
image.png

自宅側

自宅側は、デフォルトゲートウェイがYAMAHAルーターになるため、特に設定は不要です。

参考にしたサイト

IPv6 Configuration Examples - strongSwan
MOBIKE - strongSwan
IKEv2 (RTPro)

6
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?