Lots of e-smith/SME users want to connect networks. Between offices, between offices and homes, even between groups of homes. IPSec has been the preferred means but it has issues with the dynamic IP addresses many folks have. PPTP has been problematic for many of late as well as being a bit complicated to set up two-way.
So here's a 3rd alternative: OpenVPN.
From it's blurb: "OpenVPN is an easy-to-use, robust, and highly configurable VPN (Virtual Private Network) daemon which can be used to securely link two or more private networks using an encrypted tunnel over the internet"
Among it's features are:
* tunnel any IP subnetwork or virtual ethernet adapter over a single UDP or TCP port,
* create cross-platform tunnels between any of the operating systems supported by OpenVPN including Linux, Solaris, OpenBSD, FreeBSD, NetBSD, Mac OS X, and Windows 2000/XP,
* choose between static-key based conventional encryption or certificate-based public key encryption,
* use static, pre-shared keys or TLS-based dynamic key exchange,
* use real-time adaptive link compression and traffic-shaping to manage link bandwidth utilization,
* tunnel networks whose public endpoints are dynamic such as DHCP or dial-in clients,
* tunnel networks through connection-oriented stateful firewalls without having to use explicit firewall rules, tunnel networks over NAT, and create secure ethernet bridges using virtual tap devices.
(more at
http://openvpn.sourceforge.net)
Basically it's a flexible, easier way of connecting LANs to each other. It works through NAT's, traverses firewalls, handles dynamic IP addresses, supports compression & traffic shaping, and can authenticate against lots of standard services.
Technically it is built on a solid foundation, doesn't require recompiling the kernel or modifying the TCP stack, and is easily extendable. It's GPL'ed and has excellent documentation.
What I'd like to hear is other folks experiences with it. Also to encourage someone to write a panel integrating this into e-smith/SME's template architecture, bundle it all up as a contributed rpm.