Parfois, nous pouvons avoir besoin d'implémenter un certificat SSL dans tomcat pour les projets Java. L'implémentation de SSL dans Tomcat est quelque peu différente de l'implémentation dans des serveurs Web tels que Nginx, Apache. Dans cet article, nous allons apprendre à installer le certificat SSL sur tomcat. Nous supposons que vous avez déjà configuré l'environnement Java et que le serveur tomcat est en cours d'exécution.
Créer un magasin de clés
Java fournit JKS également connu sous le nom de Java KeyStore en tant que référentiel de certificats de sécurité. JDK et JRE fournissent tous deux un outil utilitaire de ligne de commande keytool pour créer et gérer Keystore. Exécutez la commande suivante pour créer un KeyStore.
$ keytool -genkey -alias tomcat.linuxways.com -keyalg RSA -keystore /etc/pki/keystore
Créer un CSR
Si vous envisagez d'installer un certificat auto-signé, vous pouvez éviter cette étape. Si vous souhaitez installer des certificats SSL achetés, vous devez créer un fichier CSR.
$ keytool -certreq -keyalg RSA -alias tomcat.linuxways.com -file tomcat.csr -keystore /etc/pki/keystore
Vous serez invité à fournir un mot de passe Keystore. Une fois le mot de passe soumis, un fichier CSR sera généré. Utilisez ce fichier CSR pour acheter un certificat SSL signé par une autorité de certification.
Obtenir un certificat SSL signé par une autorité de certification
Une fois le certificat délivré par l'AC, vous disposerez des fichiers suivants. Un domaine (tomcat.linuxways.com) est pris par exemple.
- tomcat.linuxways.com (certificat émis par l'autorité de certification)
- root.crt (certificats racine)
- intermediate.crt (certificats intermédiaires)
Installer le certificat
Importez le certificat signé par l'autorité de certification à l'aide de la commande suivante.
$ keytool -import -alias tomcat.linuxways.com -keystore /etc/pki/keystore -trustcacerts -file path-to-certificate/tomcat.linuxways.com.crt
Où chemin d'accès au certificat est le répertoire des certificats et tomcat.linuxways.com.crt est le certificat SSL signé par l'autorité de certification.
Installer le certificat racine
Importez le certificat racine à l'aide de la commande suivante.
$ keytool -import -alias root -keystore /etc/pki/keystore -trustcacerts -file path-to-certificate/root.crt
Où root.crt est le fichier de certificat racine.
Installer le certificat intermédiaire
Exécutez la commande suivante pour importer des fichiers de certificat intermédiaires.
$ keytool -import -alias intermediateca -keystore /etc/pki/keystore -trustcacerts -file path-to-certificate/intermediateca.crt
Où intermediateca.crt est le fichier de certificat intermédiaire.
Modifier la configuration de Tomcat
Après avoir importé tous les certificats requis, il est maintenant temps de configurer tomcat Keystore. Accédez au dossier d'installation de tomcat et recherchez le server.xml dossier. Mettez à jour le fichier de configuration avec le contenu suivant.
$ vi tomcat-installation-directory/config/server.xml
Exemple.
$ vi /opt/tomcat/config/server.xml <Connector port="4443" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="4443" SSLEnabled="true" scheme="https" secure="true" sslProtocol="TLS" keystoreFile="/etc/pki/keystore" keystorePass="_password_" />
Pour la démonstration, le port 4443 est utilisé. Vous pouvez sélectionner n'importe quel port en fonction de votre environnement.
Redémarrer le chat
L'installation des certificats est terminée. Redémarrez le serveur Tomcat pour refléter les modifications.
$ path-to-tomcat/bin/shutdown.sh
$ path-to-tomcat/bin/startup.sh
Exemple,
$ /opt/tomcat/bin/shutdown.sh
$ /opt/tomcat/bin/startup.sh
Vérifier le certificat
Accédez maintenant à l'URL du serveur Tomcat à l'aide de n'importe quel navigateur pour vérifier les certificats.
https://tomcat-server:<Port>
Exemple,
https://tomcat.linuxways.com:4443
Conclusion
Dans cet article, nous avons appris à générer des fichiers CSR et à installer des certificats SSL signés par une autorité de certification dans Tomcat pour les projets Java.