dimanche 12 avril 2009

PARAMETRAGE DU CLIENT PPTP SUR WINDOWS XP

PARAMETRAGE DU CLIENT PPTP SUR WINDOWS XP



Cliquez sur "Démarrer" , puis sur "Paramètres" et "Panneau de configuration".

Double cliquez sur l'icône suivante et vous obtenez la fenêtre de paramétrage de XP.
Sur la partie gauche de la fenêtre; cliquez sur "Créer une nouvelle connexion".

L'assistant de connexion réseau se lance.

Cliquez sur suivant

Choisissez "Connexion au réseau d'entreprise et cliquez sur suivant

Choisissez "Connexion réseau privé virtuel et cliquez sur suivant

Entrez le nom que voous voulez donner à la connexion et cliquez sur suivant

Entrez l'adresse ip internet du serveur PPTP et cliquez sur suivant

Choisissez ici la valeur qui vous va le mieux et cliquez sur suivant

Cliquez sur Terminer et la fenêtre de connexion s'ouvre

Entrez les paramètres de connexion donnés par l'administrateur du serveur pptp et complétez en cochant "Enregistrer ce nom d'utilisateur et ce mot de passe"

Lancez la connexion, et si tout se passe comme prévu, vous êtes connecté.

Modification possible suivant l'usage du tunnel.

Si vous vous connectez au tunnel pptp la passerelle par défaut devient la passerelle du tunnel.
Si vous voulez naviguer sur Internet pendant que vous êtes connecté au tunnel, cela devient génant.

Pour corriger ce problème, Editez les propriétés de la connexion pptp

Ouvrez les paramètres du "Protocole Internet (TCP/IP)" et cliquez sur "Avancé..."

Décochez "Utiliser la passerelle par défaut pour le réseau distant" et validez tous les écrans.

La modification sera prise en compte la prochaine fois que vous lancerez cette connexion pptp.

Client PPTP LINUX


Client PPTP LINUX





INFORMATIONS GENERALES :



Dans ce document je considère que vous avez les informations suivantes



Adresse ip du serveur pptpd distant, ici 192.168.110.254

Adresse du réseau local, ici 192.168.1.0/24 ( 255.255.255.0 )

Adresse du réseau distant, ici 192.168.2.0/24 ( 255.255.255.0 )

Login du tunnel pptpd, ici laurent

Mot de passe de ce login, ici password





INSTALLATION :



Télécharger le client pptp ici : http://pptpclient.sourceforge.net/



Installer le logiciel en fonction de votre distrib.

Pour ma part j’ai fait ceci sur ma centos :



J’ai téléchargé pptp-1.6.0-1.src.rpm car il n’y avais pas de rpm pour ma distrib.

J’ai ensuite créé le rpm et je l’ai installé :

rpmbuild –rebuild pptp-1.6.0-1.src.rpm

rpm –ivh /usr/src/redhat/RPMS/i386/pptp-1.6.0-1.i386.rpm





PARAMETRAGE AVEC WEBMIN :



J’ai utilisé webmin afin de paramétrer ma connexion et cela s’est fait sans problèmes.



Vous pouvez récupérer webmin ici : http://www.webmin.com



Connectez vous à votre machine client pptp sur son interface webmin





Cliquez sur l’icône « Réseau »



Puis sur « PPTP VPN Client » et « Add a new PPTP VPN tunnel »

Entrez les informations correspondantes à votre tunnel




Cliquez sur « Sauvegarder »



Dans la page du module « PPTP VPN Client », cliquez sur « connect from : » tunnel, et si tout se passe bien, le bouton se modifiera en « disconnect from : »





Si vous voulez lancer le tunnel au boot du pc, modifiez la dernière ligne comme ci-dessus.

MISE EN OEUVRE D'UN SERVEUR PPTP SOUS LINUX AVEC POPTOP PPTPD




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.

vendredi 10 avril 2009

Linux setup default gateway with route command

Q. How do I setup default gateway with a route command?

A. route command show and/or manipulate the IP routing table under Linux and UNIX oses.

Route manipulates the kernel's IP routing tables. Its primary use is to set up static routes to specific hosts or networks via an interface after it has been configured with the ifconfig program. When the add or del options are used, route modifies the routing tables. Without these options, route displays the current contents of the routing tables.
Display default route

Following three-command display the current routing table:
# route
Output:

Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.1.0 * 255.255.255.0 U 0 0 0 ra0
default dsl-router 0.0.0.0 UG 0 0 0 ra0

$ /sbin/route
Output:

Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
191.255.255.0 * 255.255.255.0 U 0 0 0 eth0
169.254.0.0 * 255.255.0.0 U 0 0 0 eth0
default 191.255.255.1 0.0.0.0 UG 0 0 0 eth0

You can use -n option, to display numerical addresses instead of trying to determine symbolic host names (via dns or /etc/hosts file). This is useful if you are trying to determine why the route to your nameserver has vanished.$ /sbin/route -nOutput:

Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
191.255.255.0 0.0.0.0 255.255.255.0 U 0 0 0 venet0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 venet0
0.0.0.0 191.255.255.1 0.0.0.0 UG 0 0 0 venet0

Please note that a destionation entry 0.0.0.0 (or default) is the default gatway. In above example 191.255.255.1 is a default gatway.
Add / setup a new route

The syntax is as follows:
route add default gw {IP-ADDRESS} {INTERFACE-NAME}

Where,

* IP-ADDRESS: Specify router IP address
* INTERFACE-NAME: Specify interface name such as eth0

For example if your router IP address is 192.168.1.254 type the following command as the root user:
# route add default gw 192.168.1.254 eth0OR use hostname such as dsl-router:# route add default gw dsl-router eth0
Setting route using GUI tools/command under Linux

If you find above command hard to use, consider using GUI tools. If your are using Red Hat/CentOS/Fedora core Linux type following command:# redhat-config-networkOR If you are using other Linux distribution use command:# network-admin