Windows 10でOpenVPNを自動起動して自動接続する方法


15

Windows 10の起動は奇妙、または少なくとも新しいようです。多くのプログラムは以前のバージョンのように自動起動しません、そして多くの人が物事を自動起動する方法を尋ねています。私が知っているのは、私が慣れているプログラムを常に自動起動しようとしているからです。

起動時にOpenVPNを起動し、接続するまでインターネットアクセスを禁止し、自動的にOVPNプロファイルにログインするにはどうすればよいですか?

資格情報はすでにテキストファイルに保存されているので、OpenVPNはファイルをロードして処理し、接続するだけで済みます。

以前はこれをWindows 7で機能させていましたが、その方法を忘れてしまったようです。


ユーザーが自分のプロファイルにログインしたときにアプリケーションを起動するように構成する方法は、Windows XPのリリース以降、変更されていません。具体的に何を試しましたか? 質問を更新してください。
ラムハウンド2017年

回答:


28

最善の方法は、サービスを使用することです。

  1. クライアントをインストールするときにOpenVPNサービスをインストールします。
  2. OpenVPNプロファイルを(Linuxでは一般的な.confではなく、拡張子.ovpnで)OpenVPNインストールディレクトリのconfigサブディレクトリに配置しますC:\Program Files\OpenVPN\config
  3. サービスコンソールを開きます(services.msc);
  4. OpenVPNServiceを見つけて右クリックし、[プロパティ]をクリックして、スタートアップの種類を[手動]から[自動]に変更します。
  5. サービスを開始すると、OpenVPNが.ovpnファイル内のプロファイルを見つけて接続します。ほとんどの場合、接続ファイルごとに1つのTUN / TAPインターフェイスが必要になることに注意してください。Windowsでは、構成ファイルを使用してインターフェースを接続に永続的に関連付けることを強くお勧めします dev-node TAP_Serv。OpenVPNに「Tap_Serv」という名前のネットワークインターフェースへの接続をバインドさせます。

サービスをすべてではなく特定のファイルのみに接続するように強制するホワイトリストを作成する方法があるかどうかを調査することをお勧めします。VPNサーバーをサービスとして使用する必要があり、同じマシンに時々しか接続しない複数のVPNクライアントファイルを必要とする人たちと、以前にいくつかの問題がありました。これらの状況で、OpenVPN GUIに使用可能な接続の美しいリストを表示したい場合、それはサービスがそれらのファイルを見て、それらに自動的に接続しようとしていたことを意味します。そのような場合は、サービスをまったく使用しないことにしました。

サービスを使用するオプションがない場合は、OpenVPN GUI呼び出しに追加のコマンドライン引数を渡して、起動時に自動的に接続することができます(通常どおりトレイアイコンを表示します)。

openvpn-gui.exe --connect myprofile.ovpn

ログイン時に実行するには、そのようなショートカットを通常の起動フォルダーに配置します。(すべてのユーザーの場合%ProgramData%\Microsoft\Windows\Start Menu\Programs\Startup、または現在のユーザーのみの場合%APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup。)


VPNが設定される前にユーザーがインターネットに接続するのを防ぐ方法がわかりません。私がWindowsファイアウォールを通過しているかどうかを判断できる唯一の方法であり、私はそのテーマの専門家ではありません。パワーユーザーがインターネットにアクセスできないようにしたい場合は、ゲートウェイにファイアウォールを設置するか、それを回避するための強力なグループポリシーが必要です。

通常のユーザーの場合、デフォルトゲートウェイなしでWindowsクライアントマシンを構成できます。次のコマンドを使用して、Windowsクライアント上のVPNサーバーへの永続的な静的ルートを設定します(-Pを指定すると永続化されます)。

route -P add <target> mask <netmask> <gateway IP> metric <metric cost> if <interface>

WindowsのRoueは、次のレジストリキーに格納されています。

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でルートプッシュが機能しない場合があります。これが私に起こったとき、私はOpenVPNとそれのインターフェースをWindowsから完全にアンインストールし、システムを再起動し、最新バージョンのソフトウェアをインストールします。次に、最初の接続を確立する前に、Windowsを再起動します。これで問題は常に解決しましたが、Windows 10 Anniversary Update(1607)はOpenVPNにバグがあります。OpenVPNフォーラムのより深い議論へのリンクがあります:

Windows 10アニバーサリーアップデートでの接続の問題

Windows 10 OpenVPNクライアントをセットアップするときは、このことを覚えておいてください。


routeコマンドを使用して、すべてのトラフィックをVPNに強制的に通過させることができます。comentum.com/route.htmlを
Jeff F.

私は自分をパワーユーザーと考えていますが、これを非パワーユーザー向けに設定し、シームレスに機能させたいと考えています。他のパワーユーザーがいじくり回すのを防ぐ必要はありません。
YetAnotherRandomUser 2017年

「OpenVPNサービスはconfigディレクトリを調べ、ここに保存されているすべてのVPNプロファイルに接続します。」それはそうではないようです。それらがアルファベット順にソートされている場合、それは最初のものに接続しているようです。ドキュメントにリンクできますか?それをカバーするセクションが見つかりません。
YetAnotherRandomUser 2017年

こんにちは、ダン。私の経験のほとんどはCentOSのOpenVPNサーバーから来ており、複数のサーバーファイルを保存するときはいつでもすべて実行します。クライアントファイルの動作が同じであるかどうかを確認するテストを実施しますが、それが異なると考える理由はありません。誤解を招くとすみませんが、できるだけ早く報告します(私は今仕事中です。暇なときに、または仕事の後でWindowsマシンで確認します)。
DGoiko 2017年

1
また、タスクスケジューラ(<kbd> Windowsキー</ kbd> + <kbd> R </ kbd>、タイプTaskschd.mscして<kbd> Enter </ kbd>を押す)も使用できます。
user598527 2017
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.