Site cover image

根と葉

IPsec

情報処理安全確保支援士に対する勉強のメモ。

VPN

盗聴や改ざんのリスクが高いネットワークを利用する際に、安全に通信するための技術。下記の3つの機能を持つ。

  • 暗号化: パケットを暗号化する
  • 完全性検査: 通信の途中で改ざんがあったかどうかを検査する
  • トンネル化: 新しいヘッダーをつけるなどしてカプセル化し、透過的な通信を可能にする

IPsec

IPレベルでVPNを実現するためのプロトコルのこと。

設定項目

主に下記の3つの設定項目がある。それぞれ太字が現在の主流らしい。

  • 通信モード
    • トンネルモード: IPパケットをヘッダーごと暗号化する(透過的で安全)
    • トランスポートモード: IPパケットのデータ部だけを暗号化する
  • プロトコル
    • ESP(Encapsulating Security Payload): 暗号化と認証が可能
    • AH(Authentication Header): 認証のみ可能
  • 認証モード
    • アグレッシブモード: 相互認証にIPアドレスを含めなくてもOK
      • 動的IPアドレスに対応
    • メインモード: 相互認証に固定IPを使う
トンネル化とは?

ある荷物を届けるときに、その荷物ごと新しい段ボールに入れるイメージ。

ある通信が、自宅PC → VPNソフト → インターネット → 会社のVPN装置 → 社内サーバーという経路でアクセスするとき、VPNソフトと会社のVPN装置間を、VPN通信として元の通信を包む(カプセル化)。カプセル化と暗号化は別の概念だが、VPN通信では基本的にカプセル化と暗号化の両方が行われる。

トンネル作成には大きく下記のステップが必要となる。

  • 相互認証
    • 事前共有鍵や証明書によって相手を認証する
  • 暗号方式の合意
  • 鍵の共有

仕組み

現在の主流である、トンネルモード + ESP + アグレッシブモードについて記載する。

IKE SA(制御用トンネル)の作成
  • 事前共有鍵を使って相互認証を行う
    • 事前共有鍵は、あらかじめ両方のVPN装置に設定しておく
  • 次のIPsec SAの作成で行う暗号アルゴリズムや認証アルゴリズムの交換/確認を安全に行うためのトンネル(制御用トンネル)を作成する
    • 具体的には、暗号アルゴリズム/ハッシュアルゴリズムを相互確認し、鍵をDH方式で共有する
IPsec SA(通信用トンネル)の作成
  • 制御用トンネルを使って、上り用/下り用それぞれの通信用トンネル作成(下記)を行う
    • 暗号アルゴリズム、認証アルゴリズムの合意
    • 双方で暗号鍵、認証鍵の作成