Documentation => Documentation technique + interviews des acteurs du Libre => Discussion démarrée par: Animateur le juillet 16, 2023, 02:49:35 pm
Titre: [LJP-Infos] Créer une autorité de certification locale
Posté par: Animateur le juillet 16, 2023, 02:49:35 pm
[LJP-Infos] Créer une autorité de certification locale
Dans une vidéo récente j'ai expliqué la base des certificats, on avait vu comment valider le certificat créé comme autorité de certification. C'est la même chose que sur l'Internet, mais en local. C'est résume, mais on en est bien proche. Sauf que sur l'internet on n'a pas besoin de rajouter la première autorité.
Mais c'est normal on est en local et on valide les sites locaux. Il y en a marre que les sites qu'on crée localement ne sont jamais certifiés après cette vidéo c'est fini.
Vous allez voir comment créer une autorité de certification.
Vous pouvez même récupérer directement un script tout fait qu'il suffira d'utiliser pour créer toutes vos clefs.
Il faudra juste l'adapter à vos besoins. Comme c'est le même que j'utilise, il est rodé et fonctionnel.
Vous pouvez récupérer le script ici: https://drive.google.com/file/d/1OpjKd87pfXqoXfWGpOC2v9_gyYf1C_UW/view
# ########################################################################################## # # # *** Before execute this script *** # # ================================== # # # # # Copy actualy public cert in /usr/local/share/ca-certificates to validate your ca cert: # # cp /root/ca/loisel.loc.crt /usr/local/share/ca-certificates # # # # # Then update list of trusted certs: # # update-ca-certificates # # # # # Update script for your cert (Path) # # # Update data for you autority / clients # # # Don't forget to add "+x" attr to your script # # # # This script was created and given by LJP-Infos - https://www.youtube.com/c/LJPInfos # # - 2023/04/01 - # # # # ##########################################################################################
# Test inputs / return info if needed if [ $# -lt 4 ] then echo 'Usage: "script_name" <name_of_cert> <short_name> <domain> <IP_dest> optionnal <lenght_cert>' fi
# Set use / goto folder where clear cd /root/certs autority=loisel.loc
# Set lenght if not provide if [ $5 ] then longueur=$5 else longueur=1024 fi
# If cert exists if test -f "$1.crt" ; then echo "Cert $1.crt already exists, replace it? Y/n" read -rsn1 input if [ "$input" == "N" ] || [ "$input" == "n" ]; then echo "Creating canceled..." exit 0 fi fi
echo "END" echo "################################################################" echo "" echo "you can provide certs to your client:" echo " - Private key: /root/certs/$1.key" echo " - Cert signed by $autority: /root/certs/$1.crt" echo " - autosigned cert: /root/certs/$1-auto.crt to your client." echo " - keep or remove (if you want) csr file (csr is easy way to get info of cert)..." echo ""
Time code: 01:24 Mon environnement 04:06 Le script 05:54 Préparer l'autorité 11:13 Etude du script 24:20 On génère un certificat 26:32 Récuprer/intégrer les certificats 28:09 Vérifier les certificats 29:25 Informations sur le certificats 31:15 plus loin