Sinon voir l'article : « Mise en place d'un serveur Samba monté en PDC avec authentification LDAP »
I-Configuration coté serveur:
1-Installation des paquets nécessaires :
# aptitude install openvpn openssl
Effectuer une copie du dossier contenant les scripts de génération de clés:
# cp /usr/share/doc/openvpn/examples/easy-rsa openvpn/ -R
1-Créer les clés et les certificats:
Editer le fichier vars et modifier les lignes suivantes:
# vim vars
export KEY_COUNTRY="MG"
export KEY_PROVINCE="Antananarivo"
export KEY_CITY="Tana Ville"
export KEY_ORG="ARAND"
export KEY_EMAIL="root@Serveur.arand.com"
Initialiser les clés:
# . ./vars
# ./clean-all
Créer la clé de l'autorité de certification (ca) principale:
# ./build-ca
Toujours valider par la touche Entrée jusqu'à:
Common Name (eg, yourname or yourserver'shostname) []:Serveur (résultat de la commande hostname)
Créer la clé et le certificat propre au serveur:
# ./build-key-server Serveur
Toujours valider par la touche Entrée jusqu'à:
Certificateis to becertifieduntilDec 14 10:43:30 2020 GMT (3650 days)
Sign the certificate? [y/n]:y
1 out of 1 certificaterequestscertified, commit? [y/n]y
Write out databasewith 1 new entries
Data Base Updated
Créer la clé et le certificat pour le client:
# ./build-key Client
Toujours valider par la touche Entrée jusqu'a:
Certificateis to becertifieduntilDec 14 10:46:56 2020 GMT (3650 days)
Sign the certificate? [y/n]:y
1 out of 1 certificaterequestscertified, commit? [y/n]y
Write out databasewith 1 new entries
Data Base Updated
Créer les parametres Diffie-Hellman
# ./build-dh
Generating DH parameters, 1024 bit long safe prime, generator 2
This isgoing to take a long time
.............................+..........+.+...........................................................................+..+...........+.............................................................++*++*++*
On peut verifier:
# ls keys
01.pem 02.pem 03.pem
index.txt index.txt.old index.txt.attr index.txt.attr.old
serial serial.old
dh1024.pem
ca.crt ca.key
Serveur.csr Serveur.crt Serveur.key
Client.csr Client.crt Client.key
Enfin, il faut copier tous les fichiers necessaires au serveur dans le dossier de configuration d'OpenVPN:
# cd keys
# cp dh* ca* Serveur* /etc/openvpn
2-Créer le fichier de configuration d’OpenVPN :
# vim /etc/openvpn/openvpn.conf
Voici mon fichier openvpn.conf. Adaptez-le pour qu’il soit conforme à votre configuration :
port 1194
proto tcp
dev tun
ca ca.crt
cert Serveur.crt
key Serveur.key
dh dh1024.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "route 192.168.0.0 255.255.255.0"
### car l’adresse du serveur est 192.168.0.1/24
client-to-client
keepalive 10 120
comp-lzo
persist-key
persist-tun
status openvpn-status.log
log openvpn.log
log-append openvpn-append.log
verb 9
### Insérer les lignes suivantes pour avoir l’authentification LDAP
username-as-common-name
plugin /usr/lib/openvpn/openvpn-auth-pam.so openvpn
Redemarrer le service :
# /etc/init.d/openvpn restart
# openvpn /etc/openvpn/openvpn.conf
II-Configuration du client :
1-Installer OpenVPN :
# aptitude install openvpn
2-Créer le fichier de configuration pour le Client :
Pour un client Debian le fichier sera Client.conf. Voici mon fichier Client.conf. Comme précédemment adaptez ce fichier au votre :
Client
dev tun
proto tcp
remotexxx.xxx.xxx.xxx:1194
### adresse IP publique du serveur et son port d’écoute
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert Client.crt
key Client.key
ns-cert-type server
comp-lzo
verb 3
### Cette ligne indique que le client devra s’authentifier
auth-user-pass
3-Récupérer les fichiers clés et certificats pour le client:
Il faut récupérer les fichiers : ca.* et Client.* et les placer avec le fichier Client.conf dans le dossier de configuration d’OpenVPN.
4-Redémarrer le service et se connecter :
# /etc/init.d/openvpn restart
# openvpn /etc/openvpn/Client.conf
Voila, je crois que tout y est!!!!