10.7. Connecting Linux Clients to a PPTP Server

You want to connect your Linux PC to a Windows or Linux PPTP server.

No problem, just install the pptp client, and away you go. On Debian:

	# aptitude install pptp-linux

On Fedora:

	# yum install pptp

Your /etc/ppp/options.pptp file should have these options:

	##/etc/ppp/options.pptp
	lock
	noauth
	refuse-eap
	refuse-chap
	refuse-mschap
	nobsdcomp
	nodeflate
	require-mppe-128

Then, enter your password and login in /etc/ppp/chap-secrets:

	##/etc/ppp/chap-secrets
	# client    server    secret    IP addresses
	foober  server1    tuffpassword  *

If you are authenticating to a Windows RAS server, you'll need the domain name:

	alrac.net\\foober server1 tuffpassword *

Next, create a /etc/ppp/peers/$TUNNEL file. In this example, the tunnel name is server1:

	##/etc/ppp/peers/server1
	pty "pptp rasserver --nolaunchpppd"
	name alrac.net\\foober
	remotename server1
	require-mppe-128
	file /etc/ppp/options.pptp
	ipparam server1

Using the venerable old pon/poff commands starts and stops the tunnel manually:

	$ pon server1
	$ poff server1

The pon command with these options makes it run in the background:

	$ pon provider updetach && pon server1 updetach

You can alias this to save a bit of typing:

	$ alias vpn1on='pon provider updetach && pon server1 updetach'
	$ alias vpn1off='poff server1'

Now, typing vpn1 will get you connected, and vpn1off closes the connection.

All Linux window managers and desktops have ways to attach a custom command to a menu icon so you can start and stop your VPN connection with a mouse click.

You can also download a nice graphical client, pptpconfig, from PPTP Client (http://pptpclient.sourceforge.net). Another good one is KVpnc (http://home.gna.org/kvpnc/en/), a KDE client for all VPNs.