【徹底解説】IPsecの解説

IT技術
この記事でわかること
  • IPsecの基本、仕組み
  • IPsecの用途

IPsecの基本

IPsecはInternet Protocol Secuirtyの略称で、VPN等で使われる通信の安全性を保つためのセキュリティプロトコルです。
IPsecはネットワーク層で動作するプロトコルであり、以下の特徴があります。

〇機密性
データを暗号化することで第三者による盗聴や不正アクセスからデータを保護します。

〇データの整合性
ハッシュ関数を使用して、データが送信中に改ざんされていないことを検証します。

〇送信元認証
共有秘密鍵または公開鍵暗号方式を使って、データの送信元を認証します。

〇アンチリプレイ
パケットの再送攻撃を防ぐためのアンチリプレイ機能を備えています。

IPsecの仕組み

IPsecモード

IPsecには2つのモードが存在し、用途に応じて選択します。

  • トンネルモード
    • ネットワーク層で動作する
    • 全てのIPパケットを暗号化するため、送信元IPと宛先IPを隠すことができる
    • IPsec VPNに適したモード ※後ほど解説
    • トランスポートモードよりも複雑な構成となり、処理負荷も高くなる
  • トランスポートモードモード
    • 暗号化を行わない
    • アプリケーション層で動作するため、個別のアプリケーションごとに設定することができる

一般的にトンネルモードの方がセキュリティが高く、トンネルモードが使用されるケースが多いです、

IPsecを確立するまでの流れ

IPsecプロトコルを使用するためには、事前に通信する両端点間でセキュリティアソシエーション(SA)と呼ばれるセキュリティパラメータを交換する必要があります。
このキー交換をIKE(Internet Key Exchange) というプロトコルが実施します。

IKEについては以下の記事で解説しています。

工事中

IPsecのセキュリティを担うプロトコル

IPsecは以下の2種類のプロトコルによってデータの機密性、整合性、暗号化等を実施しています。

〇ESP(Encapsulating Security Payload)

ESPは以下の役割を担っています。

  • データの機密性
    • データを暗号化することで盗聴や不正悪政からデータを保護します。
    • 使用する暗号化アルゴリズムはAES、3DES、ChaCha20/Poly305等です。
  • データの整合性
    • ハッシュ関数を使用して、データが送信中に改ざんされていないことを確認します。
    • 使用するハッシュアルゴリズムは、SHA-1、SHA-256、SHA-384等です。
  • アンチリプレイ
    • シーケンス番号とアンチリプレイウィンドウを使用して、古いパケットの再送信(リプレイ攻撃)を防止します。
  • 送信元認証
    • ESP内に認証データを含めることができ、これによりデータの送信元を認証できます。

ESPはIPヘッダの後ろに配置され、ESPヘッダの後ろに暗号化されたペイロードデータ(IPパケットのデータ部分)が付加されます。

また、トランスポートモードとトンネルモードどちらもサポートしています。
トランスポートモードではデータ部分のみ保護され、トンネルモードでは全IPパケットが新しいIPヘッダでカプセル化されて保護されます。

〇AH(Authentication Header)

AHはデータの送信元を認証するプロトコルであり、以下の役割を担っています。

  • データ送信元の認証
    • ハッシュ関数を使用して送信元を認証します。
    • 具体的には、送信側と受信側で共有する秘密鍵を用いて計算されたハッシュ値がAHヘッダに含まれており、受信側は送られてきたハッシュ値を確認することで、送信元が信頼できるかどうか判断します。
  • 改ざんの検知
    • ハッシュ関数を使ってデータの整合性を検証し、データが改ざんされていないことを確認します。
  • アンチリプレイ
    • AHにはシーケンス番号フィールドがあり、各パケットに通し番号が割り振られます。
    • 信側はこのシーケンス番号を確認することで、同じパケットの再送行為(リプレイ攻撃)を検知して防止できます。

AHはIPヘッダ、AHヘッダ、データの全体に対してハッシュ値を計算するため、改ざんの検知と送信元認証を同時に行えます。
しかし、データの機密性の役割はないため、機密保護が必要なIPsecでは、ESPがデータの機密性と改ざん検知、AHが送信元認証を担うこととなっています。

IPsecの用途

IPsec VPN

IPsecの代表的な用途はIPsec VPNであり、IPsecプロトコルを使ってプライベートな仮想ネットワークを構築する技術です。
主に2つの用途で使用されます。

〇リモートアクセスVPN

  • IPsecを使用して、エンドピント(PCやモバイル端末など)とゲートウェイ(企業などのVPNゲートウェイ)の間にIPsecトンネルを構築します。
  • これにより、インターネット経由でも安全に社内などのリソースにアクセスできるようになります。

〇サイト間VPN

  • 企業の拠点間や支社間をIPsecトンネルでつなぐ形のVPNです。
  • 拠点間の通信はインターネット経由ですが、IPsecのセキュリティにより安全性を確保します。
  • 専用性の使用と比べ、コストを抑えることができます。
タイトルとURLをコピーしました