I recently picked up a C720 Chromebook based on the google page that says OpenVPN is supported. I need this functionality in order to remote into Windows desktops and access intranet sites to get actual work done, not for browsing obfuscation.
Anyways, my initial impression is that as of December 2013 OpenVPN on ChromeOS is still not ready for prime time.
After trying to get this working for days here's what I've determined so far.
1. You can enable developer mode and sudo OpenVPN from a terminal prompt with a standard .ovpn file which seems to work but might require manually configuring tun0 or tap0.
https://groups.google.com/forum/#!msg/chromebook-central/BWsoBqlwDMs/_a9kQK8KiygJ
2. Converting your .ovpn file to an .onc file with base64 encoded embedded certificates sort of works from non-developer mode.
http://www.chromium.org/chromium-os/chromiumos-design-docs/open-network-configuration
http://www-co.ch.cam.ac.uk/facilities/vpn/chromeos-openvpn.html
3. TLS-Auth with a secret ta.key doesn't seem to be supported yet. (Not sure if it is using an ovpn file though). There are onc fields for the tls key and key direction but they throw errors in some openvpn wrapper that chrome os uses. You can see this if you turn on network debugging.
ff_debug +route+connection+vpn
ff_debug --level -2
4. When connecting from non-developer mode using an ONC file, you cannot specify the connection type (tun versus tap).
5. Based on this link (
http://spentry.net/wp/index.php/2013/09/i-got-openvpn-working-on-my-chromebook/ ) it appeared that ChromeOs defaults to bridge mode in non-developer mode. However, when I connect to an OpenVPN bridge server the server using an ONC file, the bridge server notes that the client is actually connecting as tun (routed.)
6. Once connected to a tun (routed) server from non-developer mode using an ONC file, ChromeOs wants to route all of your traffic through the tunnel. Unfortunately I cannot seem to get ChromeOs to honor routes or gateways pushed from the OpenVPN server.
7. As of December 2013, the best I've been able to get working from non-developer mode is to connect to a routed tun server using an onc file and access the internal network only. Is there anyone out there that actually has a working OpenVPN setup on ChromeOS in non-developer mode? It seems that I've almost got it working but something is off with the DHCP dns and pushed routes.
Any help would be much appreciated,
Thx.