Great Linux Tools

TuxLast Thursday I decided to work from home, to avoid some traffic by my office, combined with Burton having a grooming appointment.  After dropping Burton off at the groomers, I popped open my laptop and went digging through my bag to find the AC adapter, only to realize that I had left it at work.  This posed a little bit of a problem, seeing that the battery would run for about 2 hours and then die--just a tad bit short of the full day I was planning on putting in.

On my desktop at home, I run Windows XP64, and in the past, I had attempted to install Cisco's VPN client, since that's how I connect remotely to work. After a little bit of research I realized that Cisco had no support for either XP64 or Vista64, so I was pretty much out of luck VPNing to work from my desktop at home. Now the problem on Thursday was that I had limited amount of battery time on my laptop and no way to connect to work outside of my laptop--at least on Windows. I rummaged around in my big box of parts and found an old hard-drive and external USB enclosure, plugged it into my desktop, and booted up a copy of kubuntu. In about 30 minutes, I had a brand new environment set up on a removable drive (so I didn't have to take my existing Windows drives and dual boot or repartition), was connected to work via VPN and coding away on a machine at the office remotely. Outside of kubuntu (which is a great distro), the other two key applications that were lifesavers were:

VPNC - This is a great VPN tool for anyone who needs to connect to a CISCO VPN concentrator, but who wants to avoid all the hassles of the official Cisco vpn client. In the past, I've struggled with the Cisco VPN client, most notably when updating kernels, because when doing so the client insists that it needs to be rebuilt, and then it will invariably have compilation errors. This either locks you into an out of date kernel, or you need to go scouring the Internet for an updated copy of the code. With VPNC, all those problems seem to go away. You no longer have to compile anything to connect to work via VPN, as VPNC is readily available in most distributions already packaged and ready, and is also therefore guaranteed to work with whatever the latest kernel version tends to be.

rdesktop - This is the definitive way to connect remotely to Windows machines from a Linux environment. I've been using rdesktop for quite a few years now, and it is epitome of the *nix tool--it does one thing, it does it very well, and it's highly specialized. The most basic usage from the command line accepts the name of the machine that you want to connect to, and to add additional connection parameters, you just need to append command line switches. It's lightweight, fast, and has near complete RDP support, so those times when you do have to connect to Windows, it's a great experience.

The nice thing about both of these tools is that if you're a command line warrior, you will be right at home out of the box, and if you are more comfortable in a GUI environment, there are assorted tools that will put a nice looking frontend up for you.

I've been running Linux daily at work for nearly three years now, and with every day that passes, it is becoming more and more viable in a professional Windows/MS Office environment, thanks in large part to software like VPNC and rdesktop.

Comments

vpnc ftw!

I love me some vpnc, definitely. I login from a VirtualBox image running ubuntu, but otherwise sounds pretty similar to my setup. I'm actually far more willing to login at some random time if need be, since no dual booting is needed, and I haven't trashed my WinX network stack with Cisco's VPN stuff.