VPNとは、Virtual Private Networkの略で、仮想的に専用線を構築することです
どういった経路を経由して相手に届くのかがわからないと、第三者に盗聴されたり、通信相手をなりすまされることを防ぐためにVPNが使われます。
専用線的なつながりを作ることで、なりすましや盗聴を防ぐのがVPNです。
VPNの分類
- インターネットVPN:インターネットを利用して構築したVPN。個人向け
- IP-VPN:通信業者が構築したIP網を利用するVPN。法人向け
IP-VPNと似ているものとして、広域イーサネットがあります。
どちらも通信事業者が提供するサービスです。
違いとしては、広域イーサネットは、様々なルーティングプロトコルを使用できるのに対し、IP-VPNはIPプロトコルを使用します。
そのため、広域イーサネットは柔軟なカスタマイズが可能です。
IP-VPNはIPパケットを伝達するネットワークで契約した宛先同士しか通信できません。
また、公開網であるインターネットと異なり、暗号通信は不要です。
IPアドレスを使わず、MPLSというプロトコルを使うため、同一のIPアドレスが存在しても問題になりません。
IPsec-VPN
インターネットVPNの一種で、L3(ネットワーク層)でVPNを構築するときに使うプロトコルです。
IPパケットを暗号化して通信します。
OSがレベルで対応する必要があります。
TLS-VPNはL4(トランスポート層)で使うプロトコル、SSH-VPNはL7(アプリケーション層)で使うプロトコルです。
IPsecのプロトコル
AH
メッセージ認証。パケットの改ざんを検証するプロトコル
ESP
パケットの暗号化、改ざんの検証を行うプロトコル
IKEA
鍵交換プロトコル、共通鍵を決める。接続先のエンティティ認証をする。
基本的に、ESP・IKEAを使います。
IPsecの運用モード
トンネルモード
LAN間(拠点間)にVPNを構築する問に利用します。
VPNルータ同士で暗号化するため、クライアントは暗号化を意識する必要がありません。
輸送対象のIPパケット全体(IPヘッダ・TCPヘッダ・データ・ESPトレーラまで)を保護するために、元のパケットに新IPヘッダーをつけることで、VPNが暗号化を行います。
トランスポートモード
リモートアクセスVPNで利用されることが多いです。
リモートアクセスVPNとは、外部から内部LANに接続できるようにするためのVPNです。
IPsecが実装された機器同士で暗号化するため、クライアントで暗号化するソフトを導入します。
VPN側で暗号化しない点がトンネルモードと異なります。
TCP/UDPヘッダとペイロードを保護します。
PCには、インターネットに通信するためのグローバルIPアドレスと、VPNルータに接続するためのプライベートIPアドレスの2種類が振られます。
TLS-VPN
TLS/SSLを利用して暗号化、認証するVPNです。
リバースプロキシ方式
リバースプロキシサーバに秘密鍵とサーバ証明書を入れておき、PCとHTTPS通信します。
リバースプロキシサーバでユーザ認証(クライアント認証でも可)をしたあと、内部にある業務サーバとHTTP通信します。
L2フォワード方式
HTTP以外の通信を使ってアクセスできる方式です。
VPNで仮想NICを実現し、仮想NICへL2フレームを送ると、HTTPSでカプセル化され、VPN装置へ送られます。