Private Internet Access
Private Internet Access is the world's leading consumer VPN service. At Private Internet Access we believe in unfettered access for all, and as a firm supporter of the open source ecosystem we have made the decision to open source our VPN clients. For more information about the PIA service, please visit our website privateinternetaccess.com or check out the Wiki.
PIA VPN for iOS
With the Private Internet Access VPN app for iOS, you can access our network of VPN servers across the world from your iPhone, iPad or iPod touch (64-bit only). Choose among many available countries and connect to them easily. Features include kill switch, multiple VPN protocols, DNS/IPv6 leak protection and Safari Content Blocker for ad-blocking while browsing with Safari.
The PIA VPN app features:
- ☑ Plenty of countries to connect to (28 as of today)
- ☑ IKEv2, OpenVPN and WireGuard VPN Protocols
- ☑ Kill switch
- ☑ Multiple VPN protocols
- ☑ Fine-grained VPN settings
- ☑ DNS leak protection
- ☑ IPv6 leak protection
- ☑ Safari Content Blocker
- ☑ Dark theme
- ☑ Hotspot Helper
- iOS 11.0+ / macOS 10.11+
- Xcode 9+ (Swift 4)
- Git (preinstalled with Xcode Command Line Tools)
- Ruby (preinstalled with macOS)
- CocoaPods 1.5.0
It's highly recommended to use the Git and Ruby packages provided by Homebrew.
Download the app codebase locally:
$ git clone https://github.com/pia-foss/vpn-ios.git
Assuming you have a working CocoaPods environment, setting up the app workspace only requires installing the pod dependencies:
$ pod install
After that, open
PIA VPN.xcworkspace in Xcode and run the
PIA VPN target.
For the VPN to work properly, the app requires:
- App Groups and Keychain Sharing capabilities
- App IDs with Packet Tunnel entitlements
both in the main app and the tunnel extension target.
Hotspot Helper API
We use a special entitlement to participate in the process of joining Wi-Fi/hotspot networks (https://developer.apple.com/documentation/networkextension/nehotspothelper)
You need to request this entitlement to Apple or remove the call to
AppDelegate.swift and adapt the entitlements file to your needs.
By contributing to this project you are agreeing to the terms stated in the Contributor License Agreement (CLA) here.
For more details please see CONTRIBUTING.
- Jose Blaya - ueshiba
- Davide De Rosa
- Amir Malik (before 2016)
- SwiftyBeaver - © 2015 Sebastian Kreutzberger
- Alamofire - © 2014-2018 Alamofire Software Foundation (http://alamofire.org/)
- iRate - © 2011 Charcoal Design
- TPKeyboardAvoiding - © 2013 Michael Tyson
- SideMenu - © 2015 Jonathan Kent email@example.com
- FXPageControl - © 2010 Charcoal Design
- MBProgressHUD - © 2009-2016 Matej Bukovinski
- TunnelKit - © 2018 - Present Davide de Rosa (https://github.com/passepartoutvpn/tunnelkit) - TunnelKit is not MIT software and remains under the terms of the GPL license (https://github.com/passepartoutvpn/tunnelkit/blob/master/LICENSE)
© 2002-2018 OpenVPN Inc. - OpenVPN is a registered trademark of OpenVPN Inc.