版权(C)2023质子AG
该存储库包含Proton VPN Windows应用程序。有关详细的构建信息,请参阅构建。有关许可信息,请参见复制。有关贡献政策,请参阅贡献。
Proton VPN Windows应用程序旨在为每个Proton VPN服务用户,付费或免费,并支持已验证用户可用的所有功能(用户注册而是在网站上发生)。
您可以在Proton VPN官方网站上或直接在官方GitHub存储库上下载最新的稳定版本。
该应用程序由这些相互作用的部分组成:
Proton VPN GUI应用程序安装到“ C: Program Files Proton VPN <版本>”目录中。主要可执行文件是“ protonvpn.exe”。
Proton VPN GUI应用程序在启动时启动Proton VPN服务,并在关闭时停止服务。
应用程序日志被保存到“%localappData% protonvpn logs”目录。
使用调试配置的质子VPN构建可选地从应用程序目录中的文件“ Protonvpn.config”加载其配置。安装过程中未部署此文件。如果配置文件不存在或包含无效值,则应用程序试图保存应用程序中使用的默认配置。
要使用Fiddler或其他工具监视Proton VPN GUI应用程序的HTTP流量,您可能需要禁用TLS证书固定。为了禁用TLS证书,应提供使用空的“ TLSPINNINGNNINGCONFIG”值固定配置文件的值:
...
"TlsPinningConfig": {}
...
Windows服务“ ProtonVPN Service”已安装到“ C: Program Files Proton Proton VPN <版本>”目录中。服务可执行文件是“ ProtonVpnService.exe”。该服务已由Proton VPN GUI应用程序开始并停止。
在安装过程中,该服务被配置为启动和停止的互动用户。
服务可执行人员支持安装和卸载服务。在命令行上将“安装”传递到“ ProtonVpnService.exe”安装服务,通过“卸载” - 卸载。此安装方法不配置服务安全设置。
服务负责与OpenVPN,管理Windows防火墙和拆分隧道驱动程序的互动。
服务日志将保存到“%aLLuserSprofile% protonvpn logs”目录中。
质子VPN使用OpenVPN维护VPN隧道。每个连接到VPN并在断开连接时关闭了新的OpenVPN进程。通过TCP管理接口维护了与OpenVPN过程的通信。
OpenVPN安装到“ C: Program Files Proton vpn <版本> Resources”目录中。 OpenVPN配置文件是静态的,每个VPN服务器都不会更改。
OpenVPN是通过官方来源构建的,该补丁支持Proton VPN特定的TAP适配器。请参阅win-openvpn存储库。
TAP适配器“ Tap-protonvpn Windows适配器V9”由OpenVPN使用。
TAP适配器是通过官方来源构建的,该补丁具有质子VPN特定名称和标识。请参阅WIN-TAP-ADAPTER存储库。
当启用拆分隧道时,使用内核模式驱动程序“ ProtonVPN呼叫驱动程序”用于重定向插座绑定,并通过向质质子VPN使用的其他接口制成的DNS请求,以防止DNS泄漏。
驱动程序被安装为系统服务。它是在连接到VPN并通过质子VPN服务断开连接时停止的。
主要存储库文件夹包含名为ProtonVPN的Proton VPN Windows应用程序的.NET Visual Studio解决方案。
包含连续的集成脚本。
它包含ProtonVPN解决方案的Nuget软件包。
该文件夹包含高级安装程序设置项目文件,安装程序中包含的资源以及已构建的安装程序文件。子文件夹包含:
该文件夹包含Visual Studio解决方案项目。
该文件夹包含Visual Studio项目构建输出。该文件夹可以通过构建解决方案来重新创建其内容,因此可以安全删除。
该文件夹包含Protonmail SRP库的Git subsodule。
该文件夹包含ProtonVPN解决方案的测试项目。
Proton VPN Windows应用程序是使用C#和C ++编程语言,WPF和MVVM Technologies创建的。 Visual Studio解决方案由一系列项目组成:
解决方案文件夹“测试”包含测试项目。