Connexion client VPN en PPTP

Bonjour,

Je tente de me connecter au VPN de mon université en PPTP depuis une Debian 5 Lenny, sans succès pour l’instant, mais je ne dois pas en être bien loin car j’arrive à m’authentifier sur le serveur. Pour simplifier et pour que quiconque puisse faire des tests s’il le désire, je propose de prendre en exemple le VPN gratuit Itshidden.

Pour l’instant, j’ai suivi à la lettre les étapes préconisées sur le how-to du Client PPTP pour Linux Debian (voir ici). J’ai donc procédé aux étapes suivantes:

[ul]
[li] Client pptp-linux installé[/li]
[li] Fichiers options.pptp, chap-secrets, et Itshidden (nom du $TUNNEL dans le how-to) configurés comme indiqué. [/li][/ul]

Maintenant, la commande

renvoie

Using interface ppp1 Connect: ppp1 <--> /dev/pts/3 CHAP authentication succeeded MPPE 128-bit stateless compression enabled Cannot determine ethernet address for proxy ARP local IP address 192.168.2.94 remote IP address 192.168.2.1

Tout semble donc bien se passer jusqu’à ce fichu “Cannot determine ethernet address for proxy ARP”, dont je ne comprend guère le sens.

A toutes fin utiles, voici les détailes que livre la commande avec les paramètres debug dump logfd 2 nodetach

[code]# pon Itshidden debug dump logfd 2 nodetach
pppd options in effect:
debug # (from command line)
nodetach # (from command line)
logfd 2 # (from command line)
dump # (from command line)
noauth # (from /etc/ppp/options.pptp)
refuse-pap # (from /etc/ppp/options.pptp)
refuse-chap # (from /etc/ppp/options.pptp)
refuse-mschap # (from /etc/ppp/options.pptp)
refuse-eap # (from /etc/ppp/options.pptp)
name endofmay # (from /etc/ppp/peers/Itshidden)
remotename PPTP # (from /etc/ppp/peers/Itshidden)
# (from /etc/ppp/options.pptp)
pty pptp vpn.itshidden.com --nolaunchpppd # (from /etc/ppp/peers/Itshidden)
crtscts # (from /etc/ppp/options)
# (from /etc/ppp/options)
asyncmap 0 # (from /etc/ppp/options)
lcp-echo-failure 4 # (from /etc/ppp/options)
lcp-echo-interval 30 # (from /etc/ppp/options)
hide-password # (from /etc/ppp/options)
ipparam Itshidden # (from /etc/ppp/peers/Itshidden)
proxyarp # (from /etc/ppp/options)
nobsdcomp # (from /etc/ppp/options.pptp)
nodeflate # (from /etc/ppp/options.pptp)
require-mppe-128 # (from /etc/ppp/peers/Itshidden)
noipx # (from /etc/ppp/options)
using channel 7
Using interface ppp0
Connect: ppp0 <–> /dev/pts/0
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xa2901439> ]
rcvd [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xef8da57b> ]
sent [LCP ConfAck id=0x1 <asyncmap 0x0> <magic 0xef8da57b> ]
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xa2901439> ]
rcvd [LCP ConfAck id=0x1 <asyncmap 0x0> <magic 0xa2901439> ]
sent [LCP EchoReq id=0x0 magic=0xa2901439]
rcvd [CHAP Challenge id=0xc2 , name = “pptpd”]
sent [CHAP Response id=0xc2 <0454e156e12d2350cbe3ea518c2f4a9b00000000000000000b646e4c4c5cfff07f5b7b4475deb73058e429d5ed3fcbc400>, name = “endofmay”]
rcvd [LCP ConfReq id=0x2 <asyncmap 0x0> <magic 0xac06de34> ]
sent [LCP ConfReq id=0x2 <asyncmap 0x0> <magic 0xed2bede9> ]
sent [LCP ConfAck id=0x2 <asyncmap 0x0> <magic 0xac06de34> ]
rcvd [LCP ConfAck id=0x2 <asyncmap 0x0> <magic 0xed2bede9> ]
sent [LCP EchoReq id=0x0 magic=0xed2bede9]
rcvd [CHAP Challenge id=0x37 <86fc69fe12fb3c5e1bb8f3bb94c454ec>, name = “pptpd”]
sent [CHAP Response id=0x37 <710af0af468d44fb05e47826cd2d6a3f000000000000000001217a4cea01665ab64cf61dccc5869faf774f2ce00c1e0300>, name = “endofmay”]
rcvd [LCP EchoRep id=0x0 magic=0xac06de34]
rcvd [CHAP Success id=0x37 “S=B0C3AB8B0922BFBD8BCEBEDF440326E2015248F6”]
CHAP authentication succeeded
sent [CCP ConfReq id=0x1 <mppe +H -M +S -L -D -C>]
rcvd [CCP ConfReq id=0x1 <mppe +H -M +S -L -D -C>]
sent [CCP ConfAck id=0x1 <mppe +H -M +S -L -D -C>]
rcvd [CCP ConfAck id=0x1 <mppe +H -M +S -L -D -C>]
MPPE 128-bit stateless compression enabled
sent [IPCP ConfReq id=0x1 <compress VJ 0f 01> <addr 0.0.0.0>]
rcvd [IPCP ConfReq id=0x1 <addr 192.168.1.1>]
sent [IPCP ConfAck id=0x1 <addr 192.168.1.1>]
rcvd [IPCP ConfRej id=0x1 <compress VJ 0f 01>]
sent [IPCP ConfReq id=0x2 <addr 0.0.0.0>]
rcvd [IPCP ConfNak id=0x2 <addr 192.168.1.23>]
sent [IPCP ConfReq id=0x3 <addr 192.168.1.23>]
rcvd [IPCP ConfAck id=0x3 <addr 192.168.1.23>]
Cannot determine ethernet address for proxy ARP
local IP address 192.168.1.23
remote IP address 192.168.1.1
Script /etc/ppp/ip-up started (pid 4497)
Script /etc/ppp/ip-up finished (pid 4497), status = 0x0

[/code]

Merci de vos suggestions :slightly_smiling:

PS: Premier post sur ce forum que je parcoure depuis longtemps déjà: j’y ai trouvé des dizaines de réponses et de solutions pour mes débuts sous Debian. Merci à tous ceux qui aident les autres, j’espère pouvoir en faire autant bientôt !

Config: Debian Lenny / noyau Linux debian 2.6.26-2-686 #1 SMP Sun Jun 21 04:57:38 UTC 2009 i686 GNU/Linux[/b]

Salut,

J’avais eu un problème de ce type (je ne me rappelle pas de l’erreur exacte), mais j’avais dû exécuter cette commande :

Où l’IP correspond à l’IP P-t-P de :

# ifconfig ppp0 ppp0 Link encap:Protocole Point-à-Point inet adr:10.1.1.32 P-t-P:10.1.0.1 Masque:255.255.255.255 UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1 RX packets:337 errors:0 dropped:0 overruns:0 frame:0 TX packets:406 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 lg file transmission:3 RX bytes:127773 (124.7 KiB) TX bytes:88761 (86.6 KiB)

En espérant que ça t’aide…

kvpn c’est bien aussi …

Je ne vois aucun problème dans les logs, la connexion s’établit bien. Le message concernant le proxy ARP n’a pas d’importance, il suffit de commenter l’option proxyarp qui ne te sert à rien dans le fichier /etc/ppp/options, ou d’ajouter l’option noproxyarp dans un des autres fichiers d’options de la connexion (/etc/ppp/options.pptp ou /etc/ppp/peers/Itshidden).

Quel est le vrai problème ?

Bonjour et désolé d’avoir déserté le forum au moment où des réponses étaient apportées :blush:

· PH` > Merci de ton idée, j’ai essayé d’ajouter l’adresse P-t-P (chez moi 192.168.1.1) comme défaut dans la table de routage mais ça ne fonctionne toujours pas. Par ailleurs, j’ai aussi essayé de modifier la table de routage comme indiqué dans ce tutoriel (à l’étape 5) mais bon ce n’est guère mieux ^^.
Voilà ce que me renvoie # ifconfig:

[code]eth0 Link encap:Ethernet HWaddr 00:0e:a6:49:04:f9
inet adr:192.168.0.3 Bcast:192.168.0.255 Masque:255.255.255.0
adr inet6: fe80::20e:a6ff:fe49:4f9/64 Scope:Lien
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:3027 errors:0 dropped:0 overruns:0 frame:0
TX packets:3165 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:1000
RX bytes:2405050 (2.2 MiB) TX bytes:549928 (537.0 KiB)

lo Link encap:Boucle locale
inet adr:127.0.0.1 Masque:255.0.0.0
adr inet6: ::1/128 Scope:Hôte
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:0
RX bytes:560 (560.0 B) TX bytes:560 (560.0 B)

ppp0 Link encap:Protocole Point-à-Point
inet adr:192.168.1.47 P-t-P:192.168.1.1 Masque:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1496 Metric:1
RX packets:9 errors:0 dropped:0 overruns:0 frame:0
TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:3
RX bytes:3252 (3.1 KiB) TX bytes:66 (66.0 B)
[/code]

· debianhadic > Il faudrait que j’essaie, mais je n’ai pas installé KDE… et puis ça me chiffonne un peu d’avoir recours à une GUI pour s’affranchir d’un problème en ligne de commande :stuck_out_tongue:

· PascalHambourg > Exactement, c’est d’ailleurs ce dont je me suis aperçu en épluchant le fichier options. Maitenant je n’ai plus de message d’erreur concernant le proxy ARP.

Et comme tu dis, la connexion semble s’effectuer. Mais si j’ouvre un navigateur et que je vérifie mon IP, elle n’a pas changé. :cry: Avez-vous réussi à configurer un VPN en PPTP ? Y’aurait-il une étape que j’ai oubliée ? C’est quand même vraiment étrange…

Comment vérifies-tu ton adresse IP avec un navigateur, et pourquoi est-elle censée changer ?
Qu’est-ce que tu veux faire avec ce VPN exactement ?
Pourrais-tu copier le contenu de la table de routage retourné par ip route lorsque le VPN est établi ?

C’est quand tu fais :

# ifconfig

Que tu vois que tu es connecté, en effet ton IP Web de ton poste ne change pas !

Je crois qu’on n’est vraiment pas loin du but, car le VPN est connecté, mais les requêtes web ne passent pas par lui.

Pour répondre à PascalHambourg et debianhadic, je vais essayer d’expliquer plus en détail pourquoi je cherche à ce que mon IP change.
A la base, je me connecte au VPN de mon université pour pouvoir accéder à des ressources (Cairn, Jstor) disponibles uniquement depuis un poste de l’Ecole (ENS-LSH). Jstor utilise en effet une authentification par adresse IP, et non par login/mot de passe. C’est pourquoi l’Ecole a mis en place un VPN, afin qu’on puisse simuler une présence physique à distance. Concrètement, cela veut dire qu’on crée un tunnel crypté entre un ordinateur domestique et l’un des serveurs de l’Ecole. Ensuite, on surfe “à travers” ce serveur. Cela marche parfaitement sous Windows.

Pour vérifier mon IP avec un navigateur, je me connecte par exemple à checkip.org : sans VPN, j’ai une IP grenobloise avec FRANCE TELECOM pour ISP, avec le VPN, j’ai une IP lyonnaise avec RENATER comme ISP.

C’est la même chose avec Itshidden, sauf que l’IP qui nous est attribuée est à Amsterdam, avec LEASEWEB comme ISP.

Bref, revenons à nos moutons :smiley: Voici ce que me renvoie la table de routage avec # ip route :

192.168.2.1 dev ppp0 proto kernel scope link src 192.168.2.21 94.75.253.241 via 192.168.0.1 dev eth0 src 192.168.0.3 94.75.253.242 via 192.168.0.1 dev eth0 src 192.168.0.3 192.168.0.0/24 dev eth0 proto kernel scope link src 192.168.0.3 default via 192.168.0.1 dev eth0

Et devinez quoi : 94.75.253.241 est bien l’adresse IP d’un serveur Itshidden à Amsterdam !! La preuve ici : 94.75.253.241 .

Merveilleux, sauf que quand j’ouvre Epiphany ou Iceweasel, mon IP est 86.219.144.252 :astonished: :frowning:

Merci encore pour votre aide !

Si tu as juste besoin d’accéder à un ou plusieurs sous-réseaux particuliers de ton universtié via le VPN, alors il suffit de créer les routes correspondantes après l’établissement de la session PPTP. Forme générale :

A faire pour chaque bloc non agrégeable. Exemple :

On pourra automatiser tout ça avec un script dans /etc/ppp/ip-up.d/, mais on verra ça plus tard si ça marche déjà en manuel.

Si tu veux que toutes les communications, y compris vers internet, passent par le VPN, alors il faut modifier la route par défaut pour la faire pointer vers le VPN, en ajoutant l’option suivante au fichier d’options de la connexion dans /etc/ppp/peers/ :

Il faut bien sûr alors exclure l’adresse du serveur VPN lui-même de cette route par défaut sinon les paquets encapsulant le VPN seraient aussi envoyés dans le VPN, ré-encapsulés… catastrophe ! Mais je vois dans ta table de routage que quelque chose (peut-être pptp) a le bon goût d’ajouter une route spécifique vers cette adresse, donc tout devrait bien se passer.

PascalHambourg for the win comme on dit :smiley:

J’avais oublié de préciser que les ressources auxquelles j’essaie d’accéder avec l’authentification par IP ne sont pas sur le réseau local de l’Ecole, mais sur Internet (par exemple jstor.org). C’est donc la deuxième solution qu’il me fallait.

J’ai donc ajouté : defaultroute replacedefaultroute
dans le fichier /etc/ppp/peers/$TUNNEL ($TUNNEL s’appelant Itshidden pour le service de test, Enslsh pour le VPN de l’université)

Maitenant quand je lance # pon Itshidden updetach, j’obtiens :

Connect: ppp0 <--> /dev/pts/1 CHAP authentication succeeded MPPE 128-bit stateless compression enabled replacing old default route to eth0 [192.168.0.1] local IP address 192.168.0.67 remote IP address 192.168.0.1

Quand j’ai vu replacing old default route to eth0 [192.168.0.1], je me suis dit "mhhh, sounds good :stuck_out_tongue: " !

L’ip route donne :

root@debian:/etc/ppp/peers# ip route 192.168.1.1 dev ppp0 proto kernel scope link src 192.168.1.22 94.75.222.180 via 192.168.0.1 dev eth0 src 192.168.0.3 94.75.253.242 via 192.168.0.1 dev eth0 src 192.168.0.3 192.168.0.0/24 dev eth0 proto kernel scope link src 192.168.0.3 default dev ppp0 scope link

A noter que default passe bien par l’interface ppp0. Sounds very good !

Et l’IP change :slightly_smiling: Quel bonheur :smiley:

Merci infiniment pour votre aide vraiment salutaire :wink: