VPN Intranet

An alternative space dedicated to technology and culture at Charleroi.
Aller à la navigation Aller à la recherche

Pourquoi un VPN ?

Le terme intranet prend tous son sens lorsque son accès est réservé avant tout aux gens interne au projet. Dans notre cas nous avons un intranet qui se présente comme un extranet mais au final accessible comme un site internet... Donc voici un premier pas vers un vrai intranet via la mise en place d'un serveur VPN que nous utiliserons pour accéder aux ressources internes au projet et donc accessible a tous les membres du projet via un simple client vpn. Ce VPN sera aussi très utile dans le cadre d'échange d'informations/fichiers. On pourrait de manière plus sécurisé proposé un NFS pour du partage, par exemple, avec une synchro différentielle et l'auth SSL du VPN. Le SSL n'est pas LA solution car reste facilement contournable dans le cas de MITM et de fasification de CA mais c'est mieux que rien. J'ai écris un fichier de config' basique mais fonctionnel pour le serveur et les clients ainsi que les infos commune pour les SSL. (Les infos étant a adapter dans le cas de des cert clients).

Configurations

Services

OpenVPN comme serveur semble le choix le plus simple.

SSL

countryName           :PRINTABLE:'BE'
stateOrProvinceName   :PRINTABLE:'Belgique'
localityName          :PRINTABLE:'Hainaut'
organizationName      :PRINTABLE:'WolfplexHackerspace'
commonName            :PRINTABLE:'WolfplexVPN'
emailAddress          :IA5STRING:'vpnadmin@wolfplex.org'

Server

port 1122
proto udp
dev tun
;utilisateur et groupe a droits limité pour le daemon
user openvpn
group openvpn

ca <ca cert filename>
cert <cert srv filename>
key <key srv filename>
dh <diffie haleman filename>

;srv en 10.10.15.1
server 10.10.15.0 255.255.255.0
push "route 10.10.15.0 255.255.255.0"
push "dhcp-option DNS 10.10.15.1"
push "dhcp-option DOMAIN wolfplex.org"
; on se voit entre nous ? vlan ?
client-to-client

keepalive 10 120
comp-lzo

persist-key
persist-tun

status vpn-status.log

; verbosité max mid ou min ? (9, 3, 1) 
verb <level>

Clients

client
dev tun
proto udp
remote 10.10.15.1 1122
resolv-retry infinite
nobind
persist-key
persist-tun
ca <ca cert filename>
cert <cert client filename>
key <key client filename>
comp-lzo
; verbosité max mid ou min ? (9, 3, 1) 
verb <level>