Juniper VPN on linux

 

I am required to connect to a VPN, even internally. This means that using linux at work requires getting that VPN session to complete, on any version of linux I am going to productively use.

I have used Crunchbang for the last four months, primarily because it connected to our Juniper VPN right out of the box with no need to hack around or resolve anything at all. But – I like Unbuntu. I replaced Crunchbang four days ago with Ubuntu 12.04. The VPN did not work at first. I installed the Oracle/SUN java, and then connected successfully to the VPN. Everything worked. Yeah… Well, today, not so much.

Today I set up dual monitors, and once that was complete, tried to connect to the VPN. No luck. The "Network Connect" java app would crash and disappear. I found the following error in the /var/log/syslog file:

Jun 11 09:35:09 dmunsingernx2 NetworkManager[832]:    SCPlugin-Ifupdown: devices added (path: /sys/devices/virtual/net/tun0, iface: tun0)
Jun 11 09:35:09 dmunsingernx2 NetworkManager[832]:    SCPlugin-Ifupdown: device added (path: /sys/devices/virtual/net/tun0, iface: tun0): no ifupdown configuration found.
Jun 11 09:35:09 dmunsingernx2 kernel: [ 1947.323896] show_signal_msg: 27 callbacks suppressed
Jun 11 09:35:09 dmunsingernx2 kernel: [ 1947.323900] ncsvc[2468]: segfault at 2 ip b75a3b8e sp bfa05320 error 4 in libc-2.15.so[b755e000+19f000]
Jun 11 09:35:09 dmunsingernx2 avahi-daemon[804]: Withdrawing workstation service for tun0.
Jun 11 09:35:09 dmunsingernx2 NetworkManager[832]:    SCPlugin-Ifupdown: devices removed (path: /sys/devices/virtual/net/tun0, iface: tun0)
Jun 11 09:36:16 dmunsingernx2 NetworkManager[832]:    SCPlugin-Ifupdown: devices added (path: /sys/devices/virtual/net/tun0, iface: tun0)
Jun 11 09:36:16 dmunsingernx2 NetworkManager[832]:    SCPlugin-Ifupdown: device added (path: /sys/devices/virtual/net/tun0, iface: tun0): no ifupdown configuration found.
Jun 11 09:36:16 dmunsingernx2 avahi-daemon[804]: Withdrawing workstation service for tun0.
Jun 11 09:36:16 dmunsingernx2 kernel: [ 2014.446682] ncsvc[2595]: segfault at 2 ip b7563b8e sp bfe279e0 error 4 in libc-2.15.so[b751e000+19f000]

I don't know that the dual display had anything to do with it – initial google searches showed that this kind of error

kernel: [ 1947.323900] ncsvc[2468]: segfault at 2 ip b75a3b8e sp bfa05320 error 4 in libc-2.15.so[b755e000+19f000]

can be video related.

I dropped back to the nvidia stable driver. That did not seem to make a difference.

I resolved it by

  • deleting ~/.juniper_networks
  • download the Oracle JDK from http://www.oracle.com/technetwork/java/javase/downloads/jdk-7u4-downloads-1591156.html
  • reinstalling the oracle jdk by hand

Deleting .juniper_networks:

dmunsing@dmunsingernx2:~$ rm -rf .juniper_networks/^C
dmunsing@dmunsingernx2:~$

Once this is done, download the JDK from the link above, and then in the Downloads folder, run

dmunsing@dmunsingernx2:~/Downloads$ tar -zxvf jdk-7u4-linux-i586.tar.gz
jdk1.7.0_04/
jdk1.7.0_04/man/
jdk1.7.0_04/man/ja_JP.UTF-8/
jdk1.7.0_04/man/ja_JP.UTF-8/man1/
jdk1.7.0_04/man/ja_JP.UTF-8/man1/rmid.1
jdk1.7.0_04/man/ja_JP.UTF-8/man1/javadoc.1
jdk1.7.0_04/man/ja_JP.UTF-8/man1/appletviewer.1

jdk1.7.0_04/include/jvmti.h
jdk1.7.0_04/include/jvmticmlr.h
jdk1.7.0_04/include/jni.h
jdk1.7.0_04/include/jawt.h
dmunsing@dmunsingernx2:~/Downloads$

And installing Oracle JDK by hand (in debugging I was root for a bit)

root@dmunsingernx2:/home/dmunsing/Downloads# ls
google-chrome-stable_current_i386.deb  jdk-7u4-linux-i586.tar.gz      unetbootin-linux-575
jdk1.7.0_04                            jre-7u4-linux-i586.tar.gz
jdk-7u3-linux-i586.tar.gz              ubuntu-12.04-desktop-i386.iso
root@dmunsingernx2:/home/dmunsing/Downloads#  mkdir -p /usr/lib/jvm/jdk1.7.0
root@dmunsingernx2:/home/dmunsing/Downloads# mv jdk1.7.0_04/* /usr/lib/jvm/jdk1.7.0/
root@dmunsingernx2:/home/dmunsing/Downloads# ls /usr/lib/jvm/jdk1.7.0/
bin        db       jre  LICENSE  README.html  src.zip
COPYRIGHT  include  lib  man      release      THIRDPARTYLICENSEREADME.txt

root@dmunsingernx2:/home/dmunsing/Downloads# sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk1.7.0/bin/java" 1
root@dmunsingernx2:/home/dmunsing/Downloads# sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk1.7.0/bin/javac" 1
root@dmunsingernx2:/home/dmunsing/Downloads# sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/lib/jvm/jdk1.7.0/bin/javaws" 1

root@dmunsingernx2:/home/dmunsing/Downloads# exit
exit
dmunsing@dmunsingernx2:~$ mkdir ~/.mozilla/plugins/
dmunsing@dmunsingernx2:~$ ln -s /usr/lib/jvm/jdk1.7.0/jre/lib/i386/libnpjp2.so ~/.mozilla/plugins/
dmunsing@dmunsingernx2:~$ ls -la .mozilla/plugins/
total 8
drwxrwxr-x 2 dmunsing dmunsing 4096 Jun 11 10:09 .
drwx------ 5 dmunsing dmunsing 4096 Jun 11 10:09 ..
lrwxrwxrwx 1 dmunsing dmunsing   46 Jun 11 10:09 libnpjp2.so -> /usr/lib/jvm/jdk1.7.0/jre/lib/i386/libnpjp2.so

I retried the connection using firefox as the browser, and connected successfully.

syslog looks completely different:

Jun 11 10:12:04 dmunsingernx2 NetworkManager[787]:    SCPlugin-Ifupdown: devices added (path: /sys/devices/virtual/net/tun0, iface: tun0)
Jun 11 10:12:04 dmunsingernx2 NetworkManager[787]:    SCPlugin-Ifupdown: device added (path: /sys/devices/virtual/net/tun0, iface: tun0): no ifupdown configuration found.

No segfault, no withdrawal of workstation service for tun0.

ifconfig looks like:

root@dmunsingernx2:/var/log# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:24:e8:28:56:e9
          inet addr:192.168.241.49  Bcast:192.168.243.255  Mask:255.255.252.0
          inet6 addr: fe80::224:e8ff:fe28:56e9/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:261725 errors:0 dropped:0 overruns:0 frame:0
          TX packets:56526 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:148910159 (148.9 MB)  TX bytes:7425077 (7.4 MB)
          Interrupt:21 Memory:fdfe0000-fe000000

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:16150 errors:0 dropped:0 overruns:0 frame:0
          TX packets:16150 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:2562804 (2.5 MB)  TX bytes:2562804 (2.5 MB)

tun0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
          inet addr:192.168.158.145  P-t-P:192.168.158.145  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1400  Metric:1
          RX packets:1153 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1168 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:500
          RX bytes:149917 (149.9 KB)  TX bytes:75823 (75.8 KB)

—doug