Mise en place d`un serveur WEB sécurisé (HTTPS)

Transcription

Mise en place d`un serveur WEB sécurisé (HTTPS)
1
Mise en place d’un serveur WEB sécurisé (HTTPS)
Présentation :
L’accès à un serveur WEB utilise le protocole http via le réseau internet. Il est possible qu’un pirate
intercepte vos requêtes et les réponses faites par le serveur car les informations qui circulent sur le
réseau ne sont pas cryptées.
Le protocole HTTPS (http over SSL) permet de remédier à cela :
-
Les échanges sont cryptés
L’authentification SSL du serveur est mise en œuvre
Mettre en place le protocole SSL sur le serveur web
Prérequis : Apache 2 doit être installé et fonctionnel.
Paquets à installer :
-
Openssl (fournit entre autre une application pour créer des certificats)
Libssl1.0.0
Avant de démarrer :
-
Création de différents dossiers où seront stockés les fichiers.
# mkdir /secu/certs/
(certificats)
# mkdir /secu/crl
# mkdir /secu/newcerts
(nouveaux certificats)
# mkdir /secu/private
(clés privées)
/secu# echo « 01 » > serial
/secu# touch index.txt
-
Editer le fichier /etc/ssl/openssl.cnf et remplacer $dir par /secu
Simon Fesnien
Avril 2014
2
1- Création clé privée serveur
Génération de clé privée avec cette commande :
Le résultat attendu est le suivant :
Il est possible d’attribuer un mot de passe à cette clé (qui sera demandé à chaque démarrage
d’Apache). Pour cela, ajouter « -des3 » après « genrsa ».
On peut vérifier que la clé a bien été créé dans /secu/private
Protéger le fichier obtenu : # chmod 400 wwwssl.key
2- Créer un fichier de demande de signature de certificat
A partir de cette clé, créer un fichier de demande de signature de certificat (CSR).
Générer la demande avec la commande suivante :
Le système demande de saisir des champs :
Simon Fesnien
Avril 2014
3
3- Création du certificat de l’autorité de certification
Pour signer un certificat, il faut devenir sa propre autorité de certification ce qui implique de réaliser
une clé et un certificat auto-signé.
La création de la clé privée de l’autorité de certification se fait avec cette commande :
Cela créé la clé privée de l’autorité de certification.
A partir de cette clé privée, ont créé un certificat x509 pour une durée de validité d’un an auto-signé :
Il faut donner les renseignements concernant l’autorité de certification (nous-même)
C’est le certificat d’autorité de certification qui va permettre de signer les certificats créés.
4- La signature du certificat serveur par le CA (CertificateAutority)
La commande qui signe la demande de certificat est la suivante :
Il faut maintenant installer le certificat de l’autorité de certification dans chaque navigateur client.
C’est ce dernier qui va valider le certificat reçu par le client lors de la requête https://
Simon Fesnien
Avril 2014
4
5- Installation du certificat d’autorité de certification
Il faut installer le fichier wwwssl.crt.
Sur mozilla :
Aller dans
Paramètres>Avancés>Afficher les certificats
Cliquer sur Importer puis sélectionner le fichier de certificat.
Il faut aussi installer ce certificat sur le poste client
Simon Fesnien
Avril 2014
5
6- Configuration d’Apache2
Activation du module ssl
Editer le fichier default-ssl dans etc/apache2/sites-availables
Modifier ces deux lignes et mettre le bon chemin des fichiers :
Puis redémarrer le service apache2 :
Pour tester le bon fonctionnement, entrer dans un navigateur : https://adresse_ip_serveur
On doit arriver sur cette page :
Simon Fesnien
Avril 2014
6
Le serveur web est maintenant sécurisé.
Simon Fesnien
Avril 2014