VPN

OpenVPN おーぷんぶいぴーえぬ

VPNSSL/TLSトンネリングオープンソースリモートアクセス暗号化
OpenVPNについて教えて

簡単に言うとこんな感じ!

OpenVPN は「誰でも無料で使えるVPNの仕組み」だよ!ウェブサイトの通信に使われる SSL/TLS という強力な暗号化技術をそのまま流用して、拠点間やリモートワークの通信を安全なトンネルで守ってくれるんだ。設定の自由度が高くてファイアウォールも通り抜けやすいのが人気の秘密!


OpenVPN とは

OpenVPN は、オープンソースで開発されている VPN(仮想プライベートネットワーク)ソフトウェアです。2001年に James Yonan によって開発され、現在は OpenVPN Inc. が主導しながらもコミュニティと共に継続的に改良されています。ライセンスは GNU GPL であるため、誰でも無償で利用・改変・配布が可能です。

最大の特徴は、HTTPS(ウェブの暗号化通信)と同じ SSL/TLS プロトコル を使って VPN トンネルを構築する点です。多くのファイアウォールや NAT(ネットワークアドレス変換)環境では HTTPS ポート(443番)の通信が許可されているため、企業ネットワークや公衆 Wi-Fi 環境でも通信がブロックされにくいという大きなメリットがあります。

IPsec など従来の VPN プロトコルと比較して設定の柔軟性が高く、Windows・macOS・Linux・iOS・Android と幅広いプラットフォームで動作します。中小企業のリモートアクセス VPN から大規模な拠点間接続まで、さまざまな用途で世界中に普及しています。


OpenVPN の仕組みと構成

OpenVPN は クライアント/サーバー型 のアーキテクチャを採用しています。サーバー側でデーモン(常駐プログラム)を起動し、クライアントが証明書・設定ファイルを使って接続しに来る構成です。

構成要素役割
OpenVPN サーバーVPN の入口。クライアントを認証しトンネルを確立する
OpenVPN クライアントPC・スマートフォンなどに導入。サーバーに接続する
CA認証局)証明書サーバー・クライアント双方の正当性を証明する
サーバー証明書/鍵サーバーの身元を証明する SSL/TLS 証明書
クライアント証明書/鍵クライアントの身元を証明する(パスワード認証との併用も可)
設定ファイル(.ovpn)接続先・ポート・暗号方式などをまとめた設定ファイル
tun / tap インターフェース仮想ネットワークインターフェース(L3=tun、L2=tap)

tun モードと tap モードの違い

モードレイヤー主な用途
tun(トンネル)L3(ネットワーク層)リモートアクセス VPN・インターネット経由の接続
tap(ブリッジ)L2(データリンク層)拠点間をイーサネットレベルでつなぐ場合

ほとんどのリモートアクセス用途では tun モード が使われます。

使用する主なポート

プロトコルポート番号特徴
UDP1194(デフォルト)高速・低遅延。VoIP・ゲームなどに適する
TCP443 または任意ファイアウォールを通り抜けやすい。HTTPSと同ポートも可

歴史と背景

  • 2001年 — James Yonan が OpenVPN 1.0 を公開。IPsec の設定複雑さへのアンチテーゼとして登場
  • 2002年 以降 — オープンソースコミュニティで急速に普及。Linux ディストリビューションに標準収録される例も増える
  • 2006年 — OpenVPN 2.0 リリース。マルチクライアント対応が強化され、企業利用が一気に拡大
  • 2008年 — OpenVPN Technologies, Inc.(現 OpenVPN Inc.)設立。商用版サポートの提供開始
  • 2010年代 — スマートフォンの普及に合わせて iOS・Android 向けクライアントアプリが登場
  • 2017年WireGuard など次世代 VPN プロトコルが台頭し始め、OpenVPN は「枯れた安定技術」として位置づけられるように
  • 現在 — Access Server(商用版)と Community Edition(無償版)の2本立てで提供。クラウド・オンプレ問わず広く使われ続けている

主要 VPN プロトコルとの比較

OpenVPN は多くの VPN プロトコルの中の1つです。用途や環境によって使い分けることが重要です。

主要 VPN プロトコル 比較マップ OpenVPN 基盤: SSL/TLS ポート: UDP 1194 TCP 443 他 暗号化: AES-256 OS: 全主要OS ✅ ファイアウォール 通過しやすい ✅ 高い実績・安定 ⚠️ 設定がやや 複雑 ⚠️ 速度は中程度 WireGuard 基盤: 独自プロトコル ポート: UDP 51820 (固定) 暗号化: ChaCha20 OS: 全主要OS ✅ 高速・低遅延 ✅ コードが少なく シンプル ⚠️ UDP固定で FWに弱い場合も ⚠️ 比較的新しい IPsec / IKEv2 基盤: IPsec ポート: UDP 500 UDP 4500 暗号化: AES-256 OS: 全主要OS ✅ OS標準対応 ✅ モバイルに強い (再接続が速い) ⚠️ NAT越えで 問題が出ることも ⚠️ 設定が複雑 L2TP / PPTP 基盤: L2TP+IPsec / PPTP ポート: UDP 1701 TCP 1723 OS: 全主要OS ✅ 設定が簡単 ✅ OS標準対応 ❌ PPTP は 脆弱性あり ⚠️ 速度が遅い ⚠️ 推奨されない ※ 新規導入なら OpenVPN または WireGuard が推奨。PPTP は使用を避けること

OpenVPN の通信フロー(概略)

[クライアント PC]
    ↓ ① .ovpn 設定ファイルで接続要求
    ↓ ② TLS ハンドシェイク(証明書の相互認証)
    ↓ ③ 暗号化トンネル確立(AES-256 など)
    ↓ ④ 仮想 IP アドレスを割り当て(例: 10.8.0.2)
[OpenVPN サーバー]
    ↓ ⑤ 受信パケットを復号して社内ネットワークへ転送
[社内サーバー / クラウドリソース]

関連する規格・RFC

規格・RFC番号内容
RFC 5246TLS 1.2 の仕様(OpenVPN が利用する暗号化基盤)
RFC 8446TLS 1.3 の仕様(OpenVPN 2.5 以降でサポート)
RFC 768UDP プロトコル仕様(OpenVPN のデフォルト転送プロトコル)
RFC 793TCP プロトコル仕様(OpenVPN の TCP モードで使用)
RFC 4301IPsec セキュリティアーキテクチャ(比較対象として重要)

関連用語

  • VPN — 仮想プライベートネットワーク全般の概念
  • SSL/TLS — OpenVPN が暗号化基盤として使うプロトコル
  • IPsec — OpenVPN と並ぶ代表的な VPN プロトコル
  • WireGuard — OpenVPN より新しい高速 VPN プロトコル
  • PKI(公開鍵基盤) — OpenVPN の証明書認証を支える仕組み
  • ファイアウォール — OpenVPN のポート選択に影響するネットワーク機器
  • リモートアクセス — OpenVPN の主要ユースケース
  • NAT — OpenVPN が克服しやすいネットワーク変換の仕組み