This repository contains an experimental port of the OpenConnect VPN client to Chrome OS.
The official copy of this repository is hosted at https://chromium.googlesource.com/apps/nacl-openconnect.
This procedure has been tested on Ubuntu Trusty (14.04) running in a crouton chroot.
nacl-openconnect is built using the Chrome Native Client SDK and webports, so the first step is to install the host dependencies listed on the home pages for those projects (python, git, etc.). Also, install the
openssl command line tool. You do not need to manually install nacl_sdk, webports, or depot_tools by hand.
Next, chdir into the
nacl-openconnect source tree and type
make. This will download and compile several dependencies, and eventually generate an
openconnect.crx output file.
To modify the libopenconnect library and rebuild the app, use:
make libopenconnect && make clean && make
If you are building under crouton on a Chromebook, it may be helpful to leave all of your sources under the shared
To “sideload” an app or extension under Chrome OS, open up
chrome://extensions in the browser, then open the file manager with Alt-Shift-M, then drag the .crx file onto the extensions page. On the initial attempt, Chrome will prompt for permission to install the app. On subsequent attempts the installation will succeed “silently” without opening any dialogs.
This app has been tested using ocserv configured for user/pass authentication. It should also work with standard Cisco ASA appliances.
You can view the debug output by opening
chrome://extensions and inspecting the background page (select the Console tab).