저작권 (C) 2023 양성자 AG
이 저장소는 Proton VPN Windows 앱을 보유합니다. 자세한 빌드 정보는 빌드를 참조하십시오. 라이센스 정보는 복사를 참조하십시오. 기부 정책은 기여를 참조하십시오.
Proton VPN Windows 앱은 모든 Proton VPN 서비스 사용자를위한 것이며, 무료로 제공되며 인증 된 사용자가 사용할 수있는 모든 기능을 지원합니다 (사용자 가입은 웹 사이트에서 발생합니다).
Proton VPN 공식 웹 사이트에서 또는 공식 Github 저장소에서 직접 최신 안정 릴리스를 다운로드 할 수 있습니다.
앱은 이러한 상호 작용 부품으로 구성됩니다.
Proton VPN GUI 앱은 기본적으로 "C : Program Files Proton VPN <Bersion>"디렉토리에 설치됩니다. 기본 실행 파일은 "Protonvpn.exe"입니다.
Proton VPN GUI 앱은 출시시 양성자 VPN 서비스를 시작하고 닫을 때 서비스를 중지합니다.
앱 로그는 "%localAppData% protonvpn log"디렉토리로 저장됩니다.
디버그 구성을 사용한 Proton VPN 빌드는 선택적으로 앱 디렉토리에서 "protonvpn.config"파일에서 구성을로드합니다. 이 파일은 설치 중에 배포되지 않습니다. 구성 파일이 존재하지 않거나 유효한 값이 포함되지 않은 경우 앱이 앱에 사용 된 기본 구성을 저장하려고합니다.
Fiddler 또는 다른 도구를 사용하여 Proton VPN GUI 앱의 HTTP 트래픽을 모니터링하려면 TLS 인증서 고정을 비활성화해야 할 수도 있습니다. 빈 "tlspinningconfig"값으로 구성 파일을 고정하는 TLS 인증서를 비활성화하려면 다음을 제공해야합니다.
...
"TlsPinningConfig": {}
...
Windows Service "Protonvpn Service"는 기본적으로 "C : Program Files Proton VPN <Bersion>"디렉토리에 설치됩니다. 서비스 실행 파일은 "Protonvpnservice.exe"입니다. 서비스는 Proton VPN GUI 앱에 의해 시작되고 중단됩니다.
설치 중에 서비스는 시작 및 비전없는 대화식 사용자가 중지하도록 구성됩니다.
서비스 실행 파일은 설치 및 서비스 제거를 지원합니다. "Protonvpnservice.exe"로 명령 줄에서 "설치"를 전달하면 서비스가 설치되어 "제거" - 제거되지 않습니다. 이 설치 방법은 서비스 보안 설정을 구성하지 않습니다.
서비스는 OpenVPN과의 상호 작용, Windows 방화벽 관리 및 분할 터널 드라이버와의 상호 작용을 담당합니다.
서비스 로그는 "%Allusersprofile% protonvpn log"디렉토리에 저장됩니다.
양성자 VPN은 VPN 터널을 유지하기 위해 OpenVPN을 사용합니다. 새로운 OpenVPN 프로세스는 VPN에 각 연결에서 시작되어 연결이 끊어지면 닫힙니다. OpenVPN 프로세스와의 통신은 TCP 관리 인터페이스를 통해 유지됩니다.
OpenVPn은 기본적으로 "C : Program Files VPN <버전> resources"디렉토리에 설치됩니다. OpenVPN 구성 파일은 정적이며 각 VPN 서버마다 변경되지 않습니다.
OpenVPN은 양성자 VPN 특이 적 탭 어댑터를 지원하기 위해 패치를 적용하여 공식 소스에서 구축됩니다. Win-OpenVPN 저장소를 참조하십시오.
탭 어댑터 "Tap-Protonvpn Windows 어댑터 v9"는 OpenVPN에서 사용됩니다.
탭 어댑터는 양성자 VPN 특정 이름과 식별을 위해 패치를 적용하여 공식 소스에서 구축됩니다. Win-Tap-Adapter 저장소를 참조하십시오.
커널 모드 드라이버 "Protonvpn 콜 아웃 드라이버"는 분할 터널이 활성화 될 때 소켓 바인딩 리디렉션에 사용되며 Proton VPN이 사용하는 것보다 다른 인터페이스로 만들어진 DNS 요청에 대한 서브 페일 응답 패킷을 보내어 DNS 누출을 방지합니다.
드라이버는 시스템 서비스로 설치됩니다. VPN에 연결할 때 시작되었고 Proton VPN 서비스로 연결을 끊을 때 중지됩니다.
주요 리포지토리 폴더에는 Protonvpn이라는 Proton VPN Windows 앱의 .NET Visual Studio 솔루션이 포함되어 있습니다.
지속적인 통합 스크립트가 포함되어 있습니다.
ProtonVPN 솔루션의 Nuget 패키지가 포함되어 있습니다.
이 폴더에는 고급 설치 프로그램 설정 프로젝트 파일, 설치 프로그램에 포함 된 리소스 및 빌드 설치 프로그램 파일이 포함되어 있습니다. 하위 폴더에는 다음이 포함됩니다.
이 폴더에는 Visual Studio 솔루션 프로젝트가 포함되어 있습니다.
이 폴더에는 Visual Studio Project 빌드 출력이 포함되어 있습니다. 이 폴더는 솔루션을 구축하여 컨텐츠를 재현하므로 안전하게 삭제할 수 있습니다.
이 폴더에는 Protonmail SRP 라이브러리의 git 하위 모듈이 포함되어 있습니다.
이 폴더에는 ProtonVPN 솔루션의 테스트 프로젝트가 포함되어 있습니다.
Proton VPN Windows 앱은 C# 및 C ++ 프로그래밍 언어, WPF 및 MVVM 기술을 사용하여 작성됩니다. Visual Studio 솔루션은 일련의 프로젝트로 구성됩니다.
솔루션 폴더 "테스트"에는 테스트 프로젝트가 포함됩니다.