I've been looking for an effective VPN solution for my home for so many months I've
lost track. My goals were simple. From work and anywhere else with an Internet connection,
I wanted to access various resources on my home network occasionally: securely,
easily, quickly, and without a lot of fuss.
I tried setting up a VPN using Windows 2003. After pulling out far too much hair,
I gave up for a couple of reasons:
- It wasn't easy to configure. Given I wasn't patient enough to read through every
best practice document, etc., I considered my implementation fragile at best.
- It didn't function when trying to connect from work. Probably some firewall was
getting in my way
- It didn't work well with my Linksys wireless router consistently (blamed on the
router, not Windows)
I looked for hardware options. Oh, there are plenty. Especially
if you have a lot of money. The best options were many hundreds
of dollars. The best option I encountered came from US Robotics actually, the
USR8200. It was extremely capable, but averaged around $300 retail. It was
however available at Sam's online which almost pushed me over the edge (as they
have a buy online, return to a store policy).
I couldn't find any other decent options that were reliable and inexpensive. I gave
up. Several times.

One day I stumbled across WinSSHD
however from Bitvise. I downloaded
a copy after reading quite a lot both in the forums and the various FAQs. It seemed
to offer everything I wanted. This is a brief review and overview of the functionality.
Check out their website for more information though as I try to capture just the
basics of what got me interested and excited about their product.
- Inexpensive: $39 for home users
- Easy to set up.
- Secure
- Little fuss

WinSSHD runs as a Windows service, so it's always available. It's configured from
their control panel (shown above).
I said that WinSSHD is easy. That's not entirely true. It's easy to get it running,
but there are many many options that you'll likely want to configure that it can
quickly become overwhelming. I started by installing it in a
virtual machine so as to not mess up my primary 2003 server. One thing that
I would warn you about: it's not configured "secure" by default. It seems to default
to a mode where any authenticated Windows user can connect to the software, which
I was unhappy with and immediately deactivated. By default, the software shouldn't
allow anyone to connect without specifically making that choice. Bitvise can make
that an easy wizard step after installation, but I believe it should be a conscious
choice on the part of the user. Default secure.
The WinSSHD settings interface can be intimidating.

WinSSHD allows the administrator to use either Windows accounts and groups or 'virtual'
users and groups. I opted for the latter in my installation.
In addition to standard user-name/password authentication, WinSSHD can be configured
to require a specific certificate in order to logon to the system. I too am using
that feature, which further secures the system. I've imported the a public key from
my laptop into the local WinSSHD server and require that it be presented, along
with the user name and password I've assigned before allowing any user to make a
connection. This is very similar to what I wanted from a VPN connection.
The system can also be configured to refuse IP addresses after a set number of failed
attempts.
Through port mapping and tunneling (which often is done through their free corresponding
client application, Tunnelier),
I can use a variety of services on my home network from anywhere! Through a single
port (often port 22), virtually an unlimted number of 'virtual' ports can be established
to remote servers and services all securely! As an example, I was on a business
trip recently connected back to my home network, remote desktoped to one of my machines
downloading some files I wanted to have available when I returned today (as my connection
at the hotel was slower than the connection I have at home). Along with an easy
one click remote desktop button (it connects easily to the machine hosting WinSSHD,
but through port mapping any machine can be a target for remote desktop), the software
also has a nice file browser for uploading and downloading files securely.
Although the server can prevent tunneling, the actual tunneling configuration happens
on the client. It's a bit weird at first, but after getting one working, it's easy
to get many services running. The weird part is that to remote desktop to a remote
client machine on your private network accessed by WinSSHD and Tunnelier, you'll
end up connecting to localhost (127.0.0.1 and some port you choose). Tunnelier maps
that port and redirects the traffic down to the WinSSHD .server, which in turn sends
it to the final destination (which doesn't necessarily need to be the same machine
as is hosting WinSSHD. I've setup a connection using VNC to my Mac mini for example.
I usually don't find too much shareware that I want to buy, but this is a must buy
for me. Once the trial runs it's course, I'm definitely buying
a copy of WinSSHD. I'm glad I can stop looking for a VPN solution for Windows.