|
Trucs et astuces
|
|
Écrit par Jérôme
|
|
Mercredi, 24 Octobre 2007 12:12 |
|
Vous voulez sécuriser votre serveur web, voici comment le faire avec Apache 2 et openssl.
Génération d'un certificatPour bénéficier d'un serveur sécurisé, vous devez bénéficier d'un certificat pour votre domaine. Mais, pour demander un certificat à une autorité de certification, il vous faut générer une demande de certificat (CSR : Certificate Signing Request) : - Il faut que openssl soit installer sur votre machine
- Créer une clé RSA pour votre serveur
openssl genrsa -out monserveur.key 1024
Vous pouvez également utilisé un encryptage avec mot de passe avec la commande : openssl genrsa -des3 -out monserveur.key 1024
Cependant, attention, le mot de passe vous sera demandé au lancement du serveur (voir plus loin) - Générer la demande de certificat :
openssl req -new -key monserveur.key -out monserveur.csr
Au cours de la génération, il vous sera demandé plusieurs informations sur votre certificat pour lesquels vous pouvez entrer . pour laisser le champ vide et vous ne pouvez donner les caractères < > ~ ! @ # $ % ^ * / \ ( ) ?.,&. - Vous pouvez soumettre votre demande (le fichier monserveur.csr) à une autorité de certification telle que cacert.org qui est une autorité de certification conduite par une communauté, qui fournit gratuitement des certificats à un large public.
Installation du certificat sur Apache 2.x- Copier le certificat (monserveur.csr) et la clé RSA (monserveur.key) sur votre serveur par exemple, pour Mandriva, dans les répertoires /etc/pki/tls/certs et /etc/pki/tls/private
- Modifier la configuration de l'hôte virtual (VirtualHost) lié au serveur sécurisé (sous Mandriva, cette configuration se trouve dans le fichier /etc/httpd/conf/vhosts.d/01_default_ssl_vhost.conf
- Vérifier que les directives SSLCertificateFile et SSLCertificateKeyFile sont associé respectivement à votre certificat et à la clé su serveur:
SSLCertificateFile /etc/pki/tls/certs/monserveur.crt SSLCertificateKeyFile /etc/pki/tls/private/monserveur.key - Vérifier que le nom du serveur correspond bien à celui du certificat.
- Redémarrer votre serveur :
service httpd restart - Verifier le bon fonctionnement en accédant à l'url https://monserveur
|