著者:田中麻維
大手電機メーカー系のSierに入社後、インフラエンジニアとしてLinuxサーバーの構築や保守・運用、ソフトウェアの開発業務を経験。アイティベル入社後は、IT領域の執筆などを行う。
近年、さまざまなデバイスが普及したことから、あらゆるOSに対応できるVPN技術が広がっています。
本記事では、VPN(Virtual Private Network)の概念から基本的な設定、VPN形態、OS別の設定、セキュリティ、トラブルシュートまでを解説します。
1. VPNの基本概念
VPN(Virtual Private Network)とは、仮想的な専用通信経路を構築し、通信データを暗号化して送受信する技術です。インターネット上にある公共のネットワークを使用しているにもかかわらず、プライベートネットワークのようなセキュアな通信環境を実現できます。
VPNについての詳細は以下の記事をご参照ください。
VPNの形態
VPNには、サイト間VPN(Site-to-Site VPN)とリモートアクセスVPN(Remote Access VPN)があります。これらの形態は、企業のネットワーク要件に応じて、組み合わせて使用することが可能です。サイト間VPNは異なる拠点同士を結ぶのに対して、リモートアクセスVPNは個々のユーザーが遠隔からアクセスするのに適しています。
2. VPNの事前準備
VPNを効果的かつセキュアに設定するために必要な事前準備について解説します。
VPNのタイプ
サイト間VPNなのか、リモートアクセスVPNなのか、その他の特定のVPNタイプなのかを明確に把握しましょう。タイプによってVPNの設定方法や構成が異なります。
ネットワークトポロジーの確認
サイト間VPNの場合、接続する拠点やサーバーのネットワークの構成を理解する必要があります。具体的な情報として、各拠点のネットワークアドレスやサブネット、IPアドレス範囲などが必要です。
認証情報
VPN接続には、ユーザー名、パスワード、認証トークン、証明書などの認証情報が欠かせません。特にリモートアクセスVPNの場合は、ユーザーごとの認証情報を確認する必要があります。
共有鍵や証明書
IPsecなどのプロトコルを使用する場合、通信の暗号化に使用する共有鍵や証明書に関する情報が必要です。
トンネルの設定
サイト間VPNの場合、トンネルのエンドポイントの定義、使用するプロトコルの選択、暗号化アルゴリズム、認証方式などトンネルの設定を指定する必要があります。
ネットワークポリシー
トンネルを通じて許可されるトラフィックや、セキュリティグループの情報など、VPN接続のネットワークポリシーに関する情報が必要です。これらを設定内容に展開します。
ログ設定
セキュリティやトラブルシューティングのために、VPNのログを設定する情報が必要となります。どの情報をログに残すか、どの程度の細かさでログを取得するかをあらかじめ確認することも重要です。
3. サイト間VPNの設定手順
サイト間VPNを設定するステップは以下のとおりです。
①ネットワークのトポロジー確認
サイト間VPNを設定する前に、ネットワークアドレス、サブネット、およびルーティング情報など、接続する各拠点のネットワークのトポロジーを確認します。
②VPNゲートウェイの設定
各サイトでVPNゲートウェイを作成します。これはIPsecトンネルを確立する通信の接続点となります。
③IPsec設定
IPsec設定では、セキュリティアルゴリズムや暗号化キーの設定が必要です。通常は、IKE (Internet Key Exchange)プロトコルを使用して、相手先との鍵交換を行います。
④トンネルの設定
各VPNゲートウェイに対して、相手先のIPアドレスやプリシェアードキーなどを指定してIPsecトンネルを設定します。
トンネルのモード、トンネルのアドレス情報、およびトンネルのトラフィックのフィルタリングなどを指定します。
⑤ルーティングの設定
サイト間VPNを使用する場合に重要なのが、各サイトでのルーティングの設定です。VPN トンネルを通じて、どのネットワークがどの経路でアクセスできるかを構成します。
⑥ファイアウォールの設定
ファイアウォールには、VPNトンネルの通信を許可するための適切なルールを追加します。トンネル通信をブロックしないように設定しなければなりません。
これらのステップを踏むことで、サイト間VPNの設定が完了します。設定にあたっては、各ステップの技術的な要件やセキュリティ上の考慮事項に注意を払うことが重要です。
4.リモートアクセスVPNの設定手順
リモートアクセスVPNの設定には、以下のステップが含まれます。
①SSL VPNサーバーの設定
ファイアウォールやルーターなどのネットワーク機器にてSSL VPNサーバー機能を設定します。
②認証設定
リモートユーザーが使用する認証方式(ユーザー名と、パスワード、証明書)を設定し、アクセス制御を強化します。
③SSL/TLS設定
通信を暗号化する際に使用するSSL/TLSプロトコルやサポートする暗号化方式(暗号化スイートなど)を設定します。セキュリティの向上のために最新のプロトコルとセキュリティ設定を使用します。
④ポートの設定
SSL VPNの通信に使用するポートを設定します。一般的にはHTTPS(TCPポート443)が使用されます。
⑤リモートユーザーアクセスの許可
リモートユーザーがアクセスできるリソースやネットワークセグメントを設定します。必要に応じて、特定のアプリケーションやサービスへのアクセスを制御可能です。
⑥SSL VPNクライアントの設定
リモートユーザーが使用するSSL VPNクライアントソフトウェアを設定します。一般的には、Webブラウザを使用してVPNに接続できる「SSL VPNクライアント」を利用します。クライアントの設定内容はOSによって若干異なりますが、基本的にはVPNプロトコルに応じて共通です。参考として次章にて解説します。
⑦内部サービスへのアクセス設定
ポートフォワーディングを利用して、リモートユーザーが内部ネットワークの特定のサービスにアクセスできるように設定します。
これらのステップを踏むことで、リモートアクセスVPNの設定を完了できます。具体的な設定の手順は、機器やベンダーのマニュアル、サポートドキュメントを参照してください。
5. OS別VPNの設定手順
クライアントの設定手順はOSごとに多少の違いがありますが、設定内容はプロトコルに応じて基本的には共通です。参考として、設定の流れを紹介します。詳細の設定方法は各ベンダーの情報をご確認ください。
Windows11におけるPPTP VPNの設定
①「スタートメニュー」を開き「設定」をクリック
②「ネットワークとインターネット」をクリック
③「VPN」タブに移動し、「VPNの追加」をクリック
④ VPNの設定画面が表示されるので、接続する VPNの詳細情報を入力
⑤ VPNプロバイダを選択
⑥接続先にVPNサーバーのアドレスを入力
⑦接続の名前にVPN接続に表示される名前を入力
⑧ユーザー名とパスワード(VPNに接続するための認証情報)を入力
⑨設定が完了したら、画面上部の「保存」をクリック
⑩「スタートメニュー」から「設定」 > 「ネットワークとインターネット」 > 「VPN」に戻り「接続」をクリックしてVPN接続を確立。ユーザー名とパスワードを求められたら、入力して接続する
公式サイト:Windows で VPN に接続する
macOSにおけるL2TP/IPsec VPNの設定
①システム環境設定を開き「ネットワーク」を選択
②左下の「+」ボタンをクリックし「インターフェース」で「VPN」、タイプで「L2TP over IPsec」を選択
③サービス名に任意の名前を入力
④インターフェースにVPNを設定
⑤サーバーアドレスにVPNサーバーのアドレスを入力
⑥アカウント名にVPN接続に使用するユーザー名を入力
⑦認証設定にパスワードまたは共有秘密鍵を選択
⑧認証設定の詳細に「認証設定」ボタンをクリックし、ユーザー認証と機密性の設定を確認し設定を保存
⑨「ネットワーク」設定画面で「接続」をクリックして VPN 接続を確立。VPNサーバーへの接続が確立されたら、必要に応じて認証情報を入力する
公式サイト:MacでL2TP over IPSec VPN接続のオプションを変更する
iOSデバイスにおけるIKEv2/IPsec VPNの設定
①ホーム画面から「設定」を開き「一般」 > 「VPN」に進み「VPNの追加」を選択
②インターフェースを「VPN」にして「タイプ」で「IKEv2」を選択
③ VPN接続のサーバーアドレスを入力
④アカウントにはVPN接続に使用するユーザー名を入力
⑤認証情報にはパスワードを入力
⑥右上の「保存」をタップして設定を保存
⑦設定画面で「VPN」をタップし、設定した VPN 接続を選択して接続。接続に伴い、必要に応じて認証情報を入力する
公式サイト:AppleデバイスのIKEv2のMDM設定
AndroidデバイスにおけるL2TP/IPsec VPNの設定
①ホーム画面から「設定」アプリを開き「ネットワークとインターネット」または「接続とネットワーク」を選択
②「VPN」または「ネットワークとインターネット」 > 「VPN」に進み「新しいVPNプロファイルの追加」または「VPNの追加」を選択
③ VPN接続の名前を入力
④ タイプにてL2TP/IPsecを選択
⑤サーバーアドレスにVPNサーバーのアドレスを入力
⑥L2TPの暗号に「自動」または「必要に応じて設定」を選択
⑦ IPsecのIDは必要に応じて入力
⑧ IPsecの暗号は「自動」または「必要に応じて設定」を選択
⑨ IPsecの事前共有キーには共有秘密鍵を入力
⑩ユーザー名にはVPN接続に使用するユーザー名を入力
⑪パスワードを入力
⑫設定が完了したら「保存」または「接続」をタップして設定を保存
⑬設定画面で作成したVPN接続を選択し「接続」をタップしてVPN接続を開始
公式サイト:Android デバイスで VPN を設定する
6. VPNの重要なセキュリティ設定
VPN接続を安全に行うためには、以下で紹介する基本的な対策を講じることが重要です。
強力な認証
VPNへのアクセスには強力な認証手段が必要です。ユーザー名とパスワードの代わりに、二要素認証(2FA)や多要素認証(MFA)を利用すると、アカウントのセキュリティが向上します。
定期的なセキュリティアップデート
VPNサーバーやクライアントのソフトウェアは定期的にアップデートし、最新の状態に保つ必要があります。セキュリティの脆弱性が修正された最新のバージョンを使用することで、悪意ある攻撃からの保護が可能です。
不要なポートの閉鎖
使用していないポートは閉鎖するか、アクセスを制限しておくと、ポートスキャンや未認証のアクセスからのリスクを軽減できます。
不要な機能の無効化
VPNサーバーやクライアントに不要な機能があれば、それらを無効化しておくことが重要です。不要な機能は、攻撃者に対する攻撃面を増やすおそれがあります。具体的には、ファイアウォールの設定を見直し、不必要なサービスを無効化します。
追加で必要なセキュリティ対策
エンドポイントのセキュリティ強化
VPN環境全体の安全性を確保するためには、従業員が使用するデバイスのセキュリティを強化する必要があります。保有するすべてのデバイスに最新のアンチウイルスソフトウェアをインストールし、定期的な更新やセキュリティパッチの適用を行うことが大切です。
セキュリティ体制の強化
不正アクセスや攻撃に対応できるよう、IDS(侵入検知システム)やIPS(侵入防御システム)を導入して、即時に対応できる体制を整えることが推奨されます。また、VPNサーバーのログを定期的に監査し、不審な活動がないかをチェックしましょう。
セキュリティポリシーの整備
セキュリティポリシーを明確にし、VPNの使用目的やアクセス方法、データの扱い方などを定義します。その際、パスワードポリシーやデバイスの管理方針、セキュリティ違反時の対応プロセスも含めることが大切です。
また、従業員へのセキュリティ教育を通じて、ポリシーの理解と遵守を促し、企業全体でセキュリティ意識を高める取り組みも行いましょう。
7. VPNのトラブルシューティング
一般的なVPNのトラブルシューティング手順と、考慮すべきポイントを紹介します。
接続の確認
まず、VPNクライアントがVPNサーバーに正常に接続できているかを確認してください。クライアントがサーバーに接続できない場合、接続先アドレスや認証情報などが正しいかどうかを確認します。
ネットワーク接続の確認
VPN接続のセキュリティ設定が厳しい場合、接続がブロックされることがあるため、ネットワーク接続が正常であることを確認します。ファイアウォールやセキュリティソフトウェアがVPN接続の設定を見直し、VPNトラフィックが適切に許可されているかどうかを確認しましょう。
ポートの開放
使用しているVPNプロトコルに応じて正しいポートが開放されていることを確認します。
IPアドレスの競合
VPN接続に使用されるIPアドレスが、ほかのデバイスと競合していないかを確認します。IPアドレスの重複が起こると、通信が混乱する可能性があります。
VPNクライアントとVPNサーバーの設定の比較
VPNクライアントとサーバーの設定を比較し、一致しない項目がないかを確認します。プロトコル、鍵の長さ、認証方式などが一致していない場合があります。
ログファイルの確認
VPNクライアントやサーバーが生成するログファイルを確認し、接続試行中に発生したエラーを特定します。
最新のソフトウェアの利用
クライアントとサーバーの両方が最新のソフトウェアバージョンを利用しているかを確認します。セキュリティの問題やバグが修正された最新のバージョンを使用することが必要です。
8. まとめ
本記事では、VPNの設定方法について詳しく解説しました。VPNはこれまで、ビジネス環境の変化に応じて進化してきました。現代ではDX化の推進、リモートワークの普及、ゼロトラスト、セキュリティコンプライアンス意識の高まりなどにより、VPNに求められる役割が増しています。
将来的には新しいVPNプロトコルやセキュリティプロトコルが提案され、VPN技術はさらに進化するでしょう。ビジネス環境に応じて、適切なVPN設定を行うことが重要です。