IBM Cloud Docs
strongSwan ピアへの接続

strongSwan ピアへの接続

IBM Cloud VPN for VPC を使用すると、VPN トンネルを介して VPC をオンプレミス・ネットワークに安全に接続できます。 このトピックでは、StrongSwan の VPN ゲートウェイを、VPN for VPC に接続するように構成する方法について説明します。

以下の手順は、Linux StrongSwan U5.3.5/K4.4.0-133-generic に基づいています。

VPN ゲートウェイの制限を参照してから、オンプレミス・ピアへの接続を続行してください。

/etc ディレクトリに移動し、名前(ipsec.abc.conf など)を付けて新しいカスタムトンネル設定ファイルを作成します。 /etc/ipsec.conf ファイルを編集し、以下の行を追加して新しい ipsec.abc.conf ファイルをインクルードします。

include /etc/ipsec.abc.conf

strongSwan の VPN は、VPN for VPC から接続要求を受け取ると、IPsec フェーズ 1 のパラメーターを使用して、セキュア接続を確立し、VPN for VPC ゲートウェイを認証します。 その後、セキュリティー・ポリシーで接続が許可されると、StrongSwan の VPN は、IPsec フェーズ 2 のパラメーターを使用して、トンネルを確立し、IPsec セキュリティー・ポリシーを適用します。 鍵管理サービス、認証サービス、およびセキュリティー・サービスは、IKE プロトコルを使用して動的にネゴシエーションされます。

これらの機能をサポートするために、StrongSwan の VPN に対して以下の一般的な構成手順を実行する必要があります。

  • フェーズ 1 のパラメーターを定義します。これは、StrongSwan が VPN for VPC を認証してセキュア接続を確立するために必要なパラメーターです。
  • フェーズ 2 のパラメーターを定義します。これは、strongSwan が VPN for VPC への VPN トンネルを作成するために必要なパラメーターです。

strongSwan ピアへの IBM ポリシー・ベースの VPN の接続

以下の構成を使用します。

  1. 認証で IKEv2 を選択します。

  2. フェーズ 1 プロポーザルで DH-group 2 を有効にします。

  3. フェーズ 1 プロポーザルで lifetime = 36000 を設定します。

  4. フェーズ 2 プロポーザルで PFS を無効にします。

  5. フェーズ 2 プロポーザルで lifetime = 10800 を設定します。

  6. フェーズ 2 プロポーザルでピアとサブネットの情報を入力します。

    以下の例では、オンプレミス・サブネット 10.160.26.64/26 (strongSwan VPN ゲートウェイの IP アドレスは 169.45.74.119) と VPC サブネット 192.168.17.0/28 (VPN for VPC ゲートウェイの IP アドレスは 169.61.181.116) との接続を定義しています。

    vim /etc/ipsec.abc.conf
    conn all
           type=tunnel
           auto=start
           #aggressive=no
           esp=aes256-sha256!
           ike=aes256-sha256-modp2048!
           left=%any
           leftsubnet=10.160.26.64/26
           rightsubnet=192.168.17.0/28
           right=169.61.181.116
           leftauth=psk
           rightauth=psk
           leftid="169.45.74.119"
           keyexchange=ikev2
           rightid="169.61.181.116"
           lifetime=10800s
           ikelifetime=36000s
           dpddelay=30s
           dpdaction=restart
           dpdtimeout=120s
    
  7. /etc/ipsec.secrets に事前共有鍵を設定します。

    vim ipsec.secrets
    # This file holds shared secrets or RSA private keys for authentication.
    
    169.45.74.119 169.61.181.116 : PSK "******"
    
    
  8. 構成ファイルの実行が完了したら、StrongSwan VPN を再始動します。

    ipsec restart
    
    

IBM ルートベース VPN を strongSwan ピアに接続する

次の設定例では、strongSwan と VPN for VPC の間に2つのルートベースのトンネルを設定する方法を示しています。

  1. IP転送を有効にするには、以下のコマンドを入力する:

    sudo sysctl -w net.ipv4.conf.all.forwarding=1
    
  2. /etc/strongswan.d/charon-no-route-install.conf という名前のファイルを作成し、以下の内容を追加する:

    charon {
          install_routes = no
    }
    
  3. VPN接続を設定するには、/etc/ipsec.abc.conf ファイルを更新します。 以下の例では、VPNゲートウェイは2つのパブリックIP(135.90.134.86135.90.134.87)を持っています。strongSwan サーバーIPは 169.59.212.125 です。 このコンフィギュレーションは2つのコネクションを作る。 leftid はstrongSwanサーバーのパブリックIPで、rightrightid はVPNゲートウェイのパブリックIPを表しています。

    conn peer_135.90.134.86
      keyexchange=ikev2
      left=%any
      leftid=169.59.212.125
      leftsubnet=0.0.0.0/0
      rightsubnet=0.0.0.0/0
      right=135.90.134.86
      rightid=135.90.134.86
      auto=start
      ike=aes256-aes192-aes128-sha512-sha384-sha256-modp2048s256-modp2048s224-modp1024s160-ecp521-ecp384-ecp256-modp8192-modp6144-modp4096-modp3072-modp2048-x25519!
      ikelifetime=36000s
      esp=aes256gcm16-aes192gcm16-aes128gcm16,aes256-aes192-aes128-sha512-sha384-sha256!
      lifetime=10800s
      type=tunnel
      leftauth=psk
      rightauth=psk
      dpdaction = restart
      dpddelay = 10s
      mark = 1
    conn peer_135.90.134.87
      keyexchange=ikev2
      left=%any
      leftid=169.59.212.125
      leftsubnet=0.0.0.0/0
      rightsubnet=0.0.0.0/0
      right=135.90.134.87
      rightid=135.90.134.87
      auto=start
      ike=aes256-aes192-aes128-sha512-sha384-sha256-modp2048s256-modp2048s224-modp1024s160-ecp521-ecp384-ecp256-modp8192-modp6144-modp4096-modp3072-modp2048-x25519!
      ikelifetime=36000s
      esp=aes256gcm16-aes192gcm16-aes128gcm16,aes256-aes192-aes128-sha512-sha384-sha256!
      lifetime=10800s
      type=tunnel
      leftauth=psk
      rightauth=psk
      dpdaction = restart
      dpddelay = 10s
      mark = 2
    
  4. /etc/ipsec.secrets ファイルに事前共有キーを設定し、****** を実際の事前共有キーの値に置き換える:

    169.59.212.125 135.90.134.86 : PSK "******"
    169.59.212.125 135.90.134.86 : PSK "******"
    
  5. サーバー上に仮想インターフェースを作成し、VTIインターフェースのステータスを up に設定します。 mark_nummark の値(ステップ3で定義)に置き換える。 local_ip はstrongSwanサーバーのプライベートIP で、remote_ip はVPNゲートウェイのパブリックIPアドレスのパブリックIP です。

    # sample: sudo ip tunnel add vti<mark_num> local <local_ip> remote <remote_ip> mode vti key <mark_num>
    sudo ip tunnel add vti1 local 10.240.2.11 remote 135.90.134.86 mode vti key 1
    sudo ip tunnel add vti1 local 10.240.2.11 remote 135.90.134.87 mode vti key 2
    sudo ip link set vti1 up
    sudo ip link set vti2 up
    
  6. strongSwanサーバにルートを追加します。 この例では、10.240.0.0/24 が接続先のVPNゲートウェイのサブネットで、VTI名はステップ5のVTI名である。

    sudo ip route add 10.240.0.0/24 proto static nexthop dev vti1 nexthop dev vti2
    
  7. 構成ファイルの実行が完了したら、StrongSwan VPN を再始動します。

    ipsec restart