VPN(8)

NAME
vpn - Virtual private networking with pppd and ssh

SYNOPSIS
vpn peer_name cmd

DESCRIPTION
vpn is a shell script that allows for easy management of multiple virtual private network connections using ppp over an ssh connection.

HOW-TO
Setting up a vpn is pretty simple here, just follow these simple steps:

1   Create an RSA key with no password for establishing the ssh connection with ssh-keygen(1) and make sure the account on the other side has this key in its

2   Create the site-specific configuration (see FILES below). The examples should get you started.

3   Try it out with vpn <peername> authtest to make sure it can connect and all that.

4   Connect it up with vpn <peername> start

FILES

/usr/pkg/etc/vpn
    The directory containing all of the configuration files.

/usr/pkg/etc/vpn/global.conf
    The global site configuration file. Any parts of this can be overridden by peer configuration.

/usr/pkg/etc/vpn/peers
    This directory contains indivual peer configurations. One of these must be present for each peer to which you will be connecting.

BUGS
The stop command doesn't have a very good way to figure out the pid of the pppd that's running. Ideally, it should be able to just record the pid when it establishes a connecion, but pppd doesn't seem to want to tell me that.

SECURITY CONSIDERATIONS
Unlike most VPN type things, this one requires a real account on both ends. It also requires passwordless authentication so the session can be maintained without user intervention (not to mention it'd be very difficult to get a password into the application since it's bound to a pty).