VPN(Virtual Private Network)とは、インターネットという公共回線上に、暗号化された仮想的な専用通信経路を構築する技術です。
単なる「IPアドレスを隠すツール」ではなく、以下の3要素によって成立しています。
この3つを順に整理します。
トンネリングとは、本来の通信パケットを別のプロトコルで包み込んで送る仕組みです。
通常の通信では、あなたの端末からWebサイトへ直接パケットが送信されます。しかしVPNでは、
元の通信データ
↓
暗号化
↓
VPN用プロトコルで包む(カプセル化)
↓
VPNサーバへ送信
という構造になります。
外部から見ると「暗号化されたデータの塊」にしか見えず、中身は解読できません。
VPNは、あなたの端末とVPNサーバ間の通信を暗号化します。
ここで重要なのは、
VPNが保護するのは「端末 ↔ VPNサーバ」間である
という点です。
その先(VPNサーバ ↔ Webサイト)は、通常はHTTPS(TLS)などWeb側の暗号化に依存します。
つまり通信は次のようになります。
あなたの端末
↓(VPN暗号化)
VPNサーバ
↓(HTTPSなどで暗号化)
Webサイト
現代のWebはほぼHTTPS化されているため、実質的には多層的な暗号構造になっています。
VPN接続は以下のステップで確立されます。
ユーザー認証が行われます。
正規ユーザーであることを確認します。
暗号通信に使う共通鍵を安全に生成・共有します。
一般的には以下が使用されます。
ここで「このセッション専用の鍵」が決定します。
暗号化された仮想トンネルが形成されます。
以降の通信はすべてこのトンネルを通ります。
通信経路は次のようになります。
あなた → VPNサーバ → Webサイト
Webサイト側から見ると、アクセス元はVPNサーバのIPになります。
VPN利用時、ISPが通常確認できるのは以下です。
見えるもの
原則見えないもの
ただし重要な注意点があります。
もしDNSリクエストがVPN外へ送られてしまうと、ISPは「どのドメインを解決したか」を把握できる場合があります。
そのため、安全性を高めるには
などが重要になります。
企業ネットワークで多く採用されています。
TLSは「握手(認証・鍵交換)」に使われ、実際のデータは生成された鍵で暗号化されます。
次世代プロトコルとして広がっています。
外部から社内ネットワークへ接続する形式。
自宅PC → VPN → 社内ネットワーク
拠点同士を常時接続する形式。
本社 ⇄ VPN ⇄ 支社
企業ネットワーク構築で一般的です。
よく使われる暗号
現時点では理論上十分強固とされています。
ただし安全性はアルゴリズムだけで決まりません。
脆弱化する要因
VPNは「暗号が強い=安全」ではなく、設定と運用が極めて重要です。
VPN事業者のログポリシーや法域によっては、記録が残る可能性があります。
これらはVPNでは防げません。
VPNとは、
という流れで、端末とVPNサーバ間に安全な通信経路を作る技術です。
その結果
しかし、
といった要素次第で実際の安全性は変わります。
以上、VPN接続の仕組みについてでした。
最後までお読みいただき、ありがとうございました。