Copyright (C) 2023 Proton AG
Этот репозиторий содержит приложение Proton VPN Windows. Подробная информация о сборке см. Строительство. Информация о лицензировании см. Копирование. Для вклад политики см. Вклад.
Приложение Proton VPN Windows предназначено для каждого пользователя Service Proton VPN, оплачиваемого или бесплатного и поддерживает все функции, доступные для аутентифицированных пользователей (вместо этого на веб -сайте происходит регистрация пользователя).
Вы можете скачать последний стабильный релиз, либо на официальном веб -сайте Proton VPN, либо непосредственно на официальном репозитории GitHub.
Приложение состоит из этих взаимодействующих частей:
Приложение GUI Proton VPN установлено в каталог "C: Program Files Proton VPN <Ression>" по умолчанию. Основным исполняемым файлом является "protonvpn.exe".
Приложение Proton VPN GUI запускает службу Proton VPN при запуске и останавливает службу при закрытии.
Журналы приложений сохраняются в каталоге «%localappdata% protonvpn logs».
Proton VPN Build с использованием конфигурации отладки опционально загружает свою конфигурацию из файла «protonvpn.config» в каталоге приложений. Этот файл не развернут во время установки. Если файл конфигурации не существует или не содержит допустимых значений, приложение пытается сохранить конфигурацию по умолчанию, используемую в приложении.
Чтобы отслеживать HTTP -трафик приложения GUI Proton VPN с использованием Fiddler или другого инструмента, вам может потребоваться отключить закрепление сертификата TLS. Чтобы отключить сертификат TLS, закрепляя файл конфигурации пустым значением "tlspinningConfig":
...
"TlsPinningConfig": {}
...
Сервис Windows "Protonvpn Service" установлен в каталог "C: Program Files Proton VPN <Ression>" по умолчанию. Служба исполняемого файла - это "protonvpnservice.exe". Сервис запускается и останавливается приложением Proton VPN GUI.
Во время установки сервис настроен для запуска и остановки непреодолимым интерактивным пользователям.
Служба исполняемого файла поддерживает установку и удаление обслуживания. Передача «Установить» в командной строке в «protonvpnservice.exe» Устанавливает службу, передавая «Убивание» - удаление. Этот метод установки не настраивает настройки безопасности службы.
Сервис отвечает за взаимодействие с OpenVPN, управление брандмауэром Windows и Split Tunnel.
Журналы обслуживания сохраняются в каталоге «%allusersprofile% protonvpn logs».
Proton VPN использует OpenVPN для поддержания туннеля VPN. Новый процесс OpenVPN запускается на каждом подключении к VPN и закрывается при отключении. Связь с процессом OpenVPN поддерживается через интерфейс управления TCP.
OpenVPN установлен в каталог "C: Program Files Proton VPN <Ression> resources" по умолчанию. Файл конфигурации OpenVPN является статичным, он не изменяется для каждого VPN -сервера.
OpenVPN построен из официального источника, применяя патч для поддержки Proton VPN -адаптера. Смотрите репозиторий Win-Openvpn.
Нажмите адаптер «Tap-Protonvpn Windows Адаптер v9» используется OpenVPN.
Адаптер TAP построен из официального источника, применяя патч, чтобы иметь специфическое имя и идентификацию Proton VPN. Смотрите репозиторий с адаптером
Драйвер режима режима ядра «драйвер выскоростного выноска» используется для перенаправления привязков сокета при включении разделенного туннеля и предотвращения утечки DNS путем отправки пакета ответов Servfail для запросов DNS, которые были сделаны из других интерфейсов, чем использование Proton VPN.
Драйвер установлен в качестве системной службы. Он начинается при подключении к VPN и останавливается при отключении с помощью службы Proton VPN.
Основная папка репозитория содержит решение Visual Studio приложения Proton VPN Windows с именем ProTonVPN.
Содержит сценарии непрерывной интеграции.
Он содержит пакеты Nuget решения ProtonVPN.
Эта папка содержит расширенные файлы проекта установки установщика, ресурсы, включенные в установщик, и встроенные файлы установщика. Подпапки содержат:
Эта папка содержит проекты решений Visual Studio.
Эта папка содержит вывод визуальной студии проекта. Эта папка может быть безопасно удалена, так как ее содержание воссоздается путем создания решения.
Эта папка содержит подмодуль GIT из библиотеки ProtonMail SRP.
Эта папка содержит тестовые проекты решения ProtonVPN.
Приложение Proton VPN Windows создается с использованием языков программирования C# и C ++, технологий WPF и MVVM. Решение Visual Studio состоит из серии проектов:
Папка решения «Тест» содержит тестовые проекты.