OpenVPN for Android
Server Address:
Server Port:
openvpn.uni-paderborn.de
1194
Location
folder can\'t be read!
Select
Cancel
No Data
LZO Compression
No Certificate
Client Certificate
Client Certificate Key
PKCS12 File
CA Certificate
Nothing selected
Copyright © 2002–2010 OpenVPN Technologies, Inc. <sales@openvpn.net>\n
"OpenVPN" is a trademark of OpenVPN Technologies, Inc.\n
Copyright 2012\nArne Schwabe <arne@rfc2549.org>
Source code and issue tracker available under http://code.google.com/p/ics-openvpn/
The program uses the following components. See the source for full details on the licenses
File Dialog based on work by Alexander Ponomarev
Copyright © 1996 – 2011 Markus Franz Xaver Johannes Oberhumer
This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit\n
Copyright © 1998-2008 The OpenSSL Project. All rights reserved.\n\n
This product includes cryptographic software written by Eric Young (eay@cryptsoft.com)\n
Copyright © 1995-1998 Eric Young (eay@cryptsoft.com) All rights reserved.
OpenVPN
File Dialog
LZO
OpenSSL
About
About OpenVPN for Android
List of all configured VPNs
All your precious VPNs
Type
PKCS12 Password
Select…
Nothing Selected
Use TLS Authentication
TLS Direction
Enter IPv6 Address/Netmask in CIDR Format (e.g. 2000:dd::23/64)
Enter IPv4 Address/Netmask in CIDR Format (e.g. 1.2.3.4/24)
IPv4 Address
IPv6 Address
Enter custom OpenVPN options. Use with great care. Also note that many of the tun related OpenVPN settings cannot be supported by design of the VPNSettings. If you think an important option is missing contact the author
Username
Password
For the static configuration the TLS Auth Keys will be used as static keys.
Configure the VPN
Add Profile
Enter a name identifying the new Profile
Duplicate Profile Name
Profile Name
No User certificate selected.
No error found
Error in Configuration
Cannot parse the IPv4 address
Cannot parse the custom routes
Leave empty to query on demand
OpenVPN Shortcut
Connect to VPN
Profile specified in shortcut not found
Random Host Prefix
Adds 6 random chars in front of hostname
Enable Custom Options
Specify custom options. Use with care!
Route rejected by Android
Disconnect
clear log
Cancel Confirmation
Disconnect the connected VPN/cancel the connection attempt?
Remove VPN
Checks whether the server uses a TLS Server Certificate
Except TLS Server
Checks the Remote Server Certificate CN against a string
Certificate Hostname Check
Enter the string against which the remote Server is checked. OpenVPN will use prefix matching. "Server" matches "Server-1" and "Server-2"\nLeave empty to check the CN against the server hostname.
Remote Hostname(CN)
Enables the TLS Key Authentication
TLS Auth File
Requests IP addresses, routes and timing options from the server.
No information is requested from the server. Settings need to be specified below.
Pull Settings
DNS
Override DNS Settings by Server
Use your own DNS Servers
searchDomain
DNS Server to be used.
DNS Server
Secondary DNS Server used if the normal DNS Server cannot be reached.
Backup DNS Server
Ignore pushed routes
Ignore routed pushed by the server.
Redirects all Traffic over the VPN
Use default Route
Enter custom routes. Only enter destination in CIDR format. "10.0.0.0/8 2002::/16" would direct the networks 10.0.0.0/8 and 2002::/16 over the VPN.
Custom Routes
Log verbosity level
Allows authenticated packets from any IP
Allow floating server
Custom Options
Edit VPN Settings
Remove the VPN Profile %s?
On some custom ICS images the permission on /dev/tun might be wrong, or the tun module might be missing completely. For CM9 images try the fix ownership option under general settings
Opening tun interface failed badly.
"Error: "
Clear
info
Show connection details
Last interface configuration from OpenVPN:
Local IPv4: %1$s/%2$d IPv6: %3$s MTU: %4$d
DNS Server: %s
DNS Domain: %s
Routes: %s
Routes IPv6: %s
Got interface information %1$s and %2$s, assuming second address is peer address of remote. Using /32 netmask for local IP. Mode given by OpenVPN is \"%3$s\".
Cannot make sense of %1$s and %2$s as IP route with CIDR netmask, using /32 as netmask.
Corrected route %1$s/%2$s to %3$s/%2$s
Cannot access the Android Keychain Certificates. (Can be caused by a firmware upgrade or by restoring a backup of the app/app settings). Please edit the VPN and reselect the certificate under basic settings to recreate the permission to access the certificate.
%1$s %2$s
Send log file
Send
ICS OpenVPN log file
Copied log entry to clip board
Tap Mode
Tap Mode is not possible with the non root VPN API. Therefore this application cannot provide tap support
Again? Are you kidding? No tap mode is really not supported and sending more mail asking if it will be supported will not help.
A third time? Actually one could write a a tap emulator based on tun that would add layer2 information on send and strip layer2 information on receive. But this tap emulator would have to implement also ARP and possible a DHCP client. I am not aware of anybody doing any work in this direction. Contact me if you want to start coding on this.
FAQ
Frequently asked questions and some advice
Copying log entries
To copy a single log entry press and and hold on the log entry. To copy/send the whole log use the Send Log option. Use the hardware menu button if not visible in the GUI.
Shortcut to start
You can place a shortcut to start OpenVPN on your desktop. Depending on your homescreen program you have to add a shortcut or a widget.
Your image does not support the VPNService API,sorry :(
Encryption
Enter encryption method
Enter the cipher key for OpenVPN. Leave empty to use default cipher
Authentication/Encryption
File Explorer
Inline File
Import
Error importing File
Could not import File from filesystem
[[Inline file data]]
Refusing to open tun device without IP information
Import Profile from ovpn file
Import
Could not read Profile to import
Error reading config file
add Profile
Trying to read file: %1$s
Could not find file %1$s mentioned in the imported config file
Importing config file from source %1$s
Your configuration had a few configuration options that could be parsed. These options were added as custom configuration options. The custom configuration is displayed below:
Done reading config file.
Do not bind to local address and port
No local binding
Import configuration file
Security considerations
"As OpenVPN is security sensitive a few notes about security are sensible. All data on the sdcard is inherently insecure. Every app can read it (for example this program requires no special sd card rights). The data of this application can only be read by the application itself. By using the import option for cacert/cert/key in the file dialog the data is stored in the VPN profile. The VPN profiles are only accessible by this application. (Do not forget to delete the copies on the sd card afterwards). Even though accessible only by this application the data is still unencrypted. By rooting the telephone or other exploits it may be possible to retrieve the data. Saved passwords are stored in plain text as well. For pkcs12 files it is highly recommended that you import them into the android keystore."
Import
Error showing certificate selection
Got an exception trying to show the Android 4.0+ certificate selection dialog. This should never happen as this a standard feature of Android 4.0+. Maybe your Android ROM support for certificate storage is broken
IPv4
IPv6
Waiting for state message…
imported profile
imported profile %d
Broken Images
<p>Official HTC images are known to have a strange routing problem causing traffic not to flow through the tunnel (See also <a href=\"http://code.google.com/p/ics-openvpn/issues/detail?id=18\">Issue 18</a> in the bug tracker.)</p><p>The official SONY images from Xperia arc S and Xperia Ray have been reported to be missing the VPNService completely from the image. Other Sony images may be affected as well. (See also <a href=\"http://code.google.com/p/ics-openvpn/issues/detail?id=29\">Issue 29</a> in the bug tracker.)</p><p>On custom build images the tun module might be missing or the rights of /dev/tun might be wrong. Some CM9 images need the fix ownership option under general settings.</p><p>Most important: If you have a broken image, report it to your vendor. The more people report the issue to the vendor the more likely you will get a fix.</p>
The username must not be empty.
PKCS12 File Encryption Key
Private Key Password
Password
file icon
TLS Authentication
Generated Config
General Settings
Tries to set the owner of /dev/tun to system. Some CM9 images need this to make the VPNService API work. Requires root.
Fix ownership of /dev/tun
Shows the generated OpenVPN Configuration File
Editing \"%s\"
Building configuration…
Turning this option on will force a reconnect if the network state is change (WIFI to/from mobile)
Reconnect on network change
Got certificate \'%s\' from Keystore
Network Status: %s
The CA cert is usually returned from the Android Keystore. Specify a separate certificate if you get certificate verification errors.
Select
No CA Certificate returned while reading from Android keystore. Auhtentication will probably fail.
Shows the log window on connect. The log window can always be accessed from the notification status.
Show log window
Keep the notification displayed after the connection is established to show traffic statistics.
Show Traffic Statistics
Running on %1$s (%2$s) %3$s, Android API %4$d
Error signing with Android keystore key %1$s: %2$s
The VPN connection warning telling you that this app can intercept all traffic is imposed by the system to prevent abuse of the VPNService API.\nThe VPN connection notification (The key symbol) is also imposed by the Android system to signal an ongoing VPN connection. On some images this notification plays a sound.\nAndroid introduced these system dialogs for your own safety and made sure that they cannot be circumenvented. (On some images this unfortunely includes a notifciation sound)
Connection warning and notification sound
IP and DNS
Basic
Routing
Obscure OpenVPN Settings. Normally not needed.
Advanced
ICS Openvpn Config
No DNS servers being used. Name resolution may not work. Consider setting custom DNS Servers
Could not add DNS Server \"%1$s\", rejected by the system: %2$s
<p>Get a working config (tested on your computer or download from your provider/organisation)</p><p>If it is a single file no with no extra pem/pks12 files you can email the file yourself and open the attachment. If you have multiple files put them on your sd card.</p><p>Click on the email attachment/Use the folder icon in the vpn list to import the config file</p><p>If there are errors about missing files put the missing files on your sd card.</p><p>Click on the save symbol to add the imported VPN to your VPN list</p><p>Connect the VPN by clicking on the name of the VPN</p><p>If there are error or warnings in the log try to understand the warnings/error and try to fix them</p>
Quick Start
Try to load the tun.ko kernel module before trying to connect. Needs rooted devices.
Load tun module
Import PKCS12 from configuration into Android Keystore
Error getting proxy settings: %s
Using proxy %1$s %2$d
Use system proxy
Use the system wide configuration for HTTP/HTTPS proxies to connect.
You can <a href=\"https://www.paypal.com/cgi-bin/webscr?hosted_button_id=R2M6ZP9AF25LS&cmd=_s-xclick\">donate with PayPal</a>
OpenVPN will reconnect a VPN if it was active on system reboot/shutdown. Please read the Connection warning FAQ before using this option.
Reconnect on reboot
Ignore
Restart
Configuration changes are applied after restarting the VPN. (Re)start the VPN now?
Configuration changed
Could not determine last connected profile for editing
Duplicate notifications
If Android is under system memory (RAM) pressure app and service which are not needed at the moment are removed from active memory. This terminates an ongoing VPN connection. To ensure that the connection/Openvpn survices the service runs with higher priority. To run with higher priority the application must display a notification. The key notification icon is imposed by the system as described in the previous FAQ entry. It does not count as app notification for purpose of running with higher priority.