MISE EN OEUVRE D'UN SERVEUR PPTP SOUS LINUX AVEC POPTOP PPTPD
Testé sur REDHAT LINUX 8, mais devrait fonctionner de la même manière sur les distributions REDHAT LIKE comme FEDORA.
Pré requis :
-Un abonnement Internet avec une adresse IP fixe ( FREE propose une ip fixe gratuite, WANADOO propose une option payante pour ce service ).
Cette connexion doit être lancé au démarrage avant de démarrer POPTOP.
Si vous avez un routeur Internet, il faudra rediriger des ports vers le serveur LINUX ( cela sera expliqué plus loin ).
-Un PC fonctionnant sous Linux installé et opérant comme passerelle Internet ( cf. schéma ).
Schéma du réseau :
Mise en oeuvre :
Installation
Allez sur le site du projet POPTOP
Allez dans la zone de téléchargement ( Downloads ) et récupérez les rpms suivants :
dkms-2.0.2-1.noarch.rpm
kernel_ppp_mppe-0.0.4-2dkms.noarch.rpm
ppp-2.4.3-0.cvs_20040527.1.i386.rpm ( pptpd nécessite un ppp version 2.4 minimum )
pptpd-1.2.1-1.i386.rpm
En cas de disparition des liens, voici les RPMS que j'ai utilisé :
dkms
kernel_ppp_mppe
ppp
pptpd
Avant d'installer ces paquets, il vous faut installer le paquet kernel-source correspondant à votre noyau actuel ( uname -r ) et créez un lien /usr/src/linux pointant sur ces sources. Ils seront utiles pour la création du module kernel_ppp_mppe.
Il vous faudra aussi la commande patch si elle n’a pas été installée avec votre système.
Installez les paquets dans l'ordre que j'ai donné ci-dessus à cause des dépendances l'un de l'autre. Utilisez la commande rpm -Uvh nom_du_paquet.rpm pour ceci car il y a de fortes chances que vous ayez déjà un paquet ppp sur la machine.
La création du module du noyau est assistée par dkms et ne devrait pas poser de problèmes.
Une fois les paquets installés, vérifiez avec la commande ntsysv que pptp sera démarré à chaque démarrage du PC.
Configuration
Il vous reste à paramétrer le logiciel POPTOP avant de le lancer.
J'ai modifié les dernières lignes du fichier /etc/pptpd.conf comme ceci ( je n'ai pas retouché le reste du fichier )
# commenté car non utilisé, j'utilise le proxyarp dans la suite de la conf
#localip 192.168.1.9
# Adresses IP attribuées par le serveur pour les clients qui se connectent, ici max 5 clients
remoteip 192.168.1.10-14
Modifier ensuite les deux fichiers suivants situés dans /etc/ppp
- fichier options.pptpd ( j'ai enlevé tous les commentaires, pour la doc, mais en pratique je vous conseille de les conserver, cela peut être utile )
refuse-pap
refuse-chap
refuse-mschap
require-mschap-v2
require-mppe-128
proxyarp
lock
nobsdcomp
- fichier chap-secrets contenant une entrée par utilisateur.
utilisateur1 pptpd motdepasse *
L'étoile indique que l'adresse ip sera attribuée par le serveur dynamiquement. Si vous voulez une ip fixe, vous pouvez la renseigner ici.
Ci-dessous les fichiers que j'utilise :
pptpd.conf
options.pptpd
chap-secrets
Démarrer le service pptpd ( service pptpd start ), le serveur est actif.
Pour visualiser les connexions, vous pouvez vous référer aux fichiers /var/log/messages et /var/log/secure qui affichent des infos intéressantes quand les clients se connectent.
Ouverture et redirection de ports
Si votre machine LINUX est le firewall de votre réseau, il faut permettre l’accès pptp sur l’interface internet.
Pour ce faire il faut autoriser le port 1723 en tcp et le protocole GRE. Voici les commandes à taper :
iptables -A INPUT -p tcp --dport 1723 -j ACCEPT
iptables -A INPUT -p gre -j ACCEPT
Si votre machine LINUX est derrière un routeur ADSL ou un firewall, vous avez deux possibilités.
1- Votre routeur accepte une machine en DMZ, et il suffit de lui donner l’adresse ip de votre machine LINUX. Ceci permet de rediriger tout le traffic entrant sur l’ip publique du routeur vers votre station LINUX.
2- Votre routeur n’a pas cette simplification, et il vous faut alors rediriger le traffic tcp sur le port 1723 et le protocole GRE vers l’adresse ip de votre LINUX.
Pour la gestion des règle du firewall, il est bon de savoir que le pptpd crée une nouvelle interface ppp à chaque client connecté ( ppp0, ppp1, ppp2, etc...).
Vous pouvez donc gérer ces multiples interfaces en utilisant dans vos règles iptables la dénomination ppp+ qui veut dire, ppp_peu_importe_la_valeur.
Attention toutefois dans le cas où vous êtes connecté en ADSL via modem ethernet, car votre connexion utilise ppp0.
Pensez-y et vérrouillez le traffic de ppp0 vers l’interface LAN avant d’autoriser un traffic quelconque avec une commande utilisant ppp+.
Tests :
Paramétrez un client pptp ( par exemple comme le XP donné en exemple ) et connectez le à votre réseau.
Sur ce poste une fois connecté, passez en ligne de commandes et vérifiez que tout fonctionne.
la commande ipconfig vous montrera l'adresse ip privée attribuée par le serveur POPTOP.
la commande ping 192.168.1.10 testera la connectivité avec le serveur Interne que vous voulez joindre.
Aucun commentaire:
Enregistrer un commentaire