版權(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解決方案由一系列項目組成:
解決方案文件夾“測試”包含測試項目。