Ce site est artisanal, veuillez ne pas m'en vouloir. Je m'en sers comme cobaye pour des expériences.
Il y a des tas de raisons pour avoir besoin de se connecter à un VPN. Pour accéder à du contenu d'entreprise, pour se connecter au réseau de son université, etc... Cependant sous Linux il arrive que ce soit la croix et la bannière, je pense notamment à tous les bugs qui ont mené la vie dure aux utilisateurs d'Ubuntu (par exemple) ces dernières années.
J'expérimentais moi-même et j'ai été confronté à beaucoup de bugs, dont notamment la connexion refusée pour cause de « secrets non valides » ou encore d'option « require-mppe non reconnue ». MPPE étant le protocole d'encryption de Microsoft que la plupart des serveurs PPTP utilisent.
J'ai fini par résoudre le problème, mais non sans mal car les informations que j'ai trouvées étaient très diverses, souvent anciennes et ne m'ont pas menées bien loin, au final.
Petit résumé : j'avais donc ce problème de connexion : « secrets non valides ». Il s'agit des informations d'identification ; après vérification mon mot de passe était correct. En jetant un oeil à /var/log/syslog, je me suis rendu compte que l'option d'encryption n'était pas reconnue (« unrecognized option "require-mppe" »). Ce qui, comme j'ai pu le lire sur divers forums, provoque l'arrêt immédiat de pppd.
Évidemment, Google n'est pas avare de résultats concernant MPPE, en particulier parce que sur de vieux noyaux (antérieurs à 2.6.14), il fallait un patch pour le faire fonctionner. Mais utilisant un noyau beaucoup plus récent, ça ne me concernait pas.
Après bien des expérimentations, j'ai fini par trouver la bonne combinaison, que voici.
Une dernière précision : tout ceci suppose que vous vouliez vous connecter via PPTP. Pour OpenVPN, VPNC (Cisco) ou L2TP, activez les options correspondantes dans le noyau et installez les plugins correspondants (networkmanager-vpnc, etc).
Nous avons besoin du support du protocole point-à-point (PPP), donc entrez dans le noyau et activez le en modules avec au minimum les options suivantes :
Device Drivers --->
Network device support --->
<M> PPP (point-to-point protocol) support
<M> PPP support for async serial ports
<M> PPP support for sync tty ports
<M> PPP Deflate compression
<M> PPP BSD-Compress compression
<M> PPP MPPE compression (encryption) (EXPERIMENTAL)
Recompilez le tout, lancez update-modules, puis...
NetworkManager ne dispose pas de plugin gérant les VPN par défaut, il faut donc les installer.
Attention à installer les versions des plugins de NetworkManager correspondant à la version dont vous disposez !
Commençons par les USE flags puis démasquons les dernières versions des programmes :
# /etc/portage/package.keywords
=net-misc/networkmanager-0.7.2 ~x86
=net-misc/networkmanager-pptp-0.7.2 ~x86
=gnome-extra/nm-applet-0.7.2 ~x86
net-dialup/ppp ~x86
net-dialup/pptpclient ~x86
# /etc/portage/package.use
net-dialup/ppp dhcp eap-tls -mppe-mppc
Prenez garde à désactiver le USE flag mppe-mppc pour ppp. En effet... il ne sert qu'à appliquer le fameux patch pour les anciens noyaux, et c'est sa présence qui causait l'erreur de reconnaissance de cette option. Le désactiver laisse le champ libre au module du noyau.
Puis on peut lancer l'installation (utilisez --newuse au besoin) :
# emerge -v networkmanager-pptp pptpclient ppp
Et voilà, le système devrait maintenant être opérationel. Redémarrer votre session ou votre ordinateur au besoin (suivant les changements effectués) et l'option « Configurer le VPN » devient disponible dans NetworkManager.
La configuration dépend essentiellement de votre réseau, je vous laisse voir. Dans la plupart des cas, il suffira d'entrer votre nom d'utilisateur et mot de passe ainsi que l'adresse du serveur VPN puis, dans les options avancées, d'activer le chiffrement Point-à-point (MPPE).
Le contenu et les photos de cette partie du blog
Les articles antérieurs à mai 2007 ont émigré, vous les retrouverez peut-être, en 2012...
Dessin de Clem par Chantelune • Dessin « anti-Sarko » basé sur une image appartenant à Canal+, merci à eux.
Site : Copyright © 1995-2010 Syntax Web Interactions - Tous droits réservés sauf mentions contraires sur certaines pages.