OpenSSL en travaillant avec des certificats SSL, des clés privées et des CSR

OpenSSL en travaillant avec des certificats SSL, des clés privées et des CSR

OpenSSL est une boîte à outils open source robuste et complète qui implémente les protocoles SSL et TLS, ainsi qu'une bibliothèque de cryptographie à usage général. Il est largement utilisé pour gérer les certificats SSL / TLS, les clés privées et les demandes de signature de certificat (CSR) dans divers systèmes. Dans cet article, nous explorerons comment travailler avec les certificats SSL, les clés privées et les CSR en utilisant OpenSSL, ainsi que des exemples pour vous aider à comprendre chaque étape.

Introduction

  • Certificats SSL: Ces certificats numériques sont utilisés pour établir une connexion sécurisée entre un serveur et un client utilisant des protocoles SSL / TLS. Ils contiennent des informations sur le titulaire du certificat, l'émetteur de certificat et la clé publique.
  • Clés privées: Ce sont des clés cryptographiques utilisées dans le processus de poignée SSL / TLS pour sécuriser la connexion. Ils doivent être gardés secrètes et sécurisés.
  • CSRS: Une demande de signature de certificat est un message envoyé à une autorité de certificat (CA) pour demander un certificat numérique pour un serveur.

Installation d'OpenSSL

Avant de travailler avec OpenSSL, assurez-vous qu'il est installé sur votre système. Pour la plupart des distributions Linux, OpenSSL est préinstallé. Sinon, vous pouvez l'installer en utilisant le gestionnaire de packages. Par exemple:

  • Ubuntu / Debian: «Installation sudo apt-get openssl»
  • Centos / Fedora: 'sudo yum install opensssl'

Pour Windows, vous pouvez télécharger la dernière version depuis le site officiel: https: // www.OpenSSL.org /

Générer une clé privée

Pour créer une clé privée, utilisez la commande suivante:

OpenSSL Genpkey -Algorithm RSA -out private_key.pem -pkeyopt rsa_keygen_bits: 2048  

Cette commande génère une clé privée RSA 2048 bits et la sauve dans le private_key.fichier PEM.

Créer un RSE

Pour générer un RSR à l'aide de la clé privée créée précédemment, exécutez la commande suivante:

OpenSSL REQ -NEW -KEY PRIVATE_KEY.pem -out csr.pem  

Vous serez invité à saisir des informations sur votre organisation et votre serveur, comme le pays, l'État, la ville, le nom de l'organisation, le nom commun (nom de domaine) et l'adresse e-mail. Après avoir terminé les invites, la RSE sera enregistrée dans le RSE.fichier PEM.

Auto-signature d'un certificat SSL

Dans certains cas, vous pourriez avoir besoin d'un certificat auto-signé à des fins de test. Pour en créer un, utilisez la commande suivante:

OpenSSL X509 -req -in CSR.pem -Signkey private_key.pem -out self_signed_certificate.pem -days 365  

Cette commande crée un certificat SSL auto-signé avec une validité de 365 jours en utilisant le RSE fourni et la clé privée fournie.

Inspection des certificats SSL, des clés privées et des CSR

Pour afficher les détails d'un certificat SSL, utilisez:

OpenSSL X509 -in Certificat.pem -Text -Noout  

Pour inspecter une clé privée, utilisez:

OpenSSL RSA -in private_key.pem -Text -Noout  

Pour afficher une RSE, utilisez:

OpenSSL REQ -In CSR.pem -Text -Noout  

Formats de certificat de conversion

OpenSSL prend en charge les conversions de certificat, telles que la conversion d'un certificat PEM en format DER:

OpenSSL X509 -in Certificat.certificat de Der-Out-Form.der  

Cette commande convertit le certificat.fichier pem de Pem format à Der format et l'enregistre comme certificat.der.

Pour convertir un certificat DER au format PEM, utilisez:

OpenSSL X509 -Inform der -in Certificat.certificat de der -out.pem  

Cette commande convertit le certificat.der dossier de Der format à Pem format et l'enregistre comme certificat.pem.

Renouveler et révoquer les certificats SSL

Pour renouveler un certificat SSL, vous devez créer un nouveau RSE et le soumettre à l'autorité de certificat (CA). Suivez les étapes décrites dans les sections 3 et 4 pour générer une nouvelle clé privée (si nécessaire) et un nouveau RSE. Envoyez le nouveau RSE à votre CA, et ils vous fourniront un certificat SSL mis à jour.

Pour révoquer un certificat SSL, contactez votre autorité de certificat (CA) et fournissez-leur les détails nécessaires, tels que le numéro de série du certificat ou une copie du certificat. Le CA ajoutera ensuite le certificat à leur liste de révocation du certificat (CRL), qui informe les clients que le certificat n'est plus valide.

Conclusion

Dans cet article, nous avons couvert comment travailler avec les certificats SSL, les clés privées et les CSR en utilisant OpenSSL. Nous avons exploré comment générer des clés privées, créer des CSR, des certificats SSL auto-signalés, inspecter divers fichiers liés à la SSL, convertir les formats de certificat et renouveler ou révoquer les certificats SSL. Avec ces connaissances, vous pouvez gérer en toute confiance les certificats SSL pour vos projets, assurer des connexions sécurisées et cryptées entre les clients et les serveurs.