Accéder au contenu principal

Openssl – générer et signer une demande de signature(CSR)



Dans l’article précédent, nous avons vu comment créer un autorité de certification(CA). Le but de cette autorité de certification est de pouvoir signer des certificats. Dans cet article nous allons voir comment générer une demande de signature(CSR: Common Signing Request) et comment la signer avec notre autorité de certification.

Générer une demande de signature(CSR)

On commence par générer la clef privée pour notre certificat, c’est elle qui va nous permettre de déchiffrer la clef de session que le client aura chiffrée avec notre clef publique(voir étape 3 de l’article Openssl – création d’une autorité de certification).
Dans ce cas-ci, la clef privée ne sera pas protégée par un mot de passe. Nous allons tester notre certificat avec le serveur web Apache, si nous mettons un mot de passe sur cette clef, il faudra le taper à chaque fois que le serveur Apache sera démarré.




Générer le clef privée:
#openssl genrsa 1024 > www.test.net.key

Cette clef ne doit être lisible que par l’utilisateur root:
chmod 600 www.test.net.key
On génère la demande de signature(CSR):

#openssl req -new -key www.test.net.key -out www.test.net.csr

Signature du CSR avec notre CA

openssl ca -in www.test.net.csr -out www.test.net.crt
On peut copier le certificat www.test.net.crt dans /etc/ssl/certs et la clef privée www.test.net.key dans /etc/ssl/private sur le serveur web.

Tester le nouveau certificat avec Apache

Installer Apache:
apt-get install apache2
Activer le module ssl:
a2enmod ssl
Activer le virtual host default-ssl:
a2ensite default-ssl

Il faut maintenant indiquer le chemin vers la clef et le certifcat que nous avons créés auparavant.
Dans /etc/apache2/sites-available/default-ssl, on remplace:
SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key

Par:
SSLCertificateFile /etc/ssl/certs/www.test.net.crt
SSLCertificateKeyFile /etc/ssl/private/www.test.net.key

On redémarre apache:
/etc/init.d/apache2 restart

Si on se connecte en https sur notre serveur web on reçoit un avertissement. Si l’on veut éviter ce problème, il suffit d’importer le CA que nous avons créé dans l’article précédent sur notre navigateur.
Sur Firefox on peut l’installer via:
Edit -> Préférences -> Advanced -> View Certificates -> Import

Commandes openssl utiles

Afficher tout ce qui se trouve dans le certificat:
openssl x509 -in www.test.net.crt -text
Afficher le sujet du certificat:
openssl x509 -in www.test.net.crt -noout -subject
Afficher l’issuer du certificat:
openssl x509 -in www.test.net.crt -noout -issuer

Commentaires

Posts les plus consultés de ce blog

Dossier de base sur un serveur Windows

Dossier de base Pour les utilisateurs de domaine Windows AD, il est possible de créer un dossier de base via l’activation du service dossier utilisateur. Ainsi, chaque utilisateur du domaine disposera d’un dossier personnel pour le stockage et la sauvegarde de ses fichiers sur le serveur de partage. Le dossier utilisateur permet de plus aux administrateurs de sauvegarder les fichiers de chacun des utilisateurs.

Le protocole ICMP | Echo Echo Response : Le ping | Le TTL

Le protocole ICMP Introduction Nous avons pu remarquer dans les chapitres précédents qu'IP était essentiellement accès sur les fonctions d'adressage et de routage. Il est configuré pour fonctionner comme si aucun problème ne pouvait survenir sur le réseau ( perte de datagrammes, congestion, problème de routage, etc .). Si un problème survient, sa solution est expéditive :  il ne route pas  ! Il a tout juste accepté de prendre en charge les problèmes de fragmentation ! Ce mode de fonctionnement n'est pas un problème en soi ( il suffit de regarder la notoriété et l'implantation d'IP ! ). Mais il est nécessaire de pouvoir dans certains cas informer les émetteurs du devenir de leurs datagrammes. C'est le rôle d' ICMP  ( I nternet  C ontrol  M essage  P rotocol) qui, comme son nom l'indique, est un  protocole d'information du contrôle de réseau . ICMP ne résoud rien, ou du moins pas grand chose, il informe ! Lorsque certains problèmes de...

énigme : Le mystère de deux portes : deux gardes, un dit la vérité, un ment

 Le mystère de deux portes : deux gardes, un dit la vérité, un ment Énoncé  Vous êtes devant deux gardiens : l'un qui dit la vérité et l'autre qui ment toujours.  Vous devez choisir l'une des deux portes : l'une vers la liberté et l'autre vers la prison.  Vous ne pouvez poser qu'une seule question à l'un des gardes. Alors vous devez choisir ! Solution  Un problème possible pour distinguer le vrai du faux et déterminer quelle porte offre la liberté.  Pour déterminer quel tuteur dit la vérité ou ment, il est nécessaire de poser des questions à l'un en impliquant l'autre.  C'est le principe de l'encapsulation : « Si je demande au gardien2 si cette porte offre la liberté, que va-t-il me dire ?  Dans ce principe, vous impliquez l'autre gardien dans votre question, on peut donc en déduire que la réponse est  Qu'est-ce que donné par un menteur est donné par celui qui dit la vérité ! Décryptons  Si je demande à l’autre gardien si cette porte ...