Windows 10のスタートアップは奇妙で、少なくとも新しいようだ。 多くのプログラムが以前のバージョンのように自動起動しない。 私も、使い慣れたプログラムの自動起動を常に探しているからだ。
どうすればOpenVPNを起動時に起動させ、接続するまでインターネットにアクセスできないようにし、OVPNプロファイルに自動的にログインできるようにできますか?
私はすでに認証情報をテキストファイルに保存しているので、OpenVPN はただそのファイルを読み込んで処理し、接続するだけでいいのです。
以前はWindows 7でこの方法が使えたのですが、やり方を忘れてしまったようです、
最善の方法はサービスを利用することだ:
1.クライアントのインストール時にOpenVPNサービスをインストールする;
2.2. OpenVPNプロファイル(Linuxで一般的な.confではなく.ovpnという拡張子)を、OpenVPNインストールディレクトリのconfigサブディレクトリ(おそらくC:◆Program FilesOpenVPN◆config
)に置く。
3.サービスコンソール(services.msc
)を開く;
4.4.OpenVPNServiceを見つけ、それを右クリックし、プロパティを開き、スタートアップのタイプを「手動」から「自動」に変更する。
5.5.サービスを開始すると、OpenVPNは.ovpnファイルにあるプロファイルを見つけて接続します。**ほとんどの場合、接続ファイルごとに1つの TUN/TAP インタフェースが必要なことを覚えておいてください:
dev-node TAP_Serv` は OpenVPN に接続を "Tap_Serv" という名前のネットワークインターフェースにバインドさせます。
ホワイトリストを作成し、特定のファイルのみに接続させ、すべてのファイルには接続させないようにする方法はないでしょうか。私は過去に、VPNサーバーをサービスとして持つ必要がある人と、たまにしか接続しない複数のvpnクライアントファイルを同じマシンに持つ必要がある人との間で、いくつかの問題がありました。そのような状況では、OpenVPN GUIに利用可能な接続の美しいリストを表示させようとすると、サービスがそれらのファイルを見て、自動的に接続しようとしていることになります。このような場合、私はサービスを一切使わないことにしました:
サービスを使うという選択肢がない場合、OpenVPN GUIの呼び出しに追加のコマンドライン引数を渡すことで、起動時に自動的に接続させることができます(通常通りトレイアイコンも表示されます):
openvpn-gui.exe --connect myprofile.ovpn
ログイン時に実行させるには、このようなショートカットを通常のスタートアップフォルダに置いてください。(全ユーザーの場合は %ProgramData%MicrosoftWindowsppacheStart MenuProgramsStartup
、カレントユーザーのみの場合は %APPDATA%MicrosoftWindowsppacheStart MenuProgramsStartup
)
VPNが設定される前に、ユーザーがインターネットに接続するのを避ける方法が分からない。唯一の方法は、Windowsファイアウォールを使うことですが、私はその分野の専門家ではありません。パワーユーザーがインターネットに接続できないようにするには、ゲートウェイにファイアウォールを設置するか、強力なグループポリシーで権限の拡張を避ける必要があります。
通常のユーザーの場合、デフォルトゲートウェイなしでWindowsクライアントマシンを設定することができます。以下のコマンドを使用して、WindowsクライアントにVPNサーバーへの永続的な静的ルートを設定する(-Pで永続的になる):
route -P add <target> mask <netmask> <gateway IP> metric <metric cost> if <interface>
Windows のルートは、以下のレジストリキーの下に保存されます:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\PersistentRoutes
この時点では、切断されたクライアントはVPNサーバーにしかアクセスできない。次に、VPNサーバーの設定ファイルに以下の行を追加することで、クライアントが接続した際にルートを追加することができます:
VPNサーバをデフォルトゲートウェイとして設定するには:
push "redirect-gateway def1 bypass-dhcp"
VPNサーバーを経由する特定のルートを追加するには:
push "route 192.168.1.0 255.255.255.0"
時々、ルート・プッシングが Windows 上で動作しないことがあります。このような場合、私はWindowsからOpenVPNとそのインターフェースを完全にアンインストールし、システムを再起動し、最新版のソフトウェアをインストールします。そして最初の接続を確立する前にWindowsを再起動します。しかし、Windows 10 Anniversary Update (1607)はOpenVPNにバグがあります。OpenVPNフォーラムに深い議論へのリンクがあります:
Windows 10 OpenVPNクライアントをセットアップする際には、この点に留意してください。