Guide étape par étape pour activer HTTPS ou SSL de manière correcte sur le serveur Apache Tomcat - Port 8443

Publié: 2021-04-03

Cela fait presque 12 ans que j'ai commencé à utiliser Apache Tomcat. Je crois que lorsque j'ai fait mon premier projet de premier cycle, c'était sur Tomcat version 1.x . Maintenant, c'est déjà sur la version 8.0 . La plupart du temps, j'ai été en contact avec Tomcat Server dans ma vie professionnelle quotidienne, je ne peux tout simplement pas m'en passer.

Sur Crunchify nous avons déjà publié près de 40 articles sur Apache Tomcat . Dans la plupart des tutoriels, j'ai exécuté le serveur sur le port 8080 qui est le port par défaut configuré dans le fichier server.xml .

Dans ce didacticiel, nous passerons en revue toutes les étapes en détail sur how to enable HTTPS/SSL on Apache Tomcat Server .

Commençons:

Étape 1. Créer un magasin de clés

keytool : nous allons générer une clé sécurisée à l'aide de la commande keytool - qui est un outil de gestion des clés et des certificats.

Commander:

Le fichier sera créé dans le dossier /Users/Shared .

J'utilise Mac OS X, alors remplacez votre chemin en conséquence si vous êtes sous Windows. J'ai utilisé le mot de passe 123456 .

Générer crunchify.keystore pour la configuration HTTPS d'Apache Tomcat - Crunchify Tips

Étape 2. Créer une demande de signature de certificat auto-signé

Entrez le mot de passe : 123456

Étape 3. Vérifions d'abord que tomcat s'exécute sur le port 8080 via HTTP.

Start le serveur Tomcat à l'aide de la commande : <tomcat_home>/bin/ startup.sh .

Assurez-vous que vous êtes au bon emplacement du chemin tomcat.

Cliquez sur URL : http://localhost:8080 pour vous assurer que le serveur est opérationnel.

Assurez-vous qu'Apache Tomcat est en cours d'exécution

Étape 4. Vérifiez maintenant l'instance de Tomcat sur le port 8443 via HTTPS.

  • Vérifiez maintenant le port 8443 (URL HTTPS/SSL).
  • Cliquez sur l'URL : https://localhost:8443
  • Vous devriez voir un message d'erreur. La page ne devrait pas se charger du tout.

Le démarrage du serveur Apache Tomcat échoue sans le certificat approprié

Étape-5. Mettre à jour le fichier /conf/server.xml

Comme nous avons généré une demande de keystore et de signature de certificat ci-dessus, nous devons indiquer à tomcat de l'utiliser.

  • Ouvrez le fichier server.xml qui se trouve dans le <tomcat_home>/conf/ et modifiez les paramètres.
  • Dans notre cas, il s'agit du dossier /Users/Shared/apache-tomcat-9.0.30/conf .

Ajoutez la section ci-dessous directement au fichier server.xml :

  • Ici, le mot de passe est 123456 que j'ai utilisé à Step-1 .
  • Protocole : HTTP/1.1

Activer HTTPS dans le fichier server.xml pour Apache Tomcat

Enregistrer le fichier. Ensuite, nous allons arrêter et démarrer Tomcat Server.

Étape-6. Arrêtez et démarrez Apache Tomcat.

  • bash-3.2$ /Users/Shared/apache-tomcat-9.0.30/bin/shutdown.sh
  • bash-3.2$ /Users/Shared/apache-tomcat-9.0.30/bin/startup.sh

Étape-7. Vérifiez l'URL et la certification HTTPS : https://localhost:8443

Maintenant, appuyez à nouveau sur l'URL sécurisée HTTPS pour vérifier que votre page a été chargée avec succès.

Chrome:

  • Par défaut, Chrome Blocks all insecure HTTPS .
  • Activer l' Chrome flag pour charger des certificats non valides pour les ressources chargées à partir de localhost
    1. Allez sur Chrome
    2. Ouvrir l'onglet
    3. tapez : chrome://flags/#allow-insecure-localhost
    4. Activer le drapeau à partir du menu déroulant
    5. Relancez Chrome

Google Chrome allow-insecure-localhost - Apache Tomcat

Safari et Mozilla Firefox :

  • Accept invalid certificate error et visitez le site.

Vous devriez voir la page Apache Tomcat se charger via HTTPS sur le port 8443

Apache Tomcat s'exécutant sur le port 8443 via HTTPS

Vous êtes prêt. Avez-vous remarqué red padlock ? Ne t'inquiète pas. Nous n'avons pas acheté de certificat SSL auprès de Verisign ou de Comodo.

Dans un environnement de production, vous ne verrez peut-être pas ce signe de croix rouge.

Cliquez sur le certificat dans le navigateur et notre certificat auto-signé par défaut devrait être valid for 90 jours.

Découvrez le certificat Crunchify que nous avons créé à l'étape 1

Point bonus :

Comment vérifier le cert content aide de la commande keytool ?

Résultat: