21 exemples OpenSSL pour vous aider dans le monde réel

Créer, gérer & Convertir des certificats SSL avec OpenSSL


L’une des commandes les plus populaires de SSL pour créer, convertir, gérer les certificats SSL sont OpenSSL.

Il y aura de nombreuses situations où vous devrez traiter OpenSSL de différentes manières, et ici je les ai répertoriées pour vous comme une feuille de triche pratique.

Dans cet article, je vais parler des commandes OpenSSL fréquemment utilisées pour vous aider dans le monde réel.

Quelques abréviations liées aux certificats.

  • SSL – Secure Socket Layer
  • CSR – Demande de signature de certificat
  • TLS – Transport Layer Security
  • PEM – Confidentialité améliorée du courrier
  • DER – Distinguished Encoding Rules
  • SHA – Algorithme de hachage sécurisé
  • PKCS – Normes de cryptographie à clé publique

Remarque: Cours d’opération SSL / TLS serait utile si vous ne connaissez pas les termes.

Créer une nouvelle clé privée et une demande de signature de certificat

openssl req -out geekflare.csr -newkey rsa: 2048 -nodes -keyout geekflare.key

La commande ci-dessus générera un fichier de clé CSR et RSA 2048 bits. Si vous avez l’intention d’utiliser ce certificat dans Apache ou Nginx, vous devez envoyer ce fichier CSR à l’autorité émettrice du certificat, et ils vous donneront un certificat signé principalement au format der ou pem que vous devez configurer dans le serveur Web Apache ou Nginx.

Créer un certificat auto-signé

openssl req -x509 -sha256 -nodes -newkey rsa: 2048 -keyout gfselfsigned.key -out gfcert.pem

La commande ci-dessus générera un certificat auto-signé et un fichier de clés avec RSA 2048 bits. J’ai également inclus sha256 car il est considéré comme le plus sûr pour le moment.

Pointe: par défaut, il générera un certificat auto-signé valide pour seulement un mois, vous pouvez donc envisager de définir le paramètre –days pour étendre la validité.

Ex: avoir auto-signé valable deux ans.

openssl req -x509 -sha256 -nodes -days 730 -newkey rsa: 2048 -keyout gfselfsigned.key -out gfcert.pem

Vérifier le fichier CSR

openssl req -noout -text -in geekflare.csr

La vérification est essentielle pour s’assurer que vous envoyez la RSE à l’autorité émettrice avec les détails requis.

Créer une clé privée RSA

openssl genrsa -out private.key 2048

Si vous avez juste besoin de générer une clé privée RSA, vous pouvez utiliser la commande ci-dessus. J’ai inclus 2048 pour un cryptage plus fort.

Supprimer la phrase secrète de la clé

openssl rsa -in certkey.key -out nopassphrase.key

Si vous utilisez une phrase secrète dans le fichier de clés et utilisez Apache, à chaque démarrage, vous devez saisir le mot de passe. Si vous êtes ennuyé de saisir un mot de passe, vous pouvez utiliser ci-dessus openssl rsa -in geekflare.key -check pour supprimer la clé de mot de passe d’une clé existante.

Vérifier la clé privée

openssl rsa -in certkey.key –check

Si vous doutez de votre fichier de clé, vous pouvez utiliser la commande ci-dessus pour vérifier.

Vérifier le fichier de certificat

openssl x509 -in certfile.pem -text –noout

Si vous souhaitez valider des données de certificat comme CN, OU, etc., vous pouvez utiliser une commande ci-dessus qui vous donnera les détails du certificat.

Vérifiez l’autorité de signature du certificat

openssl x509 -in certfile.pem -noout -issuer -issuer_hash

L’autorité émettrice du certificat signe chaque certificat et au cas où vous auriez besoin de les vérifier.

Vérifier la valeur de hachage d’un certificat

openssl x509 -noout -hash -in bestflare.pem

Convertir DER au format PEM

openssl x509 –inform der –in sslcert.der –out sslcert.pem

Habituellement, l’autorité de certification vous donnera un certificat SSL au format .der, et si vous devez les utiliser au format apache ou .pem, la commande ci-dessus vous aidera.

Convertir le format PEM au format DER

openssl x509 –outform der –in sslcert.pem –out sslcert.der

Si vous devez changer le format .pem en .der

Convertir le certificat et la clé privée au format PKCS # 12

openssl pkcs12 –export –out sslcert.pfx –inkey key.pem –in sslcert.pem

Si vous avez besoin d’utiliser un certificat avec l’application java ou avec tout autre qui n’accepte que le format PKCS # 12, vous pouvez utiliser la commande ci-dessus, qui générera un seul certificat contenant des pfx & fichier clé.

Pointe: vous pouvez également inclure le certificat de chaîne en passant –chain comme ci-dessous.

openssl pkcs12 –export –out sslcert.pfx –inkey key.pem –in sslcert.pem -chain cacert.pem

Créer une CSR à l’aide d’une clé privée existante

openssl req –out certificate.csr –key existing.key –new

Si vous ne souhaitez pas créer une nouvelle clé privée à la place en utilisant une clé existante, vous pouvez utiliser la commande ci-dessus.

Vérifier le contenu du certificat de format PKCS12

openssl pkcs12 –info –nodes –in cert.p12

PKCS12 est au format binaire, vous ne pourrez donc pas afficher le contenu dans le bloc-notes ou un autre éditeur. La commande ci-dessus vous aidera à voir le contenu du fichier PKCS12.

Convertir le format PKCS12 en certificat PEM

openssl pkcs12 –in cert.p12 –out cert.pem

Si vous souhaitez utiliser le format pkcs12 existant avec Apache ou simplement au format pem, cela sera utile.

Tester le certificat SSL d’une URL particulière

openssl s_client -connect yoururl.com:443 –showcerts

J’utilise cela assez souvent pour valider le certificat SSL d’une URL particulière du serveur. C’est très pratique pour valider les détails du protocole, du chiffrement et du certificat.

Découvrez la version OpenSSL

version openssl

Si vous êtes responsable de la sécurité d’OpenSSL, l’une des premières choses à faire est probablement de vérifier la version.

Vérifier la date d’expiration du certificat de fichier PEM

openssl x509 -noout -in certificate.pem -dates

Utile si vous prévoyez de mettre une surveillance pour vérifier la validité. Il vous montrera la date dans la syntaxe notBefore et notAfter. notAfter est celui que vous devrez vérifier pour confirmer si un certificat est expiré ou toujours valide.

Ex:

[[protégé par e-mail] opt] # openssl x509 -noout -in bestflare.pem -dates
pas avant= 4 juil 14:02:45 2015 GMT
pas après= 4 août 09:46:42 2015 GMT
[[protégé par e-mail] opter]#

Vérifier la date d’expiration du certificat de l’URL SSL

openssl s_client -connect secureurl.com:443 2>/ dev / null | openssl x509 -noout –enddate

Un autre utile si vous prévoyez de surveiller à distance la date d’expiration du certificat SSL ou une URL particulière.

Ex:

[[protégé par e-mail] opt] # openssl s_client -connect google.com:443 2>/ dev / null | openssl x509 -noout -enddate

pas après= 8 déc 00:00:00 2015 GMT

Vérifiez si SSL V2 ou V3 est accepté sur l’URL

Pour vérifier SSL V2

openssl s_client -connect secureurl.com:443 -ssl2

Pour vérifier SSL V3

openssl s_client -connect secureurl.com:443 –ssl3

Pour vérifier TLS 1.0

openssl s_client -connect secureurl.com:443 –tls1

Pour vérifier TLS 1.1

openssl s_client -connect secureurl.com:443 –tls1_1

Pour vérifier TLS 1.2

openssl s_client -connect secureurl.com:443 –tls1_2

Si vous sécurisez le serveur Web et devez valider si SSL V2 / V3 est activé ou non, vous pouvez utiliser la commande ci-dessus. Si activé, vous obtiendrez “LIÉ” autre “échec de la poignée de main.”

Vérifiez si le chiffrement particulier est accepté sur l’URL

openssl s_client -cipher ‘ECDHE-ECDSA-AES256-SHA’ -connect secureurl: 443

Si vous travaillez sur des résultats de sécurité et que les résultats des tests de plume montrent que certains des chiffrements faibles sont acceptés, vous pouvez valider la commande ci-dessus..

Bien sûr, vous devrez changer le chiffrement et l’URL contre lesquels vous souhaitez tester. Si le chiffre mentionné est accepté, vous obtiendrez “LIÉ” autre “échec de la poignée de main.”

J’espère que les commandes ci-dessus vous aideront à en savoir plus sur OpenSSL à gérer Certificats SSL pour votre site web.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map