Categories: Sécurité

Création d’un certificat SSL auto-signé

Si vous utilisez les technos Citrix (et bien d’autres), vous avez sûrement déjà eu besoin de créer un certificat SSL auto signé afin d’utiliser par exemple la gateway de la web interface… ou plus simplement utiliser les protocole https sur votre serveur web IIS ou Apache.

Évidemment, vous pouvez vous payer un certificat SSL, certifié valide par un organisme tiers. Mais le but premier de cet article est de détailler la démarche afin de pouvoir créer un certificat SSL, gratuitement, à des fins de test.

Il existe bien des manières de procéder mais dans mon cas je vais utiliser un outil appelé OpenSSL qui perment d’implémenter du SSL/TLS ainsi qu’une bibliothèque de cryptographie. Nous pourrons ainsi générer le certificat dont je vous parle.

Prérequis : Se procurer la librairie OpenSSL

Pour ce faire, on se rend sur le site suivant :

Et on récupère la dernière version en date.

Au passage, vous aurez également besoin de Microsoft Visual C++ 2008 Runtime.

Rendez-vous ici pour les récupérer :

Une fois tout ce petit monde installé, nous allons utiliser le « Prompt Command » de Windows Server afin de saisir les 3 lignes de commandes qui vont nous permettre de générer notre certificat SSL.

Etape 1 : Création de la clé privée

La création de la clé privée passe par l’utilisation de la commande « genrsa » permettant de générer votre clé privée avec l’agorithme RSA.

Selon les besoins, vous pouvez utiliser plus ou moins d’options avec cette ligne de commande.

Positionnez vous dans le répertoire C:\OpenSSL-Win32\bin et exécutez la commande openssl.exe.

Puis effectuez la commande suivante :

Détail des options :

  • genrsa : génération d’une clé avec l’algorithme RSA
  • -rand : réservoir de données aléatoires
  • -out : fichier de sortie
  • 2048 : taille de la clé, en bits
  • -des3 : indique la création d’une clé avec mot de passe (pass phrasee)

Dans toute architecture reposant sur un système de clé privé/public c’est la clé dite privée, celle que vous venez de générer doit rester secrète et vous ne devez pas communiquer à un tiers.

NB : Si vous avez l’erreur suivante :

  • WARNING: can’t open config file: /usr/local/ssl/openssl.cnf

Ouvrez le Command Prompt en mode Administrateur et exécutez d’abord la commande suivante.

  • set OPENSSL_CONF=C:\OpenSSL-Win32\bin\openssl.cfg

Etape 2 : Création d’une requête de certification

Pour créer la requête de certification, nous procédons comme suit.

OpenSSL va vous poser une succession de questions auxquelles il vous faudra répondre (avec plus ou moins d’exactitude) selon vos besoins.

Détail des options :

  • req : gestion des requêtes de certification
  • -new : nouvelle demande
  • -key : clé privée à utiliser
  • -out : fichier de sortie
Au passage, nous pouvons en profiter pour vérifier que les différents fichiers que vous avez créé jusqu’ici sont bien là.
Etape 3 : Auto-signature du certificat

Pour signer le certificat, nous allons utiliser la commande x509.
Évidemment dans chacun des cas où on vous demande le password, celui-ci doit correspondre à celui que vous avez saisi à l’étape 1.
Détail des options :
  • x509 : gestion des certificats
  • -req : pour passer un certificat
  • -days : validité du certficat, en jours
  • -in : fichier contenant la demande de certification
  • -signkey : auto-signature
  • -out : nom du certificat de sortie
Notre certificat est correctement généré :
Conclusion

On dispose maintenant d’un certificat auto-signé qui peut être utilisé avec divers services, comme Apache par exemple pour sécuriser un site Web et permettre l’utilisation du protocole https. Toutefois, lors de l’utilisation sur un site Web, le navigateur affichera un message d’avertissement sur la connexion en HTTPS. Ceci est du au fait que, comme son nom l’indique, le certificat utilisé est auto-signé, c’est à dire non certifié par une autorité de confiance telle que Verisign par exemple.

A venir un article pour l’utilisation sur une Citrix Secure GateWay (XenApp 6.5).

Lire aussi :

Share
Published by
thibault

Recent Posts

Google Chrome bloque uBlock Origin : Quand la sécurité masque des intérêts commerciaux

Google Chrome bloque uBlock Origin : Quand la sécurité masque des intérêts commerciaux Depuis début…

4 semaines ago

Vie privée préservée : l’Assemblée rejette les portes dérobées

Vie privée préservée : l'Assemblée rejette les portes dérobées L'Assemblée nationale française rejette la mise…

4 semaines ago

Microsoft abandonne Remote Desktop Connection au profit de la Windows App

Microsoft abandonne Remote Desktop Connection au profit de la Windows App Microsoft a récemment annoncé…

1 mois ago

Google contraint de vendre Chrome après une décision antitrust

Google contraint de vendre Chrome après une décision antitrust Le département américain de la Justice…

1 mois ago

L’évolution de la technologie et le déclin des plateformes numériques

Illustration - Image générée par IA L'avancement technologique a radicalement transformé notre façon de communiquer,…

1 mois ago

Discord prépare son entrée en Bourse : une nouvelle ère pour la plateforme des gamers

Depuis sa création en 2015, Discord est devenue une plateforme incontournable dans le monde du…

1 mois ago