OpenVPNをWindowsにインストールし、リモートデスクトップ接続する

リモートデスクトップで接続される専用のWindowsマシンを用意するにあたり、VPN接続は必須である。VPNにもさまざまなプロトコルがあるが、現在サーバ・クライアントともにOpenVPNが最もインストールしやすい。

OpenVPNクライアントをWindows10にインストールし、そこから常時VPNサーバに接続する形でプライベートネットワークを作り、外の端末からセキュアにWindows機にリモートデスクトップ接続する。Windows機をVPNサーバにするのではない。このやり方、意外と難しいので説明する。

OpenVPNクライアントのインストール

vpnux Clientではなく公式クライアントをインストールする。

ユーザモードとサービスモード

ユーザモード

OpenVPNクライアントにはユーザモードとサービスモードがある

ユーザモードは各ユーザがOpenVPNアプリケーション(openvpn-gui.exe)を立ち上げてVPNサーバにログインする動作を行う。
そこで初めてVPNネットワークから接続できるようになる。ユーザがログインすることが前提となり、サーバ起動時に自動的に動作するものではない。設定やログもユーザ個別のフォルダに格納される

C:\Users\xxx\OpenVPN

インストールした状態だとユーザモードしか使えない状態になっている

サービスモード

サービスモードはユーザがログインしなくてもマシンが起動すれば自動的にVPNサーバに接続するもので、VPNごしのリモートデスクトップ接続専用マシンではこの使い方が必須となる。

Windowsボタン+Rから「services.msc」でサービスコンソールを起動し、OpenVPNSeviceを手動→自動に変更する。
するとサービスモードのOpenVPNが起動するようになる。

サービスモードを起動

サービスモードのOpenVPNは設定ファイルはユーザモードとは異なり

C:\Program Files\OpenVPN\config

に設置する。ユーザモードでは「Import file」で読み込んだOVPNファイルが

C:\Users\xxx\OpenVPN\config

に設置されたが、サービスモードではこのパスに自分でOVPNファイルを設置する必要がある。

OVPN設定ファイルを設置

ここでOVPNファイルの設定で気を付けなければならないのは、このWindows機から複数のVPNに接続する場合、1VPN=1ネットワークアダプタでなければならない。ネットワークアダプタは

ネットワークアダプタ

どのVPNがどのネットワークアダプタを使うのか、その対応設定をOVPNファイルに1行追加する必要がある。

dev-node lightsail-vpn1

ネットワークアダプタ名はデフォルトだと「イーサネット 2」などとなるので英数字にリネームする。

なお1ネットワークしか接続しない場合は設定不要である。

参考
https://superuser.com/questions/1166026/how-to-autostart-and-autoconnect-openvpn-in-windows-10

ネットワーク

OpenVPNのネットワークはWindowsではパブリックネットワーク固定となってしまい、プライベートネットワークに設定することができない(PowerShellを使えば変更できるが、切断再接続するとまたパブリックネットワークになってしまう)。

そこでパブリックネットワークに対してリモートデスクトップ接続を許可する設定をファイアウォールで行う必要がある。

ファイアウォール設定

データ周辺の技術 の記事一覧