GNU/Linux >> Tutoriels Linux >  >> Cent OS

Comment installer Tomcat 9 sur CentOS 8

Apache Tomcat est une implémentation open source des technologies Java Servlet, JavaServer Pages, Java Expression Language et Java WebSocket. C'est l'un des serveurs d'applications et Web les plus largement adoptés dans le monde aujourd'hui. Tomcat est simple à utiliser et dispose d'un solide écosystème de modules complémentaires.

Ce tutoriel explique comment installer Tomcat 9.0 sur CentOS 8.

Installation de Java #

Tomcat 9 nécessite Java SE 8 ou version ultérieure. Nous allons installer OpenJDK 11, l'implémentation open source de la plate-forme Java.

Exécutez la commande suivante en tant qu'utilisateur root ou utilisateur avec les privilèges sudo pour installer Java :

sudo dnf install java-11-openjdk-devel

Une fois l'installation terminée, vérifiez-la en vérifiant la version de Java :

java -version

Le résultat devrait ressembler à ceci :

openjdk version "11.0.5" 2019-10-15 LTS
OpenJDK Runtime Environment 18.9 (build 11.0.5+10-LTS)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.5+10-LTS, mixed mode, sharing)

Création d'un numéro d'utilisateur système

L'exécution de Tomcat sous l'utilisateur root présente un risque de sécurité. Nous allons créer un nouvel utilisateur système et un groupe avec le répertoire personnel /opt/tomcat qui exécutera le service Tomcat. Pour cela, saisissez la commande suivante :

sudo useradd -m -U -d /opt/tomcat -s /bin/false tomcat

Téléchargement de Tomcat #

La distribution binaire de Tomcat est disponible au téléchargement à partir de la page de téléchargement de Tomcat.

Au moment de la rédaction, la dernière version de Tomcat est 9.0.30 . Avant de passer à l'étape suivante, consultez la page de téléchargement de Tomcat 9 pour voir si une version plus récente est disponible.

Téléchargez le fichier zip Tomcat avec wget au /tmp répertoire :

VERSION=9.0.30wget https://www-eu.apache.org/dist/tomcat/tomcat-9/v${VERSION}/bin/apache-tomcat-${VERSION}.tar.gz -P /tmp

Une fois le téléchargement terminé, extrayez le fichier tar dans le /opt/tomcat répertoire ::

sudo tar -xf /tmp/apache-tomcat-${VERSION}.tar.gz -C /opt/tomcat/

Tomcat est mis à jour régulièrement. Pour avoir plus de contrôle sur les versions et les mises à jour, nous allons créer un lien symbolique appelé latest , qui pointe vers le répertoire d'installation de Tomcat :

sudo ln -s /opt/tomcat/apache-tomcat-${VERSION} /opt/tomcat/latest

L'utilisateur système précédemment créé doit avoir accès au répertoire d'installation de tomcat. Modifiez la propriété du répertoire en utilisateur et groupe tomcat :

sudo chown -R tomcat: /opt/tomcat

Créez les scripts shell dans le bin répertoire exécutable :

sudo sh -c 'chmod +x /opt/tomcat/latest/bin/*.sh'

Ces scripts sont utilisés pour démarrer et arrêter Tomcat.

Création d'un fichier d'unité Systemd #

Au lieu de démarrer et d'arrêter manuellement le serveur Tomcat, nous allons le configurer pour qu'il s'exécute en tant que service. Ouvrez votre éditeur de texte et créez un tomcat.service fichier d'unité dans le /etc/systemd/system/ répertoire :

sudo nano /etc/systemd/system/tomcat.service

Collez le contenu suivant :

/etc/systemd/system/tomcat.service
[Unit]
Description=Tomcat 9 servlet container
After=network.target

[Service]
Type=forking

User=tomcat
Group=tomcat

Environment="JAVA_HOME=/usr/lib/jvm/jre"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom"

Environment="CATALINA_BASE=/opt/tomcat/latest"
Environment="CATALINA_HOME=/opt/tomcat/latest"
Environment="CATALINA_PID=/opt/tomcat/latest/temp/tomcat.pid"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"

ExecStart=/opt/tomcat/latest/bin/startup.sh
ExecStop=/opt/tomcat/latest/bin/shutdown.sh

[Install]
WantedBy=multi-user.target

Enregistrez et fermez le fichier.

Avertissez systemd qu'un nouveau fichier de service existe, en tapant :

sudo systemctl daemon-reload

Activez et démarrez le service Tomcat :

sudo systemctl enable --now tomcat

Vérifiez l'état du service :

sudo systemctl status tomcat

Le résultat doit indiquer que le serveur Tomcat est activé et en cours d'exécution :

● tomcat.service - Tomcat 9 servlet container
   Loaded: loaded (/etc/systemd/system/tomcat.service; enabled; vendor preset: disabled)
   Active: active (running) since Wed 2020-01-15 20:38:07 UTC; 30s ago
  Process: 3957 ExecStart=/opt/tomcat/latest/bin/startup.sh (code=exited, status=0/SUCCESS)
  ...

Configuration du pare-feu #

Si votre serveur est protégé par un pare-feu et que vous souhaitez accéder à l'interface tomcat depuis l'extérieur du réseau local, vous devez ouvrir le port 8080 .

Utilisez les commandes suivantes pour ouvrir le port nécessaire :

sudo firewall-cmd --permanent --zone=public --add-port=8080/tcpsudo firewall-cmd --reload
Généralement, lors de l'exécution de Tomcat dans un environnement de production, vous devez utiliser un équilibreur de charge ou un proxy inverse. Il est recommandé d'autoriser l'accès au port 8080 uniquement depuis votre réseau interne.

Configuration de l'interface de gestion Web Tomcat #

À ce stade, vous devriez pouvoir accéder à Tomcat avec un navigateur Web sur le port 8080 . L'interface de gestion Web n'est pas accessible car nous n'avons pas encore créé d'utilisateur.

Les utilisateurs et les rôles Tomcat sont définis dans le tomcat-users.xml fichier.

Si vous ouvrez le fichier, vous remarquerez qu'il est rempli de commentaires et d'exemples décrivant comment configurer le fichier.

sudo nano /opt/tomcat/latest/conf/tomcat-users.xml

Pour créer un nouvel utilisateur pouvant accéder à l'interface Web de Tomcat (manager-gui et admin-gui), modifiez le fichier comme indiqué ci-dessous. Assurez-vous de changer le nom d'utilisateur et le mot de passe pour quelque chose de plus sûr :

/opt/tomcat/latest/conf/tomcat-users.xml
<tomcat-users>
<!--
    Comments
-->
   <role rolename="admin-gui"/>
   <role rolename="manager-gui"/>
   <user username="admin" password="admin_password" roles="admin-gui,manager-gui"/>
</tomcat-users>

Par défaut, l'interface de gestion Web de Tomcat est configurée pour n'autoriser l'accès qu'à partir de l'hôte local.

Si vous avez besoin d'accéder à l'interface Web de n'importe où, ouvrez les fichiers suivants et commentez ou supprimez les lignes surlignées en jaune :

/opt/tomcat/latest/webapps/manager/META-INF/context.xml
<Context antiResourceLocking="false" privileged="true" >
<!--
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
-->
</Context>
/opt/tomcat/latest/webapps/host-manager/META-INF/context.xml
<Context antiResourceLocking="false" privileged="true" >
<!--
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
-->
</Context>

Veuillez noter qu'il n'est pas recommandé d'autoriser l'accès depuis n'importe où, car il s'agit d'un risque pour la sécurité.

Si vous souhaitez accéder à l'interface Web uniquement à partir d'une adresse IP spécifique, au lieu de commenter les blocs, ajoutez votre adresse IP publique à la liste.

Disons que votre IP publique est 41.41.41.41 et vous souhaitez autoriser l'accès uniquement à partir de cette adresse IP :

/opt/tomcat/latest/webapps/manager/META-INF/context.xml
<Context antiResourceLocking="false" privileged="true" >
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|41.41.41.41" />
</Context>
/opt/tomcat/latest/webapps/host-manager/META-INF/context.xml
<Context antiResourceLocking="false" privileged="true" >
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|41.41.41.41" />
</Context>

La liste des adresses IP autorisées est une liste séparée par une barre verticale | . Vous pouvez ajouter des adresses IP uniques ou utiliser des expressions régulières.

Une fois cela fait, redémarrez le service Tomcat pour que les modifications prennent effet :

sudo systemctl restart tomcat

Numéro d'installation de test

Ouvrez votre navigateur et tapez :http://<your_domain_or_IP_address>:8080

Une fois l'installation réussie, un écran semblable à celui-ci devrait apparaître :

Le tableau de bord du gestionnaire d'applications Web Tomcat vous permet de déployer, d'annuler le déploiement, de démarrer, d'arrêter et de recharger vos applications. Il est disponible à :http://<your_domain_or_IP_address>:8080/manager/html .

Le tableau de bord du gestionnaire d'hôtes virtuels Tomcat vous permet de créer, de supprimer et de gérer des hôtes virtuels Tomcat. Il est disponible à :http://<your_domain_or_IP_address>:8080/host-manager/html .


Cent OS
  1. Comment installer Java sur CentOS 8

  2. Comment installer Apache Tomcat 8 sur CentOS

  3. Comment installer GlassFish sur CentOS 7

  4. Comment installer Apache Tomcat sur CentOS 7

  5. Comment installer Tomcat 7 sur Centos ?

Comment installer Tomcat sur CentOS

Comment installer Tomcat 8 sur CentOS 7 (instances multiples)

Comment installer GlassFish sur CentOS 8

Comment installer Java JDK 8 sur CentOS 6

Comment installer Java JDK 8 sur CentOS 7

Comment installer Cassandra sur CentOS 7