L’outil mkcert permet de générer des certificats SSL pour un environnement local en seulement quelques lignes de commande.

Je passe l’installation de l’outil en lui même dépendant du système comme Linux ou macOS.

La première étape, installer le certificat racine dans les truststores système et navigateur pour valider le certificat en local :

mkcert -install

Puis on peut générer un certificat pour du local :

mkcert "local.mygroup.fr" localhost 127.0.0.1 ::1

Il est possible d’utiliser l’option -pkcs12 pour créer un keystore utilisable par Java. Si on l’a oublié, il est possible de construire ce keystore avec la commande :

openssl pkcs12 -inkey localhost-key.pem -in localhost.pem -export -out localhost.pfx

Il est possible d’ajouter un connecteur Tomcat pour exécuter Tomcat en HTTPS sans erreur de certificat :

    <Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
               maxThreads="150" SSLEnabled="true">
        <SSLHostConfig>
            <Certificate certificateKeystoreFile="conf/local.mygroup.fr+3.p12"
                         type="RSA" />
        </SSLHostConfig>
    </Connector>

Sources :