変更要約: 初版(主題2.12・副主題2.12.1〜2.12.4に対応)
6.3OpenVPNの設定と管理
VPN(Virtual Private Network)の基本概念と、オープンソース実装OpenVPNの設定を学びます。設定ファイル群を置く/etc/openvpn/、サーバー/クライアント両方で使うopenvpnコマンド、代表的な2つの接続形態(ポイントツーポイントとサイトツーサイト)の違いを押さえます。
拠点間やリモートワーカーが安全に社内ネットワークへアクセスするための手段がVPNで、公衆網の上に暗号化された仮想的な専用線を作ります。OpenVPNはSSL/TLSベースの暗号化を用いるオープンソースVPN実装で、Linuxサーバーで手軽に構築できる代表格です。
6.3.1OpenVPNの構成ファイルとコマンド
- 設定ファイルや証明書・鍵は/etc/openvpn/以下に配置する(サーバー用設定・クライアント用設定を別々の.confファイルとして管理するのが一般的)。
- openvpnコマンドはサーバー側・クライアント側の両方で同じバイナリを使う。設定ファイルの内容(
serverディレクティブの有無など)によって役割が決まる。 - 暗号化にはSSL/TLSベースの証明書認証(CA証明書・サーバー証明書・クライアント証明書)または事前共有鍵を用いる。証明書ベースの方がスケールしやすく実務での主流。
6.3.2接続形態:ポイントツーポイントとサイトツーサイト
- ポイントツーポイント(P2P)=1対1の端末同士を直接つなぐ形態。リモートワーカー1人が社内へアクセスするような、クライアント個別接続に向く。
- サイトツーサイト=拠点(ネットワーク)同士をまとめて接続する形態。本社と支社のネットワーク全体を1本のVPNトンネルで結び、双方の端末同士が透過的に通信できるようにする。
- 用途で使い分ける=個人の端末からの単発アクセスはポイントツーポイント、拠点全体の常時接続はサイトツーサイトが定石。
「OpenVPNの設定は/etc/openvpn/に置く」「サーバーもクライアントも同じopenvpnコマンド(設定ファイルで役割が決まる)」「1対1=ポイントツーポイント、拠点同士=サイトツーサイト」 が定番です。VPNがなぜ必要か(公衆網上での暗号化トンネル)という基本概念の理解も問われます。
実務での典型パターンを整理すると理解が定着します。「営業担当者が外出先から社内のファイルサーバーへアクセスしたい」というのはポイントツーポイントの典型で、各担当者の端末にOpenVPNクライアントをインストールし、それぞれが本社のOpenVPNサーバーへ個別接続します。一方「東京本社と大阪支社のネットワークを常時つなぎ、双方のオフィスの端末同士が意識せず通信できるようにしたい」というのはサイトツーサイトで、各拠点にOpenVPNのゲートウェイ(ルーターやサーバー)を置き、拠点間のすべてのトラフィックをトンネル経由でルーティングします。設定面では、/etc/openvpn/にサーバー用の設定(server.conf)とクライアント用の設定(client.conf)を分けて置き、証明書・鍵ファイルへのパスをそれぞれのconfファイル内で指定します。サーバー設定には通常server 10.8.0.0 255.255.255.0のようなVPN内部で使う仮想サブネットの指定や、push "route 192.168.1.0 255.255.255.0"のようにクライアントへ社内ネットワークへの経路を配布する設定が含まれます。証明書認証を使う場合はCA(認証局)を立て、サーバー証明書とクライアントごとの証明書を発行して失効管理(CRL)も行うのが本格運用の定石ですが、L2の範囲としては構成ファイルの置き場所とコマンド、接続形態の違いを押さえておけば十分です。
| 接続形態 | 接続単位 | 典型用途 |
|---|---|---|
| ポイントツーポイント | 端末対端末(1対1) | リモートワーカーの個別アクセス |
| サイトツーサイト | 拠点対拠点(ネットワーク全体) | 本社・支社間の常時接続 |
ひっかけ: 「OpenVPNのサーバー用とクライアント用は別々の専用コマンドがある」は誤りです。サーバーもクライアントも同じopenvpnコマンドを使い、設定ファイルの内容で役割が決まります。また「サイトツーサイトは個々の端末を1台ずつVPNサーバーに接続する形態」も誤り=それはポイントツーポイントの説明で、サイトツーサイトは拠点(ネットワーク)同士をまとめて接続します。
6.3.3この節のまとめ
- 設定は/etc/openvpn/。サーバー・クライアントとも同じopenvpnコマンド(設定内容で役割決定)
- ポイントツーポイント=1対1(個別アクセス)/サイトツーサイト=拠点同士(ネットワーク全体を接続)
進捗の記録にはログインが必要です。
理解度チェック
(軽い確認用)Q1. 本社と支社のネットワーク全体を常時接続し、双方の端末が透過的に通信できるようにしたい。どの接続形態が適切?
Q2. OpenVPNの設定ファイルや証明書・鍵を配置する標準的なディレクトリはどれ?
Q3. OpenVPNのサーバー側とクライアント側で使用するコマンドの関係として正しいものは?

