meta données pour cette page
Chiffrer avec OpenSSL
→ un site pour tester le niveau de chiffrement
→ un site permettant de choisir les ciphers à utiliser
Chiffrer et déchiffrer avec RSA
- Nous allons chiffrer et déchiffrer un fichier de petite taille avec du chiffrement asymétrique.
D'abord, créons notre paire de clés :
Openssl genrsa 4096 -aes256 -out > clef_secret.pem
Extraction de la clé publique qui sera utilisé lors du chiffrement :
openssl rsa -in clef_secret.pem -pubout -out public.pem
Voici notre fichier en question :
echo "Message lisible!" > fichier.txt
Chiffrons-le !
Openssl rsautl -encrypt -pubin -inkey public.pem -in fichier.txt -out mon-fichier.crypted
Déchiffrons-le !
openssl rsautl -decrypt -inkey secret.pem -in mon-fichier.crypted -out mon-fichier.txt
Gestion d'une autorité de certificat
- Générer la clé privé de l'AC :
Elle sera en RSA 2048 et protection par chiffrement aes256 :
openssl genrsa -aes256 -out key.pem 2048
Nous avons maintenant une paire de clé publique et privé
- Générerle certificat autocertifié de l'AC :
openssl req -new -key key.pem -days 3650 > certificat.csr
- Signer la demande de certificat pour 5 ans :
openssl x509 -req -days 1825 -in certificat.csr -signkey key.pem -out certificat+cle_privee.crt
Générer une paire de clé publique / privé
rien de plus simple :
openssl genrsa -out private-key.pem 2048
Pour récupérer la clé publique :
openssl rsa -pubout -in private-key.pem -out public-key.pem
Fournir des certificats au format pkcs12
Expliquer ce format
openssl pkcs12 -export -inkey key.pem -in cert.crt -out cert.pk12
- Lecture de la clé
openssl pkcs12 -in cert.pk12 -info
D'autres commandes
- Télécahrger le certificat d'un site web :
openssl s_client -showcerts -connect mon-site.com:443 2>/dev/null | openssl x509 -fingerprint -noout
- Obtenir le fingerprint du certificat :
openssl s_client -connect mon-site.com:443 2>/dev/null | openssl x509 -fingerprint -noout
- Liste des ciphers disponible:
openssl ciphers -V "ALL:COMPLEMENTOFALL"
- Dates de validité d'un certificat :
openssl s_client -connect mail.net-folio.net:465 2>/dev/null | openssl x509 -noout -dates
- Ouvrir une connexion en TLS1.0 :
echo QUIT |openssl s_client -connect junior.edumedia-scieces.com:443 -tls1