4 203
modifications
Ligne 42 : | Ligne 42 : | ||
nsCertType = client | nsCertType = client | ||
extendedKeyUsage = clientAuth | extendedKeyUsage = clientAuth | ||
</pre> | |||
Nous allons maintenant générer le certificat du serveur openvpn puis le signer avec notre autorité vpn_ca : | |||
<pre> | |||
openssl req -nodes -newkey rsa:2048 -keyout vpn.csnu.org.key -out vpn.csnu.org.req | |||
openssl ca -name vpn_ca -extensions VPN_SERVER -in vpn.csnu.org.req -out vpn.csnu.org.pem | |||
</pre> | |||
Puis générez votre clé Diffie-Hellman de 2048 bits: | |||
<pre> | |||
openssl dhparam -out dh2048.pem 2048 | |||
</pre> | |||
Enfin, générez le certificat pour un premier client vpn, et signez le avec votre autorité : | |||
<pre> | |||
openssl req -nodes -newkey rsa:2048 -keyout vpn.pfoo.key -out vpn.pfoo.req | |||
openssl ca -name vpn_ca -extensions VPN_PFOO -in vpn.pfoo.req -out vpn.pfoo.pem | |||
</pre> | |||
=Configuration= | |||
Des exemples de configurations pour le serveur et le client openvpn se trouvent dans <code>/usr/share/doc/openvpn/examples</code>. Sur votre serveur, copiez l'exemple de configuration dans <code>/etc/openvpn/</code> : | |||
<pre> | |||
cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz /etc/openvpn/ | |||
gunzip /etc/openvpn/server.conf.gz | |||
</pre> | |||
Voici par exemple mon fichier de configuration : | |||
<pre> | |||
local 178.33.250.38 | |||
port 1194 | |||
proto udp | |||
dev tun | |||
ca /etc/openvpn/ssl/ca_chain.pem | |||
cert /etc/openvpn/ssl/vpn.csnu.org.pem | |||
key /etc/openvpn/ssl/vpn.csnu.org.key | |||
dh /etc/openvpn/ssl/dh2048.pem | |||
#on va attribuer les ips vpn en 10.8.0.X | |||
server 10.8.0.0 255.255.255.0 | |||
ifconfig-pool-persist ipp.txt | |||
#la route doit être l'ip externe du serveur (si on veut utiliser la connexion de ce serveur) | |||
;push "route 178.33.250.38 255.255.255.0" | |||
#De même, force le client a rediriger son trafic vers le vpn (il faudra aussi faire un nat du range vpn (10.8.) vers internet (178.33.250.38) | |||
;push "redirect-gateway def1 bypass-dhcp" | |||
comp-lzo | |||
max-clients 10 | |||
user nobody | |||
group nogroup | |||
log-append /var/log/openvpn.log | |||
</pre> | </pre> |