LoginSignup
0
0
お題は不問!Qiita Engineer Festa 2024で記事投稿!
Qiita Engineer Festa20242024年7月17日まで開催中!

【決定版!】IPsecの構造について理解し分かったつもりを解消しよう

Posted at
1 / 2

1.はじめに

IPsecについては、資格試験や仕事の中で使っているので分かったつもりではいたが、いざ構造を説明しろとなると、AH、IKEなんだっけ? とかになるので、記事にしっかりアウトプットして理解を深めようと思う。また、そんな方への助けにも慣れたらと思う❗

2.IPsecとは

AH、ESP、IKEなどのプロトコルで構成され、IPパケットの完全性と機密性を保証します。
:::note
まず、IPsecとはプロトコルではない。上記のプロトコルを使用してIP(インターネットプロトコル)の完全性と機密性を保護するフレームワーク
:::

3.IPsecを構成するプロトコル

プロトコル 役割
AH(Authentication Header) データの完全性と認証を提供(HMAC)しますが、機密性(データの暗号化)は提供しない。
ESP(Encapsulating Security Payload) データの機密性(暗号化)、完全性、および認証を提供(HMAC)します。(パケットのペイロード部を暗号化)
IKE(nternet Key Exchange) IPsecにおける安全なキー交換メカニズム
:::note
AHは暗号化しないが、ESPはデータを暗号化する。認証についてはHMAC(Hash-based Message Authentication Code)というメッセージ認証コードを生成する仕組みで行う。
:::

4.IPsec通信の流れ

◯IKEのフェーズ1、2について

  • フェーズ1
    ISAKMP SA(アイサカンプエスエー)を確立する。ISAKMP SAは接続相手を認証し、IPsecSAごとの共通秘密鍵を安全に共有するための※SAです。ISAKMPはDiffie-Hellman方式を使って通信の暗号化されていない環境で秘密鍵を安全に共有するための鍵交換方式
    ※SecurityAssociationの略で、両者をつなぐコネクションのようなもの
    参考:認証に使われるID情報の暗号化有無でモードが異なる。
    暗号化あり:メインモード
    暗号化なし:アグレッシブモード
  • フェーズ2
    IPsecSAを確立するための情報を交換する。フェーズ1で確立された経路を使用するためフェーズ2のやり取りは暗号化され、以下の情報やり取りする。
やり取りする情報 内容
暗号アルゴリズム IPsecSAでやり取りするデータを暗号化するためのアルゴリズム
ハッシュアルゴリズム IPsecSAでやり取りするデータのための認証と鍵計算に使われるハッシュアルゴリズム
IPsecの寿命 左のとおり
DHグループ 鍵計算のためのDH(DeffieHellman)方式のパラメータ
ID ESPまたはAH通信を識別するためのID情報
※PFS IPsecSAで使用する共通秘密鍵をより安全に生成するための情報

※Perfect Forward Secrecy(完全前方秘匿性)の略で、暗号通信のセキュリティ概念の一つです。PFSを実装することにより、セッションキー(通信を暗号化するために使われる一時的なキー)が漏洩した場合でも、過去の通信内容が暗号解読されるリスクを最小限に抑えることができます。
:::note
IKEのフェーズ1、2は実際に通信する際に使用されるIPsecSA確立前のフェーズ
:::

◯トンネルモードとトランスポートモード

  • トンネルモード
    元のIPパケット全体を新たなIPヘッダでカプセリングする方式で、新たに追加したIPヘッダは単に転送用として使用される。データの暗号化と認証の範囲はAHとESPでことなる。
  • トランスポートモード
    元のIPパケットを使って転送する。
    暗号化の範囲については以下の記事が図解されており分かりやすかったのでリンクを記載
    ネットワークエンジニアとして IPsec-トランスポートモード・トンネルモード

NAT(IPマスカレード)との共存には注意が必要!AHだとIPアドレスが変換されることで認証できなかったり、ESPの場合はトランスポート層が暗号化されているので、ポート番号変換ができない。以下早見表

プロトコル NAT IPマスカレード
AH 不可 不可
ESP 不可

NAT・IPマスカレードとIPsecの対応表

0
0
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
0
0