Hak Cipta (C) 2023 Proton AG
Repositori ini menahan aplikasi Proton VPN Windows. Untuk informasi build terperinci, lihat build. Untuk informasi lisensi, lihat Menyalin. Untuk kebijakan kontribusi, lihat Kontribusi.
Aplikasi Proton VPN Windows ditujukan untuk setiap pengguna layanan VPN Proton, dibayar atau gratis dan mendukung semua fungsi yang tersedia untuk pengguna yang diautentikasi (pendaftaran pengguna sebaliknya terjadi di situs web).
Anda dapat mengunduh rilis stabil terbaru, baik di situs web resmi Proton VPN atau langsung di repositori GitHub resmi.
Aplikasi ini terdiri dari bagian -bagian yang berinteraksi ini:
Aplikasi Proton VPN GUI diinstal ke dalam "C: Program Files Proton VPN <Version>" direktori secara default. Eksekusi utama adalah "protonvpn.exe".
Aplikasi Proton VPN GUI memulai layanan Proton VPN saat diluncurkan dan menghentikan layanan saat ditutup.
Log aplikasi disimpan ke direktori "%localAppdata% protonvpn log".
Proton VPN build menggunakan konfigurasi debug secara opsional memuat konfigurasinya dari file "protonvpn.config" di direktori aplikasi. File ini tidak digunakan selama instalasi. Jika file konfigurasi tidak ada atau tidak mengandung nilai yang valid, aplikasi mencoba menyimpan konfigurasi default yang digunakan dalam aplikasi.
Untuk memantau lalu lintas HTTP aplikasi Proton VPN GUI menggunakan Fiddler atau alat lain, Anda mungkin perlu menonaktifkan Pinning Sertifikat TLS. Untuk menonaktifkan sertifikat TLS yang menyematkan file konfigurasi dengan nilai "tlspinningconfig" kosong harus disediakan:
...
"TlsPinningConfig": {}
...
Layanan Windows "Layanan ProtonVPN" diinstal ke dalam "C: Program Files Proton VPN <Version>" direktori secara default. Layanan yang dapat dieksekusi adalah "protonvpnservice.exe". Layanan ini dimulai dan dihentikan oleh aplikasi Proton VPN GUI.
Selama instalasi, layanan ini dikonfigurasi untuk dimulai dan dihentikan oleh pengguna interaktif yang tidak beruntung.
Layanan yang dapat dieksekusi mendukung instalasi dan penghancuran layanan. Melewati "Instal" pada baris perintah ke "protonvpnservice.exe" menginstal layanan, melewati "uninstall" - uninstalls. Metode instalasi ini tidak mengonfigurasi pengaturan keamanan layanan.
Layanan bertanggung jawab untuk interaksi dengan OpenVPN, mengelola Windows Firewall dan Split Tunnel Driver.
Log layanan disimpan ke direktori "%allusersprofile% protonvpn log".
Proton VPN menggunakan OpenVPN untuk memelihara terowongan VPN. Proses OpenVPN baru dimulai pada setiap sambungan ke VPN dan ditutup pada saat terputus. Komunikasi dengan proses OpenVPN dipertahankan melalui antarmuka manajemen TCP.
OpenVPN diinstal ke dalam direktori "C: Program Proton VPN <Version> Resources" secara default. File konfigurasi OpenVPN statis, tidak berubah untuk setiap server VPN.
OpenVPN dibangun dari sumber resmi dengan menerapkan tambalan untuk mendukung adaptor tap spesifik Proton VPN. Lihat Repositori Win-OpenVPN.
Tap Adapter "Tap-ProtonVPN Windows Adapter V9" digunakan oleh OpenVPN.
Adaptor tap dibangun dari sumber resmi dengan menerapkan tambalan untuk memiliki nama dan identifikasi spesifik Proton VPN. Lihat Repositori Win-Tap-Adapter.
Driver Mode Kernel "Driver Callout ProtonVPN" digunakan untuk mengarahkan kembali binding soket ketika terowongan terpisah diaktifkan dan mencegah kebocoran DNS dengan mengirimkan paket respons servfail untuk permintaan DNS yang dibuat dari antarmuka lain daripada penggunaan VPN proton.
Driver diinstal sebagai layanan sistem. Ini dimulai saat menghubungkan ke VPN dan berhenti saat memutuskan hubungan dengan layanan VPN proton.
Folder repositori utama berisi solusi .NET Visual Studio dari aplikasi Windows Proton VPN bernama ProtonVPN.
Berisi skrip integrasi berkelanjutan.
Ini berisi paket nuget dari solusi ProtonVPN.
Folder ini berisi file proyek Pengaturan Pemasang Lanjutan, sumber daya yang termasuk dalam penginstal, dan file penginstal yang dibangun. Subfolder berisi:
Folder ini berisi proyek solusi Visual Studio.
Folder ini berisi output build proyek studio visual. Folder ini dapat dihapus dengan aman karena kontennya diciptakan kembali dengan membangun solusi.
Folder ini berisi submodule Git dari Perpustakaan SRP Protonmail.
Folder ini berisi proyek uji solusi ProtonVPN.
Aplikasi Proton VPN Windows dibuat menggunakan bahasa pemrograman C# dan C ++, teknologi WPF dan MVVM. Solusi Visual Studio terdiri dari serangkaian proyek:
Folder solusi "tes" berisi proyek pengujian.