Point-to-Point Tunneling Protocol

Un article de Wikipédia, l'encyclopédie libre.

PPTP (Point-to-point tunneling protocol - RFC 2637[1]), protocole de tunnel point-à-point, est un protocole d'encapsulation PPP sur IP conçu en 1999 par Microsoft. Il permet de mettre en place des réseaux privés virtuels (VPN) au-dessus d'un réseau public. Layer 2 Tunneling Protocol (L2TP) et IPsec sont des protocoles inspirés de PPTP et chargés de le remplacer. Cependant, le protocole PPTP continue d'être utilisé car il est implémenté nativement sur les machines Windows depuis Windows 2000. Toute machine Microsoft est donc capable de mettre en place un tunnel PPTP avec une machine distante sans devoir ajouter de mécanisme supplémentaire.

Même s'il est toujours implémenté dans certaines dernières versions de Windows, il est déconseillé d'utiliser le PPTP car les protocoles de chiffrement utilisés (MS-CHAP-V1 et MS-CHAP-V2) sont vulnérables[2]. Par ailleurs, le PPTP n'est plus maintenu par Microsoft depuis plusieurs années[3].

Fonctionnement[modifier | modifier le code]

Ce protocole ouvre deux canaux de communication entre le client et le serveur :

  • un canal de contrôle pour la gestion du lien, qui consiste en une connexion TCP sur le port 1723 du serveur ;
  • un canal de données transportant les données du réseau privé et utilisant le protocole IP numéro 47.

Le canal de données consiste en une version non standard du protocole Generic Routing Encapsulation (GRE). Les paquets GRE modifiés transportent des trames PPP. Enfin, les trames PPP encapsulent les paquets IP transportés par le tunnel.

Le flux PPP peut être chiffré, authentifié et compressé à l'aide des mécanismes standard de PPP, auxquels Microsoft a ajouté l'authentification MS-CHAP, le chiffrement Microsoft Point-to-Point Encryption (MPPE) et la compression Microsoft Point-to-Point Compression (en) (MPPC).

Les détails du protocole PPTP sont décrits dans le document informatif RFC 2637[4].

Implémentations[modifier | modifier le code]

Sous Windows, PPTP est décrit comme la fonction « accès VPN ».

Il existe un client PPTP[5] ainsi qu'un serveur PPTP[6] sous Linux, ce qui permet d'établir des VPN en environnement hétérogène.

Mac OS X comporte un client PPTP.

Voir aussi[modifier | modifier le code]

Références[modifier | modifier le code]