VPN entre serveur et smartphone

Billet posté le 12 janv. 2013

Petite intro des familles

Depuis pas mal de temps je rencontre comme pas mal de personnes des soucis pour visualiser les vidéos YouTube depuis ma connexion ADSL free.

Je ne rentre pas dans le débat, j’en fais juste un constat.

Partant de cet état je me suis dis que je pourrais profiter de mon serveur dédié OVH et établir un VPN entre mon dédié et mon iphone / ipad.

Dans cette doc on verra comment mettre en place un vpn très simple côté serveur, et enfin comment réaliser la configuration côté iOS.

Pré-requis

J’utilise un serveur ubuntu server 10.04 LTS - 64 bits.

Un compte root, éditer un fichier de config et regarder les logs.

J’ai tout piqué sur le site web suivant : http://www.sharedknowhow.com/2008/09/linux-vpn-server-installation-for-use-with-iphone/

Coté serveur

Tout d’abord on installe un package :

apt-get install pptpd

On édite ensuite le fichier suivant : /etc/pptpd.conf

option /etc/ppp/options.pptpd
localip 192.168.8.1
remoteip 192.168.8.234-238

On autorise ainsi jusqu’à 4 connexions clientes.

On édite ensuite le fichier suivant : /etc/ppp/options.pptpd

name pptpd
refuse-pap
refuse-chap
refuse-mschap
require-mschap-v2
ms-dns 8.8.8.8
lock
nobsdcomp
nologfd

Le plus important ici : name : c’est un label que vous attribuez pour la configuration, vous pouvez le laisser à cette valeur ms-dns : correspond à l’adresse IP du serveur DNS que vous souhaitez pousser vers votre client VPN.

Ensuite on édite le fichier : /etc/ppp/chap-secrets

# Secrets for authentication using CHAP
#set one or more username and passwords to use with the pptp VPN
# username    pptpd   password         IP addresses
username       pptpd   password        *

Quelques dernières commandes à passer :

echo "1" > /proc/sys/net/ipv4/ip_forward
/sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
/sbin/iptables -A FORWARD -i eth0 -o ppp0 -m state --state RELATED,ESTABLISHED -j ACCEPT
/sbin/iptables -A FORWARD -i ppp0 -o eth0 -j ACCEPT
/etc/init.d/pptpd stop
/etc/init.d/pptpd start

Configuration du client : iphone / ipad

VPN VPN VPN VPN VPN

Conclusion

Il en ressort quoi ? C’est super simple à mettre en place et ça permet de remplir l’objectif que l’on s’était fixé ;)