Recherche de site Web

Comment installer Apache Tomcat dans RHEL 8


Apache Tomcat est un serveur Web open source, léger, puissant et largement utilisé, développé et maintenu par la Apache Foundation. Il s'agit d'une implémentation de Java Servlet, JavaServer Pages (JSP), Java Expression Language (EL) et Java WebSocket. et fournit un serveur HTTP Java pur pour exécuter des applications Web Java.

Cet article vous guidera tout au long de l'installation et de la configuration de Apache Tomcat 9 avec un accès à distance à l'interface Web sur RHEL 8 Linux.

Si vous souhaitez installer Tomcat sur RHEL/CentOS 7, suivez cet article pour installer Apache Tomcat sur RHEL/CentOS 7.

Étape 1 : Installation de Java sur RHEL 8

Pour installer Java sur RHEL 8, commencez par mettre à jour les packages système et installez la version disponible par défaut de Java 8 ou Java 11< en utilisant les commandes dnf suivantes, comme indiqué.

dnf update
dnf install java-1.8.0-openjdk-devel  	#install JDK 8
OR
dnf install java-11-openjdk-devel		#install JDK 11

Une fois l'installation terminée, vous pouvez vérifier la version Java installée sur le système à l'aide de la commande suivante.

java -version
Exemple de sortie
openjdk version "1.8.0_222"
OpenJDK Runtime Environment (build 1.8.0_222-b10)
OpenJDK 64-Bit Server VM (build 25.222-b10, mixed mode)

Étape 2 : Installation d'Apache Tomcat sur RHEL 8

Une fois JAVA installé sur le système, il est maintenant temps de télécharger la dernière version d'Apache Tomcat (c'est-à-dire 9.0.24). version stable récente au moment de la rédaction de cet article.

Si vous souhaitez vérifier la version, rendez-vous sur la page de téléchargement officielle d'Apache et vérifiez si une version plus récente est disponible au téléchargement.

  1. https://tomcat.apache.org/download-90.cgi

Vous pouvez également télécharger la dernière version d'Apache Tomcat à l'aide de la commande wget suivante et la configurer comme indiqué.

cd /usr/local
wget http://www-us.apache.org/dist/tomcat/tomcat-9/v9.0.24/bin/apache-tomcat-9.0.24.tar.gz
tar -xvf apache-tomcat-9.0.24.tar.gz
mv apache-tomcat-9.0.24 tomcat9

Remarque : Si une version plus récente d'Apache Tomcat est disponible, assurez-vous de remplacer le numéro de version ci-dessus par la dernière version.

Le serveur Apache Tomcat est maintenant déployé dans le répertoire /usr/local/tomcat9, vous pouvez vérifier le contenu en exécutant la commande pwd et répertorier également le contenu du répertoire.

pwd tomcat9/
ls -l tomcat9/

Ce qui suit est une description de chacun des sous-répertoires du répertoire d'installation de Apache Tomcat.

  • bin – contient les exécutables.
  • conf – contient les fichiers de configuration.
  • lib – stocke les fichiers de bibliothèque.
  • log – stocke les fichiers journaux.
  • temp – contient des fichiers temporaires.
  • webaaps : stocke les fichiers d'application Web.

Étape 3 : Exécuter Apache Tomcat sous Systemd dans RHEL 8

Pour gérer facilement le démon Apache Tomcat, vous devez l'exécuter en tant que service sous systemd (gestionnaire de système et de services). Le service s'exécutera avec les autorisations d'un utilisateur système appelé tomcat dont vous avez besoin pour le créer à l'aide de la commande useradd.

useradd -r tomcat

Une fois l'utilisateur tomcat créé, accordez-lui les autorisations et les droits de propriété sur le répertoire d'installation de Tomcat et tout son contenu à l'aide de la commande chown suivante.

chown -R tomcat:tomcat /usr/local/tomcat9
ls -l /usr/local/tomcat9

Ensuite, créez un fichier d'unité tomcat.service sous le répertoire /etc/systemd/system/ à l'aide de votre éditeur de texte préféré.

vi /etc/systemd/system/tomcat.service

Copiez et collez la configuration suivante dans le fichier tomcat.service.

[Unit]
Description=Apache Tomcat Server
After=syslog.target network.target

[Service]
Type=forking
User=tomcat
Group=tomcat

Environment=CATALINA_PID=/usr/local/tomcat9/temp/tomcat.pid
Environment=CATALINA_HOME=/usr/local/tomcat9
Environment=CATALINA_BASE=/usr/local/tomcat9

ExecStart=/usr/local/tomcat9/bin/catalina.sh start
ExecStop=/usr/local/tomcat9/bin/catalina.sh stop

RestartSec=10
Restart=always
[Install]
WantedBy=multi-user.target

Enregistrez le fichier, rechargez la configuration systemd pour appliquer les modifications récentes à l'aide de la commande suivante.

systemctl daemon-reload

Ensuite, démarrez le service tomcat, activez-le pour qu'il démarre automatiquement au démarrage du système et vérifiez l'état à l'aide des commandes suivantes.

systemctl start tomcat.service
systemctl enable tomcat.service
systemctl status tomcat.service

Tomcat utilise respectivement les ports 8080 et 8443 pour les requêtes HTTP et HTTPS. Vous pouvez également confirmer que le démon est opérationnel et écoute en vérifiant le port HTTP parmi tous les ports d'écoute du système à l'aide de la commande netstat.

netstat -tlpn

Si le service firewalld est en cours d'exécution, vous devez ouvrir les ports 8080 et 8443 avant d'accéder à l'interface Web de Tomcat, à l'aide de la commande firewall-cmd comme indiqué.

firewall-cmd --zone=public --permanent --add-port=8080/tcp
firewall-cmd --zone=public --permanent --add-port=8443/tcp
firewall-cmd --reload

Étape 4 : accéder à l'interface Web Apache Tomcat

Maintenant que vous avez installé, configuré et démarré Tomcat en tant que service et autorisé les requêtes au démon via le pare-feu, vous pouvez tester l'installation en essayant d'accéder à l'interface Web à l'aide de l'URL.

http://localhost:8080
OR
http://SERVER_IP:8080

Une fois que vous voyez la page affichée dans la capture d'écran, vous avez installé avec succès Tomcat.

Tomcat inclut une application Web appelée Manager utilisée pour déployer une nouvelle application Web à partir du contenu téléchargé d'un fichier WAR, déployer une nouvelle application Web, répertoriez les applications Web actuellement déployées et les sessions actuellement actives pour ces applications Web, et bien plus encore.

Il fournit également une application Host Manager utilisée pour gérer (créer, supprimer, etc.) des hôtes virtuels dans Tomcat.

Étape 5 : Activer l'authentification HTTP pour Tomcat Manager et Host Manager

Pour garantir un accès restreint aux applications Manager et Host Manager dans un environnement de production, vous devez configurer l'authentification HTTP de base dans le fichier /usr/local/tomcat9/conf. /tomcat-users.xml fichier de configuration.

vi /usr/local/tomcat9/conf/tomcat-users.xml

Copiez et collez la configuration suivante dans les balises et comme indiqué dans la capture d'écran. Cette configuration ajoute les rôles admin-gui et manager-gui à un utilisateur nommé « admin » avec un mot de passe de « tomhost@ 80”.

<role rolename="admin-gui,manager-gui"/> 
<user username="admin" password="tomhost@80" roles="admin-gui,manager-gui"/>

Enregistrez les modifications dans le fichier et quittez.

Étape 6 : Activer l'accès à distance à Tomcat Manager et Host Manager

Par défaut, l'accès aux applications Manager et Host Manager est limité au localhost, le serveur sur lequel Tomcat est installé et en cours d’exécution. Mais vous pouvez activer l'accès à distance à une adresse IP ou à un réseau spécifique, par exemple votre réseau local.

Pour activer l'accès à distance à l'application Manager, ouvrez et modifiez le fichier de configuration /opt/apache-tomcat-9.0.24/webapps/host-manager/META-INF/context.xml.

vi /usr/local/tomcat9/webapps/manager/META-INF/context.xml

Recherchez ensuite la ligne suivante.

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />

remplacez-le par ceci pour autoriser l'accès à Tomcat à partir de l'adresse IP 192.168.56.10.

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1 |192.168.56.10" />

Vous pouvez également autoriser l'accès à Tomcat depuis le réseau local 192.168.56.0.

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1 |192.168.56.*" />

ou autoriser l'accès à Tomcat depuis n'importe quel hôte ou réseau.

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1 |.*" />

Enregistrez ensuite les modifications dans le fichier et fermez-le.

De même, activez l'accès à distance à l'application Host Manager dans le fichier /usr/local/tomcat9/webapps/host-manager/META-INF/context.xml comme indiqué ci-dessus. .

Ensuite, redémarrez le service tomcat pour appliquer les modifications récentes.

systemctl restart tomcat.service

Étape 7 : accéder aux applications Web de Tomcat Manager

Pour accéder à l'application Web Tomcat Manager, vous pouvez cliquer sur le lien comme indiqué dans la capture d'écran ou utiliser l'URL.

http://localhost:8080/manager
OR
http://SERVER_IP:8080/manager

Il vous sera demandé de vous authentifier : saisissez le nom d'utilisateur et le mot de passe que vous avez créés précédemment pour vous connecter à l'application de gestion, comme indiqué dans la capture d'écran.

La capture d'écran suivante montre l'interface HTML de l'application Manager dans laquelle vous pouvez déployer une nouvelle application Web à partir du contenu téléchargé d'un fichier WAR, déployer une nouvelle application Web ou répertorier les applications existantes et bien plus encore.

Étape 8 : Accéder aux applications Web Tomcat Host Manager

Pour accéder au Host Manager, accédez à l'une des URL suivantes.

http://localhost:8080/host-manager
OR
http://SERVER_IP:8080/host-manager

Toutes nos félicitations! Vous avez installé et configuré avec succès Apache Tomcat sur votre serveur RHEL 8. Pour plus d'informations, consultez la documentation Apache Tomcat 9.0.