Debian pptpd HOWTO

by James Cameron

How to install a PPTP server on Debian GNU/Linux. We last tested this with Debian packages pptpd_1.4.0-10, and pptp-linux-1.8.0-1.


Installing the Server Program

Install the pptpd package from the Debian Project:

# apt install pptpd


Configure IP Address Range

Edit the file /etc/pptpd.conf for the IP address range, for example:


Note: see pptpd.conf(5) for more details on the other options.

Note: you will need to restart pptpd to make changes to /etc/pptpd.conf effective:

# invoke-rc.d pptpd restart


Adding Users

Configure /etc/ppp/chap-secrets for the accounts, for example:

# echo "username pptpd password *" >> /etc/ppp/chap-secrets

Note: this method has all the usernames in one file. There are other ways, including authentication using Radius, or using Samba. Check the mailing list (subscribe, archives).

Note: you do not need to restart pptpd, a change to chap-secrets is effective for the next connection.


Attempt a connection from a client. On successful connection, a new interface should be created (e.g. ppp0), and the remote IP address of the interface should be pingable. If so, the rest of your problems are likely to be routing.

Note: if you need to set up a Debian test client, see the PPTP Client Debian HOWTO. The test client cannot be on the same host, it doesn't work.

To diagnose faults, enable the options debug dump in /etc/ppp/pptpd-options. The change is effective on the next connection. The debug output goes to /var/log/debug, and the dump output and usual output to /var/log/messages.


If you need to adopt a source code change made in GIT after the version you are running, see our Applying patches to Debian pptpd page.


If you have comments on this document, please send them to the author at quozl at laptop dot org. But if you need help, use the mailing list (subscribe, archives) so that we can share the load.


2016-12-27 Reverify against current Debian packages.
2007-11-12 Add links to mailing lists.
2006-04-06 Add warning about /etc/ppp/ip-up.d/exim4.
2005-11-16 Skip MPPE kernel module if reader is using kernel 2.6.15-rc1 or later.
2005-08-08 Add patching reference.
2004-12-23 First draft, tested using Sarge.