2008/08/22

IPsec Gateway Failover Protocol

[draft-sheffer-ipsec-failover-04]
IKEv2にはcomputational/communicationオーバヘッドがある
(cryptographic operationが必要かつ何度もメッセージのやり取り)

リモートアクセスの場合
EAPを認証に使ったときにはさらにラウンドトリップが増え、遅延する。

このためfailureリカバリにおいてSAを再確立する場合、時間がかかる。
特にIPsecピア(例、VPN GW)はさまざまなエンドポイントと再確立する必要がある。


多くのfailureケースでは中断したIKE/IPsecセッションをレジュームするための効率的な
方法を提供することは利用価値が高い。

この文書では、IKE SAをレジュームする方法を述べる。

クライアントが再接続もしくは他のGWから移行してくるときに以前のIKEv2 state情報を
運ぶ(暗号化されたチケットの中)。
暗号化されたチケットはVPN GWのみが復号可能。
このチケットはGWで作成され、クライアントでは復号できない。
この方法はTLSのsession resumption(RFC4507)から借りてきた。

他のGWへfailoverする場合にもつかえる。
(互いに信頼してチケットの鍵を共有している場合)。

ゴール:
symmetric cryptoのみでCPUの負荷を最小に
GWがクライアントにステートをプッシュできる
IKEv2のセキュリティにネガティブインパクトを与えない。

ノンゴール:
ロードバランス
クライアントがfailoverのdetectする方法

ユースケース:
rfc4306 1.1.3 ipsec tunnel vpn gw/client
transport c/s

VPNシナリオ(tunnel)

VPN GW: fail
client recconect the GW or another GW

クライアントは通常のIKEv2 exchangeを実施するか
IKE_SESSION_RESUME exchangeを実施。
再接続の場合のアドレス再割り当てはDHCP市か述べていないけど、IPV6の時も考えてる?

ステートフル・ステートレス
チケットはクライアントで保管
チケットはGW同士で保管


C/Sシナリオ(transport/tunnel)

クライアントは通常のIKEv2 exchangeを実施するか
IKE_SESSION_RESUME exchangeを実施。
この場合は必ずinitiatorとresponderが固定していること。

クライアントは以下の時にチケットをリクエスト

IKE_AUTH exchange (N(TICKET_REQUEST))
CREATE_CHILD_SA exchange (rekey)
informational exchange (
- GW reply w/ N(TICKET_ACK)
- ticket lifetime is about to expire
IKE_SESSION_RESUME exchange


IKE_AUTH
...N(TICKET_REQUEXT) ->
<- ...N(TICKET_OPAQUE) create a ticket      or         ...N(TICKET_NACK) refuse      or         ...N(TICKET_ACK) cannot grant a ticket immediately               eg, packet size limitation    ticket will be sent lately by informational exchange    durint the lifetime of IKE SA  チケットは一回のみ有効、クライアントはリユースしちゃだめ。 サーバは拒否すべきだけど、受け入れてもいい。 その場合はリプライアタックの危険性があるよ。  IKE_SESSION_RESUMEは新しく導入。 IKE_AUTHとにてCHILD SAを作成。  DoSを避けるためにクッキー。  2度目のfailureに備えてpiggyback  N(): TICKET_OPAQUE TICKET_REQUEST TICKET_ACK TICKET_NACK TICKET_GQTEWAY_LIST チケットのidentitiy (IDi, IDr) lifetimeはN(TICKET_OPAWUE)に記述 チケットの鍵には定義していない。

0 件のコメント: