PacketiX VPN 2.0 マニュアル 第5章 PacketiX VPN Bridge 2.0 マニュアル 5.2 動作モード

 

< 5.1 動作環境5.3 VPN Server との相違点>

5.2 動作モード

ユーザーは PacketiX VPN Bridge を 2 種類のモードで動作させることができます。

 

5.2.1 サービスモード

「サービスモード」は通常の動作モードです。PacketiX VPN Bridge をサービスモードでインストールし動作させると、PacketiX VPN Bridge はオペレーティングシステムの一部としてバックグラウンドで動作するようになり、オペレーティングシステムの起動時にユーザーがログオンする前に起動して VPN サーバーとして VPN セッションの接続を待機する状態になります。また、オペレーティングシステムがシャットダウンする際に自動的にシャットダウン処理が行われます。

ここで「サービス」と呼ぶ用語は Windows や一部の UNIX 系オペレーティングシステムにおいて「バックグラウンドシステムサービス」という意味を指しており、他のオペレーティングシステムでは「デーモン」と呼ぶ場合もあります。

サービスモードで VPN Bridge が動作している場合、その動作は現在オペレーティングシステムにログオンしているユーザーに依存されません。したがって、多くの場合はサービスモードとして VPN Bridge を稼動させることを推奨します。

また、サービスモードで VPN Bridge を使用する場合、一般的に VPN Bridge のプロセス (vpnbridge という実行可能ファイル名です) はシステム権限または root 権限で動作します。

サービスモードとして VPN Bridge をインストールする方法は、Windows 版と他の UNIX 版で異なります。

  • Windows 版 PacketiX VPN Bridge をインストーラからインストールすると、サービスモードとしてインストールされ自動的にバックグラウンドサービスとして動作が開始されます。詳しくは、「9.2 Windows へのインストールと初期設定」 をお読みください。
  • Linux 版およびその他の UNIX 版 PacketiX VPN Bridge をサービスモードとしてインストールするには、システムにデーモンプロセスとして登録する必要があります。詳しくは、「9.3 Linux へのインストールと初期設定」 をお読みください。

サービスモードは下記のような場合には使用できません。このような場合は、ユーザーモードで VPN Bridge を使用してください。

  • PacketiX VPN Bridge を動作させたいシステムのシステム管理者権限を持っていない場合。
  • PacketiX VPN Bridge を継続的ではなく一時的にインストールして使用したい場合。
  • セキュリティ上の理由により、一般ユーザー権限で PacketiX VPN Bridge を起動したい場合。

Windows 版 PacketiX VPN Bridge のサービスモードに関する説明事項

Windows 版の VPN Bridge をサービスモードでインストールするには、インストーラから VPN Bridge をインストールすることを推奨いたします。この場合は、特別な操作を行うことなく自動的に VPN Bridge がサービスとして起動し、動作を開始します。その後システムを再起動しても、システム起動時に自動的に VPN Bridge の動作が開始されます。VPN Bridge はバックグラウンドタスクとして起動するので、VPN Bridge をインストールしたコンピュータを他の目的で操作する場合でも VPN Bridge がインストールされていることは意識する必要はありません。

また、Windows 版 PacketiX VPN Bridge の実行可能ファイル (vpnbridge.exe) にコマンドライン引数を付けることによって、PacketiX VPN Bridge サービスを開始 / 停止したり、また Windows システムのサービス一覧から PacketiX VPN Bridge サービスを削除したり、登録しなおしたりすることが可能です。

PacketiX VPN Bridge サービスが Windows システムに登録される短いサービス名は「vpnbridge」です。長いサービス名は、「PacketiX VPN Bridge」です。

現在 Windows システムに PacketiX VPN Bridge サービスがインストールされていない場合、vpnbridge.exe をサービスとして登録するには、コマンドプロンプトなどから下記のように入力して vpnbridge.exe を実行します (システム管理者権限が必要です)。

> vpnbridge /install

すでに Windows システムに PacketiX VPN Bridge サービスがインストールされており、これを削除したい場合は、コマンドプロンプトなどから下記のように入力して vpnbridge.exe を実行します (システム管理者権限が必要です)。

> vpnbridge /uninstall

また、vpnbridge に /start または /stop という引数を付けることによって、サービスを開始または停止することができます。その他 vpnbridge プログラムに指定することができる引数については、vpnbridge.exe を直接実行したときに表示されるメッセージボックスの内容を参照してください。

また、サービスの開始と停止は Windows の [コントロールパネル] の [管理ツール] にある [サービス] 一覧 (Windows NT 4.0 の場合は [コントロールパネル] にある [サービス] 一覧) から行うことも可能です。この [サービス] 一覧画面を操作して、PacketiX VPN Bridge サービスの [スタートアップの種類] を [自動] から [手動] に変更することもできます。[手動] に変更したサービスはシステム起動時に自動的に起動せず、後で管理者権限を持つユーザーがサービスを開始するまで動作しません。

「net」コマンドを用いて、PacketiX VPN Bridge サービスを開始または停止することも可能です。サービスを開始するには、「net start vpnbridge」と入力します。サービスを停止するには、「net stop vpnbridge」と入力します。

Windows における「サービス」という概念は、Windows NT 以降のオペレーティングシステムにのみ導入されています。PacketiX VPN Bridge は Windows のサービスシステムに依存しています。サービスシステムがない古い Windows (Windows 98、Windows 98 Second Edition、Windows Millennium Edition) 上に PacketiX VPN Bridge をサービスモードでインストールしバックグラウンドタスクとして起動させておくことができるようになっています。この場合、PacketiX VPN Bridge はこれらの古いオペレーティングシステム上で、Windows NT 以降のサービスシステムをエミュレーションしています。ただし、この場合はユーザーがログオフする際にプロセスが終了する場合があるなど、いくつかの制限事項があります。
クリックするとこの画像を拡大して表示できます。

図5-2-1 サービスとして登録された PacketiX VPN Bridge

UNIX 版 PacketiX VPN Bridge のサービスモードに関する説明事項

Linux を含む UNIX 版の VPN Bridge をサービスモードでインストールおよび起動する方法については、「9.3 Linux へのインストールと初期設定」 をお読みください。

 

5.2.2 ユーザーモード

「ユーザーモード」は特殊な動作モードです。PacketiX VPN Bridge をユーザーモードで動作させると、PacketiX VPN Bridge はユーザーのプロセスとしてバックグラウンドで動作するようになります。ユーザーモードで PacketiX VPN Bridge を動作させるには、起動する都度、そのユーザーとしてシステムにログオンして、vpnbridge 実行可能ファイルを起動する必要があります。また、オペレーティングシステムによって下記のように動作が異なります。

  • Windows オペレーティングシステムでは、ユーザーモードで起動した VPN Bridge プロセスはそのユーザーがログオンしている状態でのみバックグラウンドで稼動し続けますが、ユーザーがログオフすると同時にプロセスは終了します。
  • UNIX 系オペレーティングシステムでは、ユーザーモードが起動した VPN Bridge プロセスはその時点で子プロセスを生成しそれをバックグラウンドプロセス化し、ユーザーのセッションから切り離すことができます。したがって、ユーザーがログアウトした場合でもシステム上に VPN Bridge のプロセスは残り、システムがシャットダウンしたり再起動されるまで VPN Bridge プロセスはバックグラウンドで稼動し続けます。

Windows 版 PacketiX VPN Bridge のユーザーモードに関する説明事項

Windows 版の VPN Bridge をユーザーモードで起動するには、vpnbridge.exe 実行可能ファイルに /usermode オプションを付けて起動します。

> vpnbridge /usermode

起動が完了するとタスクトレイ上にアイコンが表示され、VPN Bridge がユーザーモードで起動したことになります。このモードでは VPN Bridge のプログラムは他のユーザーモードで動作するアプリケーションプログラム (Word や電卓など) と同じような、一般のユーザー権限で実行することができるプログラムとして動作していることになります。したがって、ユーザーモードで VPN Bridge を起動するためにシステム管理者権限などは一切不要です。ただし、ユーザーがログオフすると同時に VPN Bridge プロセスも終了してしまいます。頻繁に VPN Bridge をユーザーモードで起動するためには、上記の /usermode オプションを付けたコマンドラインをショートカットファイルとしてデスクトップまたは [スタートアップ] フォルダに設置しておくことを推奨します。

図5-2-2 ユーザーモードとして起動した PacketiX VPN Bridge のタスクトレイアイコン

また、一度起動したユーザーモードのプロセスを終了するには、タスクトレイのアイコンを右クリックして [PacketiX VPN Bridge の終了] をクリックします。

さらに [タスクトレイアイコンを非表示にする] をクリックすると、タスクトレイにアイコンが表示されなくなります。この機能は、常時ユーザーモードで VPN Bridge を起動していてアイコンが邪魔な場合に使用してください。ただし、タスクトレイアイコンを非表示にした場合はメニューから VPN Bridge を終了することができなくなります。そのような場合は、Ctrl + Alt + Del キーを押してタスクマネージャを開き、vpnbridge.exe プロセスを終了してください。なお、vpnbridge.exe を次回ユーザーモードで起動する際に /usermode_showtray オプションを付けることで、タスクトレイのアイコンを復活させることが可能です。

図5-2-3 タスクトレイアイコンを非表示にするためのメニュー

大変便利なことに、Windows オペレーティングシステムでは一般ユーザー権限で動作するプロセスに対してすべての TCP/IP ポートを待機状態にして使用することが許可されています。したがって、PacketiX VPN Bridge を使用する場合にシステム管理者権限を使用してシステムサービスとして登録し動作させずに、あえて一般ユーザー権限でユーザーモードとして動作させておくことにより、セキュリティを強化することができる場合があります。ただし、ユーザーモードで PacketiX VPN Bridge を起動している場合はローカルブリッジ機能が使用できない場合があります。

UNIX 版 PacketiX VPN Bridge のユーザーモードに関する説明事項

Linux を含む UNIX 版の VPN Bridge をユーザーモードで起動するには、vpnbridge 実行可能ファイルをシステムにデーモンとして登録せずに、通常のアプリケーションコマンド (ls や cat など) を起動するのと同様にコマンドラインから下記のように start 引数を付けて vpnbridge を起動します。

$ ./vpnbridge start
PacketiX VPN Bridge Service Started.
$ 

「PacketiX VPN Bridge Service Started.」というメッセージが出力された後に制御がシェルに戻れば、ユーザーモードで正しく VPN Bridge を起動することができたことを意味します。なお、一度起動した VPN Bridge を終了するには、次のように stop 引数を付けて vpnbridge を起動します。

$ ./vpnbridge stop
PacketiX VPN Bridge Service Stopped.
$ 

VPN Bridge を UNIX 上でユーザーモードで起動した場合は、そのユーザーの権限でプロセスが動作し、バックグラウンドプロセス化します。したがって、そのユーザーがログアウトしたり、SSH 接続を切断したりした場合でも vpnbridge プロセスは依然として動作し続けます。プロセスの動作は、システムが再起動したり、root によってそのプロセスが強制終了されてしまうまで続きます。

なお 「9.3 Linux へのインストールと初期設定」 でも解説されていますが、UNIX 系オペレーティングシステムでは vpnbridge プロセスをデーモン化して使用する場合は、オペレーティングシステムのスタートアップスクリプトに単純に vpnbridge start の呼び出しを行わせるように指示するよう登録するだけですので、もしサービスモードとして VPN Bridge を稼動させる場合でも、ここでの手順と同等のことが root 権限を持つシステムによって自動的に行われるだけに過ぎませんので、本質的な違いはほとんどありません。したがってデーモン化した VPN Bridge においても、下記で説明する事項は一般的に当てはまります。

UNIX 版 VPN Bridge では下記のように vpnbridge プロセスは 2 段階に分けて起動しています。まず execsvc と書かれた 1 個目のプロセスがバッグラウンドプロセスとして起動し、次にそのプロセスが子プロセスを fork() システムコールによって生成し、子プロセスが実際の VPN 処理を行います。親プロセス (下記の例ではプロセス ID が 1549) は子プロセス (下記の例ではプロセス ID が 1550) を常に監視し、万一異常なエラーが発生した場合は直ちにプロセスを終了してからもう一度プロセスを起動し回復を試みます (この動作は PacketiX VPN Server と同様です。詳しくは 「3.3.12 障害回復」 をお読みください)。なお下記の例は Linux の特定のシステムでの実行例であり、別の Linux や他のオペレーティングシステムでは表示が異なる場合があります。また Linux カーネルの古いバージョン (ネイティブスレッドに対応していないバージョン) では、複数のスレッドを複数のプロセスとして表示するため、実際には vpnbridge プロセスが下記よりも多く生成されている場合がありますが、それは表示上の問題であり正常な動作です。

$ ps auxf
USER       PID %CPU %MEM   VSZ  RSS TTY      STAT START   TIME COMMAND
neko      1549  0.0  0.8  5188  560 ?        S<   Nov24   0:00 /tmp/vpnbridge execsvc
neko      1550  0.0  4.0 11888 2520 ?        S<   Nov24   0:08  \_ /tmp/vpnbeidge execsvc

滅多に発生することではありませんが、ハードウェアの故障 (たとえばメモリの不良) などの何らかの原因によってユーザーモードで起動した VPN Bridge プロセスが暴走してしまい、vpnbridge /stop で停止できなくなってしまった場合は、まず親プロセスである vpnbridge プロセス (上記の例ではプロセス ID が 1549) を kill -KILL でシグナルを送信することによって強制終了し、次に残りのプロセス (上記の例ではプロセス ID 1550) を kill -KILL でシグナルを送信することによって強制終了してください。子プロセスを先に強制終了すると、親プロセスは子プロセスが異常終了したと判断しもう一度子プロセスを起動する場合があります。システムによっては、killall -KILL vpnbridge によってすべての vpnbridge プロセスを同時に終了することができる場合もあります。

また、vpnbridge プロセスは TERM シグナル (通常の終了要求シグナル) を受信すると正常終了処理を行います。

UNIX 系オペレーティングシステムでは一般ユーザー権限で動作するプロセスに対して 、1024 番以下の TCP/IP ポートを待機状態にして使用することが許可されていません。したがって、PacketiX VPN Bridge を使用する場合にシステム管理者権限を使用してシステムサービスとして登録し動作させずに一般ユーザー権限でユーザーモードとして動作させ た場合は、1024 番以下の TCP/IP リスナーポートを開くことができません。PacketiX VPN Bridge ではデフォルトでは 443 番、992 番、8888 番の 3 つのポートをリスナーポートとして開くように試みますが、これをユーザーモードを動作させると 8888 番のポートのみがリッスン状態となりますのでご注意ください。また、ユーザーモードで PacketiX VPN Bridge を起動している場合はローカルブリッジ機能が使用できない場合があります。

 

 

< 5.1 動作環境5.3 VPN Server との相違点>

PacketiX VPN 2.0 Manual Version 2.10.5070.01
Copyright © 2004-2005 SoftEther Corporation. All Rights Reserved.
 www.softether.com | サポート情報 | 使用条件