« Mise en place d'un VPN avec OpenVPN » : différence entre les versions

Aller à la navigation Aller à la recherche
aucun résumé des modifications
Aucun résumé des modifications
Ligne 19 : Ligne 19 :
<pre>aptitude install openvpn</pre>
<pre>aptitude install openvpn</pre>


=Génération des certificats=
=Configuration du serveur openvpn⁼
==Génération des certificats==


Modifiez votre fichier <code>/etc/ssl/openssl.cnf</code> :
Modifiez votre fichier <code>/etc/ssl/openssl.cnf</code> :
Ligne 32 : Ligne 33 :
nsCertType                      = server
nsCertType                      = server
extendedKeyUsage                = serverAuth
extendedKeyUsage                = serverAuth
[VPN_PFOO]
nsComment                      = "VPN Pfoo Certificate"
subjectKeyIdentifier            = hash
authorityKeyIdentifier          = keyid,issuer:always
issuerAltName                  = issuer:copy
basicConstraints                = critical,CA:FALSE
keyUsage                        = digitalSignature, nonRepudiation
nsCertType                      = client
extendedKeyUsage                = clientAuth
</pre>
</pre>


Ligne 62 : Ligne 53 :
</pre>
</pre>


Nous allons maintenant générer une clé TLS pour bloquer les attaques DoS ainsi que le floot UDP en créant un firewall HMAC :
Nous allons enfin générer une clé TLS pour bloquer les attaques DoS ainsi que le floot UDP en créant un firewall HMAC :
<pre>openvpn --genkey --secret /etc/openvpn/ssl/ta.key</pre>
<pre>openvpn --genkey --secret /etc/openvpn/ssl/ta.key</pre>


Enfin, générez le certificat pour un premier client vpn, et signez le avec votre autorité :
==Configuration de openvpn==
<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> :
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> :
Ligne 113 : Ligne 98 :
Définissez bien-sur l'ip de votre serveur à la ligne <code>local</code>. Vous noterez aussi que pour l'instant, la redirection du trafic (les lignes <code>push</code>) est désactivé.
Définissez bien-sur l'ip de votre serveur à la ligne <code>local</code>. Vous noterez aussi que pour l'instant, la redirection du trafic (les lignes <code>push</code>) est désactivé.


=Configuration de votre client=
=Configuration du client openvpn=
 
Tout d'abord, ajouter les lignes suivantes dans votre fichier <code>/etc/ssl/openssl.cnf</code> :
<pre>
[VPN_CLIENT]
nsComment                      = "VPN CLIENT Certificate"
subjectKeyIdentifier            = hash
authorityKeyIdentifier          = keyid,issuer:always
issuerAltName                  = issuer:copy
basicConstraints                = critical,CA:FALSE
keyUsage                        = digitalSignature, nonRepudiation
nsCertType                      = client
extendedKeyUsage                = clientAuth
</pre>
 
Générez et signez le certificat :
<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>
 
Récupérez la clé et votre certificat ssl sur votre ordinateur, ainsi que le certificat de votre autorité root
 
==KDE4 et networkmanager==
 
Sur votre ordinateur, installez le paquet <code>network-manager-openvpn-kde</code>. Les dépendances nécessaires devraient s'installer.
 
Cliquez sur l'icone de networkmanager puis cliquez sur <code>gérer les connexions</code>.<br />
Dans l'onglet <code>VPN</code> cliquez sur <code>Ajouter</code> puis sur <code>OpenVPN</code>.
 
===Onglet OpenVPN===
 
La passerelle est l'ip/hostname de votre serveur (celle que vous avez défini à la ligne <code>local</code> de la configuration de openvpn sur votre serveur). Les certificats à utiliser sont ceux que vous avez rapatrié juste avant.
 
Dans l'onglet <code>Paramètres optionnels</code> cochez la case <code>compression lzo</code>
Dans l'onglet <code>Paramètres TLS optionnels</code> cochez la case <code>utilisez une authentification TLS supplémentaire</code> puis entrez le chemin vers la clé <code>ta.key</code> dans le champ <code>Clé</code>. Dans <code>Direction de la clé</code> sélectionnez <code>1</code>.


Récupérez la clé et votre certificat ssl sur votre ordinateur.
===Onglet Adresse IP===
Cliquez sur la barre déroulante indiquant <code>Réglage de base</code> et sélectionnez <code>Routes</code>. Cochez la case <code>Utilisez uniquement pour les ressources de cette connexion</code>.
4 203

modifications

Menu de navigation