changeset 19:0d4d403418d0

add blog post
author Dirk Olmes <dirk@xanthippe.ping.de>
date Mon, 04 Nov 2013 04:31:32 +0100
parents ba3f2e5c6950
children 2a44a3e8d38a 44d5f9f9f2b6
files content/Linux/compiling-shrewsoft-vpn-on-pi.md
diffstat 1 files changed, 45 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/content/Linux/compiling-shrewsoft-vpn-on-pi.md	Mon Nov 04 04:31:32 2013 +0100
@@ -0,0 +1,45 @@
+Title: Compiling the Shrew Soft VPN client on Raspberry Pi
+Date: 2013-11-04
+Lang: en
+
+At work we deploy our software on machines that are located at customers sites. To access these machines we have created a VPN infrastructure that allows us to access the machines, deploy updates etc.
+
+I use [Shrewsoft's VPN client](https://www.shrew.net/software) to connect to the VPN infrastructure. This works so well on Linux that we recently began to replace the commercial VPN client used on Mac OS X with the Shrew Soft client - but that's a different story.
+
+Part of our infrastructure is a [Zabbix](https://www.zabbix.org/wiki/Main_Page) installation which is used to monitor our software via JMX. Zabbix features nice [screens](https://www.zabbix.com/documentation/2.0/manual/config/visualisation/screens) that can be used to create a dashboard-style overview over the current state of all hosts.
+
+To give everyone in the office more visibility on how our software is doing I'd like to display custom Zabbix screens on a big display located in the office. A [Raspberry Pi](http://www.raspberrypi.org/) looks like the perfect machine for powering the display - it's cheap, doesn't use much power and should even have a chrome browser to run in kiosk mode.
+
+Sounds like an interesting pet project so I ordered a Pi and some equipment. When it finally arrived I flashed the standard [NOOBS](http://downloads.raspberrypi.org/NOOBS_latest) starter pack. The main hurdle will be getting the Shrew Soft VPN client to run, I don't want to fiddle with the Linux distro right now. That'll be a hobby project for another day.
+
+Before attempting to compile the source all prerequisites must be installed:
+
+    apt-get install cmake
+    apt-get install flex
+    apt-get install bison
+    apt-get install libedit-dev
+    apt-get install libssl-dev
+
+I did not install Qt and friends - the basic command line client will be sufficient for my setup. Connecting to the VPN will be fully automated anyway.
+
+The next step is to download the sources, unpack the tarball and compile the source. This turned out to be quite smooth using
+
+    cmake -DCMAKE_INSTALL_PREFIX=/usr -DETCDIR=/etc -DNATT=YES
+
+followed by the typical
+
+    make
+    make install
+
+sequence.
+
+Now that the VPN client is installed, I exported the VPN settings from my Linux desktop machine and tried to run the command line client
+
+    ikec -r vpn
+
+I should have been warned by the smooth compile. Of course the VPN client does not work out of the box, it crashes with
+
+    *** glibc detected *** ikec: double free or corruption (out): 0x0191fa70 ***
+    Aborted
+
+Seems like I have to start digging the code. But that's another story for another day. Stay tuned.
\ No newline at end of file