このページの本文へ

初心者歓迎!ネットワークセキュリティ入門 第7回

ネットワークの脅威と対策を一から学ぼう

インターネットで構築するVPNの仕組み

2009年09月30日 06時00分更新

文● 大谷イビサ/TECH.ASCII.jp

  • この記事をはてなブックマークに追加
  • 本文印刷

通信相手の認証暗号化と認証・改ざん検知

 次はIPsecで提供されている通信相手の認証、パケットの暗号化、認証、改ざん検知など、各種セキュリティ機能の詳細について見ていこう。

 まず通信相手の認証は、VPNを構築する相手が正しいかを相互に認証する機能だ。通常は「事前共有鍵」と呼ばれる同一のパスワードを登録し、トンネル構築時に照らし合わせるのが一般的だ(図4)。

図4 改ざんやなりすましを防ぐパケットと接続先の認証

 パケットの暗号化は、文字通りパケット単位でデータを暗号化するもの。「DES(Data Encryption Standard)」、「3DES」、「AES(Advanced Encryption Standard)」などの共通鍵アルゴリズムを用いて暗号化を行ない、経路上での盗聴や改ざんなどを防ぐ(図5)。

図5 盗聴や改ざんを防ぐIPsecの暗号化

 ただ、これらの共通鍵アルゴリズムを用いる限りは、つねに盗聴の危険性が伴う。その点、IPsecでは交換される数値がネットワーク上で漏えいしても鍵が復元できない「Diffie-Hellman法」という方式で乱数交換を行なう。これにより、共通鍵自体をネットワーク上に流さなくとも、暗号化のための鍵を両者で生成できるのだ。

 パケットの認証と改ざん検知は、パケットが正当な通信相手からの送信であることを証明し、さらに途中で改ざんされていないかをチェックするもの。これには通信内容とパスワードから算出された「MAC(Message Authentication Code)」という値をパケットに付与することで実現する。

 MACはハッシュ関数によって算出されたパケットのダイジェストである。受信側はパケットに付けられたMACと、自身が算出したダイジェストを比較することで、悪意の第三者による改ざんの有無を検知できる。このハッシュの算出に関しては、「MD5(Message Digest 5)」と「SHA(Secure Hash Algorithm)」という2つのアルゴリズムが用意されている。

IKEで自動的に設定情報を更新

 IPsecでは、実際のトンネルを構築する前に、VPNルータ同士が各種の設定を交換する必要がある。そこでIPsecでは「IKE(Internet Key Exchange)」というプロトコルを用いて、暗号や認証のパラメータを自動的に交換・更新することになる。IKEを使うと、鍵生成に必要な情報が安全に交換され、さらに一定時間が経つと自動的に更新される※2ので、セキュリティの強度を保つことができる。

※2:自動的に更新される この鍵の自動更新機能をリキー(Re-Key)という。時間やパケット量に応じて、更新が行なわれるが、ベンダーごとにデフォルトの値が違うため、トラブルの元になりやすい。

 このようにIPsecにはセキュリティの強度を確保するためのさまざまな仕組みが盛り込まれている。しかし結果として、仕組み自体が複雑で、導入したいユーザー側にとって敷居の高いものになっている。

 ただ、最近ではインターネットVPNの構築・運用をISPや通信事業者に委託できる「マネージドVPN」というサービス形態も一般的になっている。自前での構築やトラブル解決に自信がない場合は、こうしたサービスを用いるとよいだろう。

(次ページ、「リモートアクセスVPNにIPsecが使われない理由」に続く)


 

カテゴリートップへ

この連載の記事
  • 角川アスキー総合研究所
  • アスキーカード