11.2 知っておくと有益なノウハウ - SoftEther VPN プロジェクト

11.2 知っておくと有益なノウハウ

    目次
    1. 1. 11.2.1 グローバル IP アドレスが可変である場合の VPN Server の設置方法
    2. 2. 11.2.2 プライベート IP アドレスしかない拠点へ VPN 接続する方法
    3. 3. 11.2.3 仮想 HUB 内で簡易 DHCP サーバーを稼動させる方法
    4. 4. 11.2.4 IPv6 over IPv4 トンネルとしての使用方法
    5. 5. 11.2.5 LAN 内のコンピュータをリモートから Wake On Lan することが可能かどうかについて
    6. 6. 11.2.6 NAT 機能付きルータ内部への VPN Server の設置方法
    7. 7. 11.2.7 仮想 HUB 内を流れているパケットを IDS などで監視したい場合
    8. 8. 11.2.8 通常のスイッチのポート VLAN と同等の機能を実現する方法
    9. 9. 11.2.9 (欠番)
    10. 10. 11.2.10 SoftEther 1.0 でサポートしていた TELNET 経由の管理の代替方法
    11. 11. 11.2.11 クラスタコントローラ本体の冗長性の向上方法
    12. 12. 11.2.12 仮想 HUB へアクセス可能なコンピュータをユーザー名だけでなく物理的な IP アドレスによっても制限したい場合
    13. 13. 11.2.13 SSL 通信で選択できる暗号化アルゴリズムの選択方法
    14. 14. 11.2.14 タグ付き VLAN の使用について
    15. 15. 11.2.15 仮想 LAN カードの MAC アドレスを変更する方法
    16. 16. 11.2.16 仮想 LAN カードが Windows に対して報告する通信速度を変更する方法
    17. 17. 11.2.17 VPN Client の接続設定にパスワードを保存せず毎回入力する方法
    18. 18. 11.2.18 同時に複数の VPN Server や仮想 HUB に接続する方法
    19. 19. 11.2.19 通常外部からのリモートアクセスができないようなネットワークに SecureNAT 機能を用いてリモートアクセスする方法
    ここでは、PacketiX VPN ソフトウェアを使用する上で、知っておくと有益なノウハウについて解説します。
     

    11.2.1 グローバル IP アドレスが可変である場合の VPN Server の設置方法

    VPN Server を設置するコンピュータの、グローバル IP アドレスが変動する場合 (ISP に接続するたびに異なる IP アドレスが割り当てられる場合) は、ダイナミック DNS サービス (DDNS サービス) を使用することにより、常にそのコンピュータのグローバル IP アドレスと、DDNS サービスにおけるホスト名とを関連付けておくことができます。DDNS サービスは、インターネット上で無償で利用できるサービスが多くあります。
    なお、企業ネットワークなどで VPN Server を設置する場合は、極力グローバル固定 IP アドレスを使用することを推奨します。
     

    11.2.2 プライベート IP アドレスしかない拠点へ VPN 接続する方法

    プライベート IP アドレスしかない拠点に VPN Server を設置する場合は、プライベート IP アドレスとグローバル IP アドレスの変換を行っている NAT やプロキシサーバー、またはファイアウォールの設定を変更して、内部に設置した VPN Server に対してポートマッピングや静的 NAT と呼ばれる設定を追加してください。
    また、インターネット上に VPN Server がある場合、拠点内には VPN Bridge を設置して、インターネット上の VPN Server に常にカスケード接続した状態にしておくことにより、リモートアクセス VPN クライアントコンピュータからは、インターネット上にある VPN Server に対して接続すると、拠点内のレイヤ 2 ネットワークにその VPN Server を経由してアクセスすることができます。この方法を使用すると、プライベート IP アドレスしか持っていない拠点に対して、外部からリモートアクセスすることが可能です。この場合は、VPN Bridge が拠点の LAN にローカルブリッジ接続するとともに、インターネット上の VPN Server に対してカスケード接続してください。
    また、拠点にプライベート IP アドレスしかなく、さらに拠点内に VPN Bridge をシステム管理者権限でインストールすることができないような場合は、SecureNAT 機能を使用した特殊な形のリモートアクセスを実現することができます (詳しくは 「10.11 SecureNAT 機能を用いた権限不要のリモートアクセス」 を参照)。この場合はいくつかの制限がありますが、SecureNAT を活用すると、事実上ほとんどの LAN に対して管理者権限を使用することなくリモートアクセスすることができます。ただし、そのネットワークの管理者の許可を事前に取得しておく必要があります。
     

    11.2.3 仮想 HUB 内で簡易 DHCP サーバーを稼動させる方法

    VPN Server または VPN Bridge の仮想 HUB には、簡易的な DHCP サーバー機能が搭載されています。この DHCP サーバー機能が動作している場合、仮想 HUB のレイヤ 2 セグメントに接続したクライアントコンピュータは、DHCP サーバーからの IP アドレス割り当てと、デフォルトゲートウェイと DNS サーバーアドレスの通知を受けることができます。簡易 DHCP サーバーを使用する方法については、「3.7 仮想 NAT および仮想 DHCP サーバー」 を参照してください。
     

    11.2.4 IPv6 over IPv4 トンネルとしての使用方法

    SoftEther VPN を使用すると IPv6 over IPv4 トンネルの実現が容易に可能となります。IPv6 over IPv4 トンネルとは、IPv6 パケットを IPv4 パケットにカプセル化することによって、IPv4 しか通過できない区間を経由して、拠点間で IPv6 パケットを通過させることができるようにする手法です。
    旧来の IPv6 over IPv4 トンネル技術は、NAT やファイアウォールを通過することができないものが多くあります。しかし、SoftEther VPN を使用すると、すべての通信をレイヤ 2 (Ethernet) でカプセル化することができるため、IPv6 パケットも問題なく VPN 通信として処理することができます。
    したがって、ほとんどの環境で使用することができる IPv6 over IPv4 トンネルトリューションとして、SoftEther VPN を活用することが可能です。
     

    11.2.5 LAN 内のコンピュータをリモートから Wake On Lan することが可能かどうかについて

    SoftEther VPN で、リモートアクセス VPN や拠点間接続 VPN を構築している場合は、その拠点に設置されているコンピュータの物理的な LAN カードに対して、Wake On Lan (WoL) パケットを送信することによってリモートから電源を制御することが可能です。
     

    11.2.6 NAT 機能付きルータ内部への VPN Server の設置方法

    NAT 機能が付いた一般的に「ブロードバンドルータ」や「ファイアウォール付きルータ」などと呼ばれるコンシューマ向け、あるいは中小事業所向けの通信機器の内側に VPN Server を設置する場合は、そのルータの設定で「静的 NAT」や「ポートマッピング」などと呼ばれる設定を追加し、インターネット側からの特定の TCP/IP ポートに対するアクセスを、内部の VPN Server に対して転送させることが可能です。この方法については、ブロードバンドルータの取扱説明書などをお読みください。
     

    11.2.7 仮想 HUB 内を流れているパケットを IDS などで監視したい場合

    仮想 HUB 内を流れるすべての仮想 Ethernet フレームを、IDS やウイルスチェックシステムなどでリアルタイムに監視し、不正侵入のためのパケットやウイルスなどの兆候を検出するためには、以下の 2 つの方法があります。
    1. VPN Client から仮想 HUB に対して「モニタリングモード」で接続します。これにより、VPN Client の仮想 LAN カードは、仮想 HUB 内を流れるすべてのパケットを受け取ることができます。この状態で仮想 LAN カードを snort などの IDS ソフトウェアによって監視することにより、仮想 HUB 内を流れるすべてのパケットを監視することができます。詳しくは 「1.6.10 モニタリングモードセッション」 および 「4.4.17 接続モードの選択」 をお読みください。ただし、この方法ではソフトウェアベースの IDS にしか使用することができません。
    2. 3.6.8 仮想 HUB 内の通信内容を LAN カードにすべて出力するモード」 で解説されている方法を用いることにより、仮想 HUB 内を流れるすべてのパケットを、VPN Server コンピュータ本体に接続されている物理的な LAN カードの LAN ポートから出力することができます。この方法を用いると、アプライアンス形式の IDS ハードウェア製品を使用して仮想 HUB 内を流れるすべてのパケットを監視することができます。
    なお、基本的にすべてのフレームをモニタリングすることが可能ですが、仮想 HUB が持つバッファのサイズがいっぱいになる程度の大量のフレームが流れた場合や、出力先 LAN カードの性能不足などの場合は、フレームを取りこぼす可能性がありますのでご注意ください。

    11.2.8 通常のスイッチのポート VLAN と同等の機能を実現する方法

    市販製品のレイヤ 2 スイッチング HUB や、レイヤ 3 スイッチに搭載されているポート VLAN 機能 (複数のポートを VLAN 番号によってグルーピング化し、同一の VLAN 番号の間でだけ通信を行う機能) と同等のことを、VPN Server で実現することができます。分割したいセグメントの数だけ仮想 HUB を作成すると、それらの仮想 HUB 間の通信は分離されます。これにより、通常のスイッチのポート VLAN と同等の機能を実現することができます。この場合、MAC アドレステーブルデータベースやその他の管理設定なども、仮想 HUB ごとに異なるものを保持させることができます。
     

    11.2.9 (欠番)

    この項目は欠番です。

    11.2.10 SoftEther 1.0 でサポートしていた TELNET 経由の管理の代替方法

    SoftEther 1.0 では、仮想 HUB の管理に TELNET を使用することができましたが、SoftEther VPN Server を管理する際にも、TELNET または SSH を使用することが可能です。この場合は、TELNET または SSH サーバーが別途必要になります (通常の UNIX や Windows 2000 以降のオペレーティングシステムには、TELNET サーバー機能または SSH サーバー機能が標準で搭載されています)。管理端末から TELNET または SSH で管理対象のサーバーに接続したあと、そのコンソールセッションにおいて vpncmd を起動することにより、TELNET または SSH で管理を行うことができます。vpncmd の使い方については 「第6章 コマンドライン管理ユーティリティマニュアル」 を参照してください。
     

    11.2.11 クラスタコントローラ本体の冗長性の向上方法

    3.9 クラスタリング」 で解説されている VPN Server のクラスタリング機能は、クラスタメンバサーバー間で、自動的にフォールトトレランスを実現することができます。ただし、VPN Server の標準機能では、クラスタコントローラ自体のフォールトトレランスを実現することができないため、もしクラスタコントローラが電源障害などで停止したり、ハードウェアの不具合 (メモリのエラーなど) その他の原因で VPN Server プロセスが暴走したりした場合は、自動的に別のコンピュータにクラスタコントローラ機能を引き継がせることはできません。そのため、大規模なクラスタにおけるクラスタコントローラサーバー本体には 、Registered ECC 付きのメモリを採用したり、RAID を使用したり、UPS を設置したりするなどして安定化を図ることを推奨します。
    なお、以下のような仕組みを、別途シェルスクリプトなどのプログラムを作成したり、市販の冗長性を向上させるためのソリューションを使用したりすることにより実現することができます。
    1. クラスタコントローラコンピュータとして、メイン稼動機とバックアップ機の 2 台を用意します。
    2. 両方のコンピュータのオペレーティングシステムの種類、ハードウェア構成 (LAN カードなど) 、インストールする VPN Server の種類は同一とします。
    3. メイン稼動機が動作している間は、VPN Server のコンフィグレーションファイル (vpn_server.config) の内容を定期的に読み取り、バックアップ機に対して反映させるようにします。
    4. メイン稼動機が電源障害などで停止したり、ハードウェアの不具合 (メモリのエラーなど) その他の原因で VPN Server プロセスが暴走したりした場合は、それを検出してバックアップ機の動作を開始します。バックアップ機のグローバル IP アドレスをメイン稼動機のグローバル IP アドレスに設定して、最後にメイン稼動機から受け取ったコンフィグレーションファイルの内容に従って VPN Server サービスを起動します。なお、メイン稼動機との IP アドレスの競合を避けるために工夫する必要があります。この仕組みにより、仮にクラスタコントローラが停止した場合でも、停止直前の構成データを持ったもう 1 台のクラスタコントローラ (バックアップ機) が処理を引き継ぐことが可能です。
    5. メイン稼動機の修理が完了したら、バックアップ機の最新のコンフィグレーションファイルをメイン稼動機にコピーして、機能をメイン稼動機に戻します。
    6. 上記のような処理を、別途シェルスクリプトなどのプログラムを作成したり、市販の冗長性を向上させるためのソリューションを使用したりすることによって実装し、テストします。
     

    11.2.12 仮想 HUB へアクセス可能なコンピュータをユーザー名だけでなく物理的な IP アドレスによっても制限したい場合

    3.5.11 IP アクセス制御リストによる接続元の限定」 で解説されている方法によって、仮想 HUB へアクセス可能なコンピュータをユーザー名だけでなく物理的な IP アドレスによっても制限することができます。
     

    11.2.13 SSL 通信で選択できる暗号化アルゴリズムの選択方法

    VPN Server に対して接続する SSL 暗号化セッションで使用する暗号化アルゴリズムは、デフォルトでは RC4-MD5 が選択されていますが、よりビット長の長いものに変更することも可能です。そのための方法については、「3.3.15 SSL 通信で使用する暗号化アルゴリズムの選択」 を参照してください。
     

    11.2.14 タグ付き VLAN の使用について

    VPN Server および VPN Bridge の仮想 HUB およびローカルブリッジ接続機能におけるタグ付き VLAN パケットの使用に関する詳細情報については、「3.6.7 タグ付き VLAN フレーム」 を参照してください。
     

    11.2.15 仮想 LAN カードの MAC アドレスを変更する方法

    VPN Client の仮想 LAN カードの MAC アドレスは任意のものに変更することができます。変更方法については、「4.3.2 仮想 LAN カードの作成と設定」 の「高度な設定項目の変更」を参照してください。また、vpncmd コマンドの NicSetSetting コマンドによっても変更することができます。
     

    11.2.16 仮想 LAN カードが Windows に対して報告する通信速度を変更する方法

    VPN Client の仮想 LAN カードは、デフォルト状態では Windows に対して通信速度として 100Mbps を報告します。この値は任意のものに変更することができます。変更方法については、「4.3.2 仮想 LAN カードの作成と設定」 の「高度な設定項目の変更」を参照してください。
     

    11.2.17 VPN Client の接続設定にパスワードを保存せず毎回入力する方法

    VPN Client で接続設定を選択して VPN Server への接続を行う際に、パスワード認証を使用する場合は、そのパスワードを保存せずに毎回入力するように設定できます。詳しくは、「4.4.7 ユーザー認証の設定」 の「標準パスワード認証、Radius または NT ドメイン認証を選択した場合の必要項目 」を参照してください。
     

    11.2.18 同時に複数の VPN Server や仮想 HUB に接続する方法

    VPN Client には複数の仮想 LAN カードと接続設定を作成し、それぞれの接続設定で使用する仮想 LAN カードとして、別々のものを指定することができます。これにより、VPN クライアントコンピュータを同時に複数の VPN Server や仮想 HUB に接続するといったことも簡単にできます。これは、物理的な LAN カードを複数枚コンピュータに装着させ、それらの LAN カードを異なるネットワークに対して接続するのと似ています。詳しくは 「第4章 SoftEther VPN Client マニュアル」 を参照してください。
     

    11.2.19 通常外部からのリモートアクセスができないようなネットワークに SecureNAT 機能を用いてリモートアクセスする方法

    SecureNAT 機能を活用すると、通常はインターネット側からリモートアクセスすることができず、またネットワーク内のコンピュータの管理者権限を持っていないような場合でも、事前にネットワーク管理者の許可を得ることによって 、ユーザー権限だけで簡単にインターネット側からリモートアクセスすることが可能です。詳しい方法については 「10.11 SecureNAT 機能を用いた権限不要のリモートアクセス」 を参照してください。