VPN avec pppd et ssl/tls
Sur le serveur il faut créer le certificat et ses pendants :
@@openssl req -new -x509 -days 365 -nodes \ @@%%%
@@-config /etc/ssl/openssl.cnf -out server.pem -keyout server.pem@@
On enregistre la copie du certificat sans la clef privée :%%%
@@openssl x509 - in server.pem -out server.cert@@
On copie le __server.cert__ sur la machine cliente, puis on le lie :%%%
@@ln -s server.cert `openssl x509 -hash -noout -in server.cert`.0@@
Nous allons faire les mêmes actions sur la machine cliente :
@@openssl req -new -x509 -days 365 -nodes \ @@%%%
@@-config /etc/ssl/openssl.cnf -out client.pem -keyout client.pem@@
puis : %%%
@@openssl x509 - in client.pem -out client.cert@@
et pour finir, on copie le fichier sur la machine serveur, et sur cette dernière, on fait : %%%
@@ln -s client.cert `openssl x509 -hash -noout -in client.cert`.0@@
Voilà, les bases des certificats sont posées. Facile, hein ? (Pas la peine de me répondre.)
Maintenant, il ne reste plus qu'à mettre en place le lien client/serveur :
Sur le serveur :%%%
@@stunnel -v3 -a /etc/ssl -v3 -p /etc/ssl/server.pem \ @@%%%
@@-f -D7 -d 9871 -L pppd pppd debug \ @@%%%
@@noauth 192.168.254.254:192.168.254.253" @@
Puis sur le client :%%%
@@pppd updetach debug noauth \ @@%%%
@@pty "stunnel -v3 -a /etc/ssl -S0 -f -D7 \ @@%%%
@@ -p /etc/ssl/client.pem -c -r @serveur:9871 " @@
Voilà, ce n'était pas bien sorcier !