There are other giudes to do this, but none seemed complete, I had to get the iptables rules from the debug document on poptop.org. I guess they are not always needed.
I started with a clean install of lenny from http://rackspacecloud.com.
# aptitude install pptpd
Edit pptpd config files
You need to set the private ip of the server and the ip range for clients, the 2 lines are added to this file:
Set them to whatever private (or public) ip addressing you want. You could use IP addresses currently available in your network, if you do this you will not need to add the iptables rules for natting later in this guide.
Set ms-wins and ms-dns to the name server the server you are currently working on is using (look in reolv.conf).
Or as I did install dnsmasq on the server and run it as a chaching dns server
# aptitude install dnsmasq
And then set ms-dns and ms-wins to 192.168.0.1 (or the localip you set)
Setup users and passwords to connect the pptp server
username pptpd somepassword *
Turn on IP Forwarding
# echo 1 > /proc/sys/net/ipv4/ip_forward
Set the change permanantly in /etc/sysctl.conf by uncommenting the line:
Turn on NATing
If you have created a new private network for your pptpd server, you probably have, you need to add a rule to iptables.
# iptables --table nat --append POSTROUTING
--out-interface eth0 --jump MASQUERADE
But this rule needs be persistant so we need to create a script to run when the interface starts up
# iptables-save > /etc/iptables.conf
Create a new file: /etc/network/if-up.d/iptables and paste in the following
/sbin/iptables-restore < /etc/iptables.conf
Set it to executable
# chmod 755 /etc/network/if-up.d/iptables
All Done!. Just startup pptpd
# /etc/init.d/pptpd start