Skip to main content

Juniper Network Connect on Mac OS X Snow Leopard

Juniper Network Connect is a very popular VPN client for corporate networks. It bootstraps from a Java applet and has native versions for Windows, Linux and Mac, and works very well. Unfortunately, it seems that Mac OS X 10.5 Leopard and 10.6 Snow Leopard have some issues caused by a dodgy installation program.

One common way to make it work is to enable the root user and log in with full admin privileges under OS X and install it that way. This is a sledgehammer approach to a fairly simple problem, opens up security issues, and didn't even work for me. I won't even bother exploring that route in this blog post. There are a couple of other things that can be done to make it work, though.

If you upgraded from a previous version of OS X and already had the Network Connect client installed, you may just be suffering a simple permissions issue. These instructions are for Network Connect 6.2.0, but they might well work with other versions with a tweak. From Terminal, run the following commands:

    sudo mkdir -p /usr/local/juniper/nc/6.2.0
    sudo chmod 755 /usr/local/juniper/nc/6.2.0
    sudo mkdir /Applications/Network\ Connect.app/Contents/Frameworks

This restores some broken permissions and a missing directory that Snow Leopard seems to consider unnecessary. Once you've done this, fire up Network Connect and you're good to go.

On the other hand, if you're already running Snow Leopard and you haven't yet installed Network Connect, it might be dying halfway through installation after authentication. This is because an Apple provided Java update changed the default Sun password from 'changeit' to 'changeme' in the global keystore. This simple little change means that authenticating Java applets to install software locally is broken. More information about this problem can be found in the Juniper knowledge base, article KB16134.

The fix is very simple, and involves changing the Java password back to 'changeit'. Open up a terminal and run the following command:

sudo keytool -storepasswd -new changeit -keystore \
/System/Library/Frameworks/JavaVM.framework/Resources/Deploy.bundle/\
Contents/Home/lib/security/cacerts \ 
-storepass changeme

Note that you should copy that as one big command. The backslashes are continuation characters to tell it to continue the same command. Also note that you shouldn't put any spaces between "Deploy.bundle/" and "Contents". Once this is done, Network Connect should just burst into life.

Comments

Popular posts from this blog

Fairy Lights

Street lights at night can be very pretty. For someone who lives close to the centre of a large city, skirting round the edge of the town centre can provide a host of beautiful views at night. One advantage to using a wide open lens when taking these pictures is the capture of bokeh, or creative blur. An extreme example is shown to your right; a mass of coloured circles that roughly represent the city they are part of. A more subtle example, of course, is in the picture of the day at the top of this post. The lights cluster around the top of the leaves like fireflies, obviously part of a cityscape but at the same time abstract. The extreme out of focus image is a blurred version of the picture on the left. A view over Sheffield from Pitsmoor, looking up Netherthorpe Road and up to the university. Even when the buildings are focussed (roughly; I'm still practicing) the lights take on the shape of the lens's aperture. I try to incorporate some foreground focus wh...

In which I complain that coding standards are a waste of time

Just kidding. I'm not going to rail against coding standards. No, I'm going to rail against the absolute and dictatorial enforcement of coding style guidelines, to the point where a single misplaced curly bracket can fail the code review of a thousand line project before it's even started. I'm going to rail against the fact that many people these days don't actually know that coding style guidelines and coding standards are not the same thing. Coding style guidelines are not coding standards. Coding standards are rules on how to construct software. Rules that have practical and defined benefits. Rules than can be proven to assist in the structured and correct building of code. For example: Do not perform database access in the constructor. All database access should use the framework's DAL. Do not rely on complex instantiation instructions; provide a factory method. Do not inherit from a class in a different module or library; only encapsulate. Avoid sin...

DeCSS on Ubuntu 9.10 and later

It used to be the case that enabling DVD playback on Ubuntu was a case of installing ubuntu-restricted-extras and that was that. Unfortunately DMCA nonsense in the US has buggered that up for all of us and so now there's an additional step. So, without further ado, here are the commands that need to be run at a command line: sudo apt-get install libdvdread4 sudo /usr/share/doc/libdvdread4/install-css.sh Voila! DVD playback a-la Ubuntu.