pptp client
 overview
 license
 getting started
 features
 try it
 download
 links
 documentation 
 index
 debian
 fedora core 1
 fedora core 2
 fedora core 3
 fedora core 4
 fedora core 5
 fedora core 6
 gentoo
 knoppix
 mandrake 9.0
 mandrake 10.0
 mandrake 10.1
 netbsd
 red hat 9
 red hat 8.0
 red hat 7.3
 suse 10.0
 suse 9.2
 suse 9.1
 suse 8.2
 ubuntu
 diagnosis
 support faq
 diagrams
 routing
 security
team
 developers
 cvs
 contact us
 

PPTP Client


Fedora Core 3 HOWTO

by James Cameron
27th October 2005

This describes how to install PPTP Client on a Fedora Core 3 system. It was based on mailing list postings and has not been tested by the release engineer yet.

The process involves installing MPPE, then PPTP followed by configuration.


Installation

  1. install MPPE capability:

    MPPE is Microsoft Point-To-Point Encryption, and is described in RFC3078. You will need to install it if your PPTP Server requires it, and if your kernel is before 2.6.15. Microsoft Windows VPN Server requires MPPE. If you do not require MPPE, skip this step.

    If you can upgrade to 2.6.15 or later, do so, then skip the remainder of this step.

    Our thanks to Matt Domsch of Dell for his contribution to this step using the Dynamic Kernel Module Support.

    1. install the kernel-source rpm for your kernel, for example:

      # yum install kernel-source-2.6.12

      Note: if you're using update kernel version 2.6.12-1.1372_FC3 in particular, install the kernel-devel package (or kernel-smp-devel if you are running an SMP kernel):

      # yum install kernel-devel-2.6.12

      This is because that one update kernel was packaged in the Fedora Core 4 way by mistake.

    2. check that your system is running the kernel corresponding to the package requested in the previous step. Use the uname command to display the version of the running kernel, for example:

      # uname -r

      If the version shown is not the version installed in the previous step, reboot into that kernel. Otherwise the dkms build below may fail, because the kernel package for the current kernel may not be installed.

    3. download the dkms rpm (mirror link) and install it:

      # rpm --install dkms-2.0.5-1.noarch.rpm

    4. download the kernel_ppp_mppe dkms rpm (mirror link) and install it:

      # rpm --install kernel_ppp_mppe-0.0.5-2dkms.noarch.rpm

    5. test that the MPPE module loads on request:

      # modprobe ppp-compress-18 && echo success

      Note: this may fail if the ppp_generic module was already loaded when the kernel_ppp_mppe package was installed, as the original module is replaced on disk but not in memory. Check this by unloading the module, e.g. using "rmmod ppp_generic" or rebooting. Then repeat the modprobe.

    Note: if you wish to build the kernel from source, see our really complex instructions.

  2. download the PPTP client program pptp rpm (mirror link) and install it like this:

    # rpm --install pptp-1.6.0-1.i386.rpm

  3. verify that you have dependencies installed for the packages in the next step; (usually this is only a problem if you did a custom install):

    # yum install libxml libglade

    These packages are also available on the distribution media.

  4. download the configuration program interpreter php-pcntl rpm (mirror link) and install it like this:

    # rpm --install php-pcntl-4.3.10-1.i386.rpm

  5. download the configuration program GTK+ interface php-gtk-pcntl rpm (mirror link) and install it like this:

    # rpm --install php-gtk-pcntl-1.0.1-2.i386.rpm

  6. download the configuration program pptpconfig rpm (mirror link) and install it like this:

    # rpm --install pptpconfig-20040722-6.noarch.rpm

Configuration

  1. obtain from your PPTP Server administrator:

    • the IP address or host name of the server,
    • the authentication domain name, (e.g. WORKGROUP),
    • the username you are to use,
    • the password you are to use,
    • whether encryption is required.

  2. run pptpconfig as root, and a window should appear,

  3. enter the server, domain, username and password into the Server tab,

  4. if you decided in Installation step 1 above that you would need MPPE, and if your administrator says encryption is required, then on the Encryption tab, click on Require Microsoft Point-to-Point Encryption (MPPE),

  5. click on Add, and the tunnel will appear in the list,

  6. click on the tunnel to select it, click on Start, and a window will appear with the tunnel connection log and status,

  7. if the connection fails, you will need to gather more information, so on the Miscellaneous tab, click on Enable connection debugging facilities, click Update, try Start again, then look at the Diagnosis HOWTO for whatever error is displayed.

  8. if the connection succeeded, you can try the Ping test button. If the ping fails, you should try to find out why before proceeding. If the ping works, then the tunnel is active and you may now work on routing.

  9. decide whether all your network traffic should go via the tunnel or not. If so, Stop the tunnel, select it again, then on the Routing tab, click on All to Tunnel, then click Update and try Start again. Now try to access the network behind the server.

  10. on the other hand, if only some of your network traffic should go via the tunnel, you will need to obtain from the server administrator or folk lore a series of network routes to enter. Stop the tunnel, select it again, then click on either Client to LAN or LAN to LAN on the Routing tab, use the Edit Network Routes button to enter the routes one by one, and then try Start again. Now try to access the network behind the server.

    For further help with Routing, read our Routing HOWTO.

Diagnosing Problems

If you have problems with the tunnel and need to ask for help, start pppd with complete logging:

# script pptp.log
Script started, file is pptp.log
# pppd call tunnelname dump debug logfd 2 nodetach
# exit
Script done, file is pptp.log

where tunnelname is the name of the tunnel you created in the configuration program. For more detail, see enabling debug logging.

This will give you a file pptp.log that you can use to search for known solutions in the Diagnosis HOWTO or attach to an e-mail to the mailing list.


Comments

If you have comments on this document, please send them to the author at james.cameron at hp.com. But if you need help, use the mailing list so that we can share the load.

ChangeLog

DateChange
2005-10-27 Add kernel version check and possibility of already loaded ppp_generic module, per the feedback from Paul Howarth.
2005-09-08 Deprecate install of kernel-devel as it only affected one kernel.

2005-07-29 Add install of kernel-devel if using a recent kernel.

2005-02-28 Add step to obtain dependent packages in case of custom install that omitted things, following feedback from Charles H. Fisher on the mailing list. Upgrade versions following feedback from Paul Howarth.

2004-11-15 Fedora Core 3 has MPPE in PPP already, so we removed the upgrade of PPP, as the one Paul Howarth made has only a "few extra non-critical options".
2004-11-10 First draft.