2.21. IKEの設定

IKE(Internet Key Exchange)は、鍵交換プロトコルのことで、IPsec通信を行う通信相手(ピア)との鍵を自動的に生成するために使用します。UNIVERGE IX-R/IX-V シリーズでは、通信相手のアドレスが不定の場合についてもサポートしております。

IKEにはIKEv1とIKEv2があり、本章ではIKEv1についてを記載いたします。IKEv2についてはIKEv2の章を参照してください。

IKEv1(RFC2409)には、Phase1としてMainモードとAggressiveモード、Phase2としてQuickモードが定義されており、UNIVERGE IX-R/IX-V シリーズでサポートされております。この他、New Groupモードが定義されていますが、UNIVERGE IX-R/IX-V シリーズではサポートしておりません。

また、NATトラバーサル機能に対応しています。こちらの詳細はIPsecの章を参照してください。

../_images/22_ike_01.svg

図 2.21.1 構成

AggressiveモードとMainモードとの違いは次のとおりです。

  • Mainモード

    安全な通信が確立されるまでIDを暗号化して保護します。事前共有鍵は通信相手ごとに選択する必要がありますが、相手を識別するための情報がIPアドレスしか利用できないため、IPアドレスが動的に変化する環境では使用できません。

  • Aggressive

    IDを暗号化せずに開示することで、受信側はどの事前共有鍵を使用するかをアドレスではなくID情報から判断することができます。これにより、動的アドレス環境やアドレス変換の場合にもIKEのネゴシエーションを行うことができます。またMainモードと比較してPhase1の一部のステップが省略されるため、IKEのネゴシエーションが高速化されます。

2.21.1. IKEの基本設定

Phase1では、IKEプロトコル自身を暗号化するための前準備を行います。Phase2では、鍵を生成するための情報を実際に交換します。

Phase1およびPhase2で使用できるID情報は以下のとおりです。

  • Phase1

    下記のIDが選択可能です。

    項目

    説明

    ID_IPV4_ADDR, ID_IPV6_ADDR

    IPv4/IPv6ソースアドレス

    ID_KEY_ID

    任意文字列

    ID_FQDN

    ドメイン名

    ID_USER_FQDN

    ユーザー名付きドメイン名

注釈

DNSリゾルバを利用してドメイン名を自動設定することはできません。

  • Phase2

    デフォルトとしてipsec autokey-mapコマンドを指定したアクセスリストのsrc、destのネットワークアドレスをIDに使用する以外に、コマンドで下記のIDを設定できます。

    項目

    説明

    ID_IPV4_ADDR, ID_IPV6_ADDR

    IPv4/IPv6アドレス

    ID_IPV4_ADDR_SUBNET

    IPv4ネットワークアドレス

    ID_IPV6_ADDR_SUBNET

    IPv6ネットワークアドレス

    IKEを設定する際に使用される用語について説明します。

    項目

    説明

    ポリシー

    鍵交換を実行するか否かを決定するもの

    プロポーザル

    鍵交換を実行する場合の手段やアルゴリズムなどを決定するもの

    pre-sharedキー(事前共有鍵)

    InitiatorとResponderが互いに共有する事前鍵
    (pre-sharedキーを使用することで、接続相手の確認を行うことができます。)

    DHグループ

    Diffie-Hellman計算式の分母に相当する値のビット長

2.21.1.1. IKEポリシー

IKEポリシーは、どの通信相手とどのプロポーザルでIKE処理するか等を決定するもので、以下の設定項目があります。

  • IKE通信相手のアドレス

  • 事前共有鍵の設定

  • モード選択

  • IDの選択

  • IKEプロポーザルの選択

IKEポリシーの設定は、以下のコマンドを使用します。

項目

説明

ike policy

IKEポリシーの設定

ike local-id

IKEの自側ID(IKE Phase 1)の設定

ike remote-id

IKEの相手側ID(IKE Phase 1)の設定

ipsec local-id

IPsecの自側ID(IKE Phase 2)の設定

ipsec remote-id

IPsecの相手側ID(IKE Phase 2)の設定

show ike policy

IKEポリシーの確認

show ike sa

IKE SA状態の確認

2.21.1.2. IKEプロポーザルおよびクイック設定

IKEプロポーザルは、IKEで使用する暗号/認証アルゴリズム、自動鍵の有効期限、DHグループ値等を決定します。

IKEプロポーザルの設定は、次のコマンドを使用します。

項目

説明

ike proposal

プロポーザルの設定

show ike proposal

プロポーザルの確認

IKEポリシー入力時、IKEプロポーザル名の設定を省略した場合、自動的に以下のプロポーザルが使用されます。

項目

説明

暗号アルゴリズム

AES-CBC-256

認証アルゴリズム

SHA2-512

認証手段

pre-shared

PFS

DHグループ:3072-bit (DH group 15)

鍵の有効期限

28800秒

リスト 2.21.1 構成例
IKEの設定
暗号アルゴリズム     3des
認証アルゴリズム     sha1
認証手段             pre-shared(default)
PFS                 DHグループ:3072 bit(default)
リスト 2.21.2 設定例
ike proposal ikeprop encryption 3des hash sha
ike policy policy1 peer 10.2.2.2 key xxxxxxxx ikeprop

2.21.1.3. アルゴリズム

UNIVERGE IX-R/IX-V シリーズのIKEでは、以下のアルゴリズムをサポートしています。

項目

説明

暗号アルゴリズム

Triple DES-CBC
AES-CBC 128bit
AES-CBC 192bit
AES-CBC 256bit

認証アルゴリズム

HMAC-SHA1-96
HMAC-SHA2-256
HMAC-SHA2-384
HMAC-SHA2-512

DHグループ

768-bit (DH group 1)
1024-bit (DH group 2)
1536-bit (DH group 5)
2048-bit (DH group 14)
3072-bit (DH group 15)

2.21.1.4. 宛先のFQDN指定

宛先をFQDNで指定することが可能です。指定したFQDNの名前解決を行い対応したアドレスを宛先として使用します。宛先のFQDN指定を利用することにより、不定アドレス同士での接続が可能となります。詳細はDNSの項を参照してください。

名前解決の契機、アドレス更新時の動作、未解決時の動作は以下のとおりです。

項目

説明

名前解決の契機

定期的な更新
すべてのSAが削除された場合

アドレス更新時の動作

該当するSAを削除

名前未解決時の動作

SA作成不可

設定例は以下のとおりです。

リスト 2.21.3 設定例
宛先をhost1.example.comで指定

ike proposal ike-prop encryption aes hash sha
!
ike policy ike-policy peer-fqdn-ipv4 host1.example.com key secret ike-policy
ike keepalive ike-policy 10 3
!
ipsec autokey-proposal sec-prop esp-aes esp-sha
!
ipsec autokey-map sec-map ipv4 peer-fqdn-ipv4 host1.example.com sec-prop
!
interface Tunnel0.0
  tunnel mode ipsec
  ip address 10.0.0.1/30
  ipsec policy tunnel sec-map
  no shutdown

2.21.2. 対向装置の監視

UNIVERGE IX-R/IX-V シリーズでは、対向装置の監視の機能として、以下の2つの機能があります。

  • IKEキープアライブ

  • ネットワークモニタを利用した監視

2.21.2.1. IKEキープアライブ機能

IKEキープアライブ機能は相手の生存を常に監視する機能です。

IPsecリモートアクセスの場合など、一方のアドレスが動的に変化する環境の場合には、相手の存在を常に監視しておく必要があります。

この機能を使用しない場合、たとえばセンタ側ルータがリブートしたときに、センタ側ルータは自身のリブートをアドレス不定の拠点側ルータに通知する手段がありません。このため拠点側ルータのSAは削除されず、センタ側ルータと拠点側ルータの状態がずれてしまい、IPsecによる通信が停止してしまいます。

UNIVERGE IX-R/IX-V シリーズのIKEキープアライブ機能はRFC3706に基づく仕様です。UNIVERGE IX-R/IX-V シリーズ・UNIVERGE IX2000/IX3000シリーズでの接続確認のみ行っております。

設定・確認コマンドは次のとおりです。

項目

説明

ike keepalive

IKEキープアライブの設定

show ike keepalive

IKEキープアライブ設定の表示

UNIVERGE IX-R/IX-V シリーズのIKEキープアライブ機能は、片方向のみキープアライブを行う、パッシブモードの動作が可能です。

  • パッシブモード動作

    IKEキープアライブを使用しない設定でも、自身がIKEキープアライブをサポートしていることを表明します。このため、対向装置にIKEキープアライブを行う設定がされている場合、対向装置のIKEキープアライブは動作します。UNIVERGE IX-R/IX-V シリーズは、対向装置から受信したkeepaliveに対してkeepalive-ackを返します。

2.21.2.2. ネットワークモニタ機能を利用した相手装置監視

前項のキープアライブ機能をサポートしていない装置と対向している場合には、ネットワークモニタ機能を利用することにより、同様な監視を行うことが可能となります。

ネットワークモニタ機能では、ICMP echoを送信し、ICMP echo replyを受信することにより、相手装置の生存確認を行います。相手装置との通信が不可になった場合には、SAの削除を行います。

ネットワークモニタ機能については、ネットワークモニタの項を参照してください。

  • watchグループコンフィグモード

    項目

    説明

    action ipsec clear-sa

    監視異常時のSAの削除

    リスト 2.21.4 設定例
    相手装置(192.168.0.2)の監視を行い、障害発生時にSAの削除を行う
    (IKE/IPsecの設定は省略します)
    
    watch-group ipsec-keepalive 10
      event 10 ip unreach-host 192.168.0.2 Tunnel0.0
      action 10 ipsec clear-sa Tunnel0.0
    !
    network-monitor ipsec-keepalive enable
    

2.21.3. commit-bit対応

IKEフェーズ1においてcommit-bitを使用することにより、InitiatorとResponderのSA状態不一致が発生する可能性を低下させることができます。

本機能はAggressiveモードのResponderにおいて設定する場合のみ有効です。Mainモードの場合もしくはInitiatorでの動作についてはサポートしていません。

以下にcommit-bitの動作を説明します。

Aggressiveモード使用時の通常のシーケンスは、次のようになります。

../_images/22_ike_02.svg

図 2.21.2 Aggressiveモード使用時のシーケンス

このシーケンスにおいて、(3)をResponderが受信できなかった場合、ResponderではSAが作成されませんが、InitiatorではResponderが(3)を受信しなかったことの確認を行う手段がないため、SAは作成されたままとなり、InitiatorとResponderでSAの状態の不一致が発生します。

このようなSA状態不一致の発生する可能性を低下させるために、commit-bitを使用します。commit-bitを使用した場合のシーケンスは次のようになります。

../_images/22_ike_03.svg

図 2.21.3 commit-bitを使用した場合のシーケンス

commit-bitを使用した場合、Responderはcommit-bit使用フラグを設定し(2)を送信します。そして、(3)を受信後にSAを作成し、(4)を送信します。

Initiatorは、commit-bitを使用する場合には、(4)を受信後、SAの作成を行います。また(4)を受信できない場合、(3)を再送信します。

これによりInitiatorでは(3)の応答確認後、SAの作成を行うことができるので、Responderで(3)を受信できなかった場合でもSAの状態不一致の発生を防ぐことができます。

設定コマンドは次のとおりです。

項目

説明

ike commit-bit

commit-bit使用の設定

ike retransmit-count

IKEパケットの再送回数の設定

ike retransmit-interval

IKEパケットの再送間隔の設定

commit-bitの設定はResponderでのみ行います。

Initiatorで設定した場合、設定は無視されます。

リスト 2.21.5 設定例
ike commit-bit ike_policy1

commit-bitを使用した場合でもSAの状態不一致を完全に防ぐことはできません。たとえば、以下の場合にはSAの状態不一致が発生します。

(4)をInitiatorが受信できなかった場合、ResponderではInitiatorが(4)を受信したことを知る手段がないためResponderにはSAがあり、InitiatorにはSAがない状態となり、状態不一致が発生します。

この状態の場合、Initiatorは指定回数再送を行いますが、ResponderはSA作成済みなので(4)の再送は行いません。したがって、そのまま再送回数が終了しますので、SA状態の不一致が発生します。

このような場合の状態不一致を解消するために、再送回数が終了した場合に自動で再接続を行います(IKE自動再接続機能)。

以下の状態になると、再接続機能は停止します。

  • CLIによるSA削除

  • DELETEメッセージ受信によるSA削除

  • 当該ピアとの別Phase1接続完了

設定はありませんので、自動で再接続を行います。

../_images/22_ike_04.svg

図 2.21.4 再接続のシーケンス

2.21.4. Dangling SA型/Continuous-channel SA型

SAの管理方式には、IKE SAとIPsec SAを独立に管理する、Dangling SA型と、IKE SAとIPsec SAが連動するContinuous-channel SA型があります。 UNIVERGE IX-R/IX-V シリーズでは、Dangling SA型で動作しています。

Dangling SA型の場合には、オペレーションミス等により、一方のIKE SA、IPsec SAともに削除され、もう一方のIPsec SAのみが残る状態となる場合が考えられます。 動的アドレス環境で使用する場合、Initiator側のIPsec SAのみが残った状態となると、IPsec SAのライフタイムが満了するか、IPsec SAを削除しなければ、通信はできない状態となります。

../_images/22_ike_05.svg

図 2.21.5 IPsec SAの有無が不一致になる場合のシーケンス

Continuous-channel SA型では、IKE SAとIPsec SAが連動するため、IKE SAが削除されるとIPsec SAが削除されます。したがって、上記のように、動的アドレス環境において、InitiatorのIPsec SAのみが残り、通信不可となる状態に陥ることを回避することができます。

../_images/22_ike_06.svg

図 2.21.6 IKE SAの削除に連動してIPsec SAが削除される場合のシーケンス

Continuous-channel SA型の設定コマンドは次のとおりです。

項目

説明

ike suppress-dangling

Dangling SAの抑止設定

リスト 2.21.6 設定例
ike policy policy1 peer 192.168.0.2 key KEY
ike suppress-dangling policy1

2.21.5. リキー設定

SAのライフタイム満了時に、新たにSAの再生成を行います(リキー)。IKE SAは、デフォルトではライフタイム満了の30秒前に、リキーを行います。

リキー開始タイミングの変更ができます。

設定は次のとおりです。

項目

説明

ike rekey remaining-lifetime

IKE SAリキータイミングの設定

リスト 2.21.7 設定例:全ポリシーのリキーを300秒前に行う。
ike rekey remaining-lifetime default second 300
リスト 2.21.8 設定例:特定ポリシー(policy1)のリキーを300秒前に行う。
ike policy policy1 peer 192.168.0.2 key KEY
ike rekey remaining-lifetime policy policy1 second 300

2.21.6. DELETE送信抑止設定

SA削除時のDELETEメッセージの送信を抑止することができます。

設定は次のとおりです。

項目

説明

no ike send-delete

DELETE送信抑止の設定

リスト 2.21.9 設定例
SA削除時のDELETEメッセージの送信を抑止する。

no ike send-delete