VPN
VIVE LE GSL !!

Logo indiquant que la page est valide XHTML par le W3C Validator

Tutoriel si vous avez un kimsufi et voulez que sur un ordinateur TOUT le trafic sortant passe via le VPN. Attention un VPN permets plusieurs chose (échange machine à machine, connexion à un LAN distant) là on est bien d'accord que tout le trafic de la machine passe par le VPN pour ensuite aller sur internet.

Etape 1 : au boulot sur le KS

Armé de votre Openvpn, d'une debian (wheezy lors de la rédaction), d'un putty et de votre cerveau d'administrateur linux. On a besoin du packet openssl pour créer les clefs. Si vous reprenez les clefs d'un ancien serveur c'est peut être pas obligé ?! Installation:

apt-get install openvpn openssl

Configuration, on copie l'exemple et on édite les variables.

cd /etc/openvpn
cp -r /usr/share/doc/openvpn/examples/easy-rsa/2.0 ./easy-rsa
vim easy-rsa/vars

Ajuster KEY_COUNTRY, KEY_PROVINCE, KEY_CITY, KEY_ORG, KEY_EMAIL si vous voulez avoir une clef propre. Sinon laissez ! De toute facon c'est pas utile si vous faite pas du multiutilisateur / multiposte.

. ./easy-rsa/vars

C'est bien vous avez copié tel quel avec les 2 points et l'espace ? Sinon fu ! Il y a pu y avoir des écriture; osef. On continu

./easy-rsa/clean-all

On build le CA donc ce machin c'est en gros une super clef qui authentifie le serveur. La clef privée de ce truc doit rester secrete. La clef publique doit être filée a TOUS les clients.

./easy-rsa/build-ca OpenVPN

On construit la clef du serveur. Techniquement on peux faire plusieurs serveur avec un même CA mais on est pas VERISIGN. Eventuellement remplacer server par ksxxxx.

./easy-rsa/build-key-server server

A la place de PC-DE-NOOB vous pouvez mettre le nom de votre machine. Si vous êtes un débutant c'est surement PC-DE-VOTRELOGIN... FU.

./easy-rsa/build-key PC-DE-NOOB

Ca... c'est obligé mais on sais plus pourquoi alors on fait. Non mais ca un intérêt mais osef pour mon tuto simple donc google si vous voulez tout savoir.

./easy-rsa/build-dh

Configuration du fichier

vim /etc/openvpn/openvpn.conf

Exemple de mon openvpn.conf Attention dt.crt et dt.key c'est server si vous avez pris le tuto à la lettre... Le 8.8.8.8 c'est pour dire au client d'utiliser les serveurs de google pour le DNS à la rigueur vous pouvez mettre un serveur dns sur le VPN mais faut le sécuriser (iptable que votre ip par exemple et puis vous avez quoi à cacher à GOOGLE ??? HEIN ? Non sérieux sécuriser votre serveur dns si vous l'utiliser en tant que redirecteur car beaucoup d'attaques DDOS se font avec de la reflexion DNS.

dev tun
proto tcp
port 8080

ca /etc/openvpn/easy-rsa/keys/ca.crt
cert /etc/openvpn/easy-rsa/keys/dt.crt
key /etc/openvpn/easy-rsa/keys/dt.key
dh /etc/openvpn/easy-rsa/keys/dh1024.pem

user nobody
group nogroup
server 10.8.0.0 255.255.255.0

persist-key
persist-tun

status /var/log/openvpn-status.log
verb 3
client-to-client

push "redirect-gateway def1"
#set the dns servers
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"

log-append /var/log/openvpn
comp-lzo

Etape 2 : faire du routage et du NAT par port/ip. VIVEMENT DES TUNNELS IPV6!

Ensuite les merdes habituelles, faut que le linux puisse forwarder et faut faire du NAT par port (ip masquerade). Attention y'a 1 million de postes sur le NAT et le terme veux tout dire... C'est du NAT par translation de port. Donc sur le VPN vous aurez que 65536 connexion possible. Bon si vous avez que un seul ordinateur sur le VPN c'est pas grave. Mais vous avez 5000 machines sur le VPN si chacune fait 10 connexion TCP vous êtes bientot à la limite ! En plus le serveur NAT est obligé de garder une table des session ouvertes entre vous et le reste du monde. Bon le NAT c'est 50 pages de cours pas envie de vous apprendre DONC TAPER.

Hé eth0 c'est l'interface du kimsufi connecté à internet. Peut être ca va changer...

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE

A priori faut éditer /etc/sysctl.conf et foutre à 1 net.ipv4.ip_forward

iptables -L -t nat

La commande d'avant vous à montré que tout est ok?

/etc/init.d/openvpn start
tail -f /var/log/openvpn

Etape 3 : au boulot sur le Windows 8

Copier ca.crt, PC-DE-NOOB.crt, PC-DE-NOOB.key qui sont dans ..... /etc/openvpn/easy-rsa/keys

Ensuite vous faites un fichier de configuration et vous vous débrouiller pour le sheller en administrateur. Débrouillez vous.

Fichier ClientKS.ovpn

dev tun
client
proto tcp
remote ks007.kimsufi.com 8080
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert PC-DE-NOOB.crt
key PC-DE-NOOB.key
comp-lzo
verb 3

Fichier ClientKS.bat - A SHELLER EN ADMINISTRATEUR

e:
cd e:\vpn
"c:\Program Files (x86)\OpenVPN\bin\openvpn.exe" E:\VPN\clientFR.ovpn
pause

Reste plus qu'a installer le client openvpn dans le dossier par défaut. Heeeu par contre je me rappelle plus de celui que j'ai installé... Y'a du 64 bits mais j'ai 32 bits je crois. Débrouillez vous ^^