# Généré des certificats via la PKI interne de mini_risotto ## Génération des certificates sur le serveur Création la variable contenant la chain : ``` ``` Création d'une autorité avec le nom "AuthorityName" (le nom est un terme en CamelCase) : ``` server_name server_name AuthorityName service_chain ``` La création du fichier de CA est simple, il suffit d'utiliser la variable "service_ca_chain". Puis il faut créer le certificat avec un template qui contient : ``` %%get_certificate(%%domain_name_eth0, authority_name="AuthorityName") ``` Si l'autorité n'est pas gérer par le serveur courant, il faut précicer le nom du serveur responsable de l'autorité : ``` %%get_certificate(%%domain_name_eth0, authority_cn=%%server, authority_name="AuthorityName") ``` Enfin, le certificat peut avoir plusieurs nom de domaine, dans ce cas on peut le gérer par exemple en faisant : ``` %set %%extra_domainnames = [] %for %%idx in %%range(1, %%number_of_interfaces) %%extra_domainnames.append(%%getVar('domain_name_eth' + %%str(%%idx))) %end for %%get_certificate(%%domain_name_eth0, 'LDAP', extra_domainnames=%%extra_domainnames) ``` Enfin on peut récupérer la clef privée (attention APRÉS avoir récupérer le certificat) : ``` %get_private_key(%%domain_name_eth0, %%server) ``` Comme le certificat, l'autorité peut ne pas être de la responsabilité du serveur courant : ``` %get_private_key(%%domain_name_eth0, authority_cn=%%server, authority_name="ReverseProxy") ``` ## PKI sous Fedora Création des fichiers pour l'autorité "AuthorityName" pour le service "service" : ``` /etc/pki/ca-trust/source/anchors/ca_AuthorityName.crt /etc/pki/tls/certs/service.crt /etc/pki/tls/private/service.key ```