著作権(c)2023プロトンAG
このリポジトリには、Proton VPN Windowsアプリが保持されます。詳細なビルド情報については、ビルドを参照してください。ライセンス情報については、コピーを参照してください。貢献ポリシーについては、貢献を参照してください。
Proton VPN Windowsアプリは、すべてのProton VPNサービスユーザー向けに対象であり、有料または無料であり、認証されたユーザーが利用できるすべての機能をサポートします(代わりにWebサイトでユーザーサインアップが発生します)。
Proton VPNの公式Webサイトで、または公式のGithubリポジトリで直接、最新のStableリリースをダウンロードできます。
アプリは、これらの相互作用する部分で構成されています。
Proton VPN GUIアプリは、デフォルトで「C: Program Files Proton VPN <バージョン>」ディレクトリにインストールされます。メインの実行可能ファイルは「protonvpn.exe」です。
Proton VPN GUIアプリは、起動時にProton VPNサービスを開始し、閉じたときにサービスを停止します。
アプリログは、「%localappdata% protonvpn logs」ディレクトリに保存されます。
デバッグ構成を使用したプロトンVPNビルドは、オプションでアプリディレクトリのファイル「protonvpn.config」から構成をロードします。このファイルは、インストール中に展開されません。構成ファイルが存在しないか、有効な値が含まれていない場合、アプリはアプリで使用されるデフォルトの構成を保存しようとします。
フィドラーまたは別のツールを使用して、プロトンVPN GUIアプリのHTTPトラフィックを監視するには、TLS証明書のピン留めを無効にする必要がある場合があります。空の「tlspinningConfig」値で構成ファイルを固定するTLS証明書を無効にするには:
...
"TlsPinningConfig": {}
...
Windowsサービス「ProtonVPN Service」は、デフォルトで「C: Program Files Proton VPN <version>」ディレクトリにインストールされます。サービス実行可能ファイルは「protonvpnservice.exe」です。サービスは開始され、Proton VPN GUIアプリによって停止されます。
インストール中に、サービスは開始するように構成され、非居住していないインタラクティブユーザーが停止します。
サービス実行可能ファイルは、インストールとサービスのアンインストールをサポートします。コマンドラインに「インストール」を「protonvpnservice.exe」に渡すと、サービスがインストールされ、「アンインストール」 - アンインストールを渡します。このインストール方法では、サービスセキュリティ設定が設定されていません。
Serviceは、OpenVPNとの対話、Windowsファイアウォールの管理、およびスプリットトンネルドライバーとの対話を担当します。
サービスログは、「%allusersprofile% protonvpn logs」ディレクトリに保存されます。
プロトンVPNは、VPNトンネルを維持するためにOpenVPNを使用します。新しいOpenVPNプロセスは、VPNへの各接続で開始され、切断時に閉じます。 OpenVPNプロセスとの通信は、TCP管理インターフェイスを通じて維持されます。
OpenVPNは、デフォルトで「C: Program Files Proton VPN <バージョン> Resources」ディレクトリにインストールされます。 OpenVPN構成ファイルは静的で、VPNサーバーごとに変更されません。
OpenVPNは、プロトンVPN固有のタップアダプターをサポートするパッチを適用することにより、公式のソースから構築されます。 win-openvpnリポジトリを参照してください。
タップアダプター「Tap-ProtonVpn Windows Adapter V9」は、OpenVPNで使用されます。
タップアダプターは、パッチを適用してプロトンVPN固有の名前と識別を持つことにより、公式のソースから構築されます。 Win-Tap-Adapterリポジトリを参照してください。
カーネルモードドライバー「ProtonVPN Callout Driver」は、分割トンネルが有効になっているときにソケットバインディングのリダイレクトに使用され、プロトンVPNの使用よりも他のインターフェイスから作成されたDNSリクエスト用のサーブファイル応答パケットを送信することにより、DNSリークを防ぐために使用されます。
ドライバーはシステムサービスとしてインストールされます。 VPNに接続するときに開始され、Proton VPNサービスによる切断時に停止します。
メインリポジトリフォルダーには、protonvpnという名前のProton VPN Windowsアプリの.NET Visual Studioソリューションが含まれています。
連続統合スクリプトが含まれています。
ProtonVPNソリューションのNUGETパッケージが含まれています。
このフォルダーには、高度なインストーラーセットアッププロジェクトファイル、インストーラーに含まれるリソース、およびインストーラーファイルの構築が含まれています。サブフォルダーには:
このフォルダーには、Visual Studioソリューションプロジェクトが含まれています。
このフォルダーには、Visual Studioプロジェクトのビルド出力が含まれています。このフォルダーは、コンテンツがソリューションを構築することで再作成されるため、安全に削除できます。
このフォルダーには、プロトンメールSRPライブラリのgitサブモジュールが含まれています。
このフォルダーには、ProtonVPNソリューションのテストプロジェクトが含まれています。
Proton VPN Windows Appは、C#およびC ++プログラミング言語、WPFおよびMVVMテクノロジーを使用して作成されます。ビジュアルスタジオソリューションは、一連のプロジェクトで構成されています。
ソリューションフォルダー「テスト」には、テストプロジェクトが含まれています。