GNU/Linux >> Tutoriels Linux >  >> Debian

Comment installer Tomcat 8.5 sur Debian 9

Apache Tomcat est un serveur d'applications open source qui prend en charge les technologies Java Servlet, JavaServer Pages, Java Expression Language et Java WebSocket. C'est l'une des applications et des serveurs Web les plus utilisés dans le monde aujourd'hui.

Ce tutoriel vous montrera comment installer Apache Tomcat 8.5 sur Debian 9 et configurer l'interface de gestion Web de Tomcat.

Prérequis #

Avant de poursuivre ce didacticiel, assurez-vous que vous êtes connecté en tant qu'utilisateur disposant des privilèges sudo.

Nous allons télécharger le fichier zip Tomcat à l'aide de wgetutility et extraire l'archive téléchargée avec unzip.

Si ces utilitaires ne sont pas installés sur votre système, vous pouvez le faire en tapant :

sudo apt install unzip wget

Installer OpenJDK #

Tomcat 8.5 nécessite Java SE 7 ou version ultérieure. Pour installer le package OpenJDK par défaut à partir des dépôts Debian 9, exécutez la commande suivante :

sudo apt install default-jdk

Créer un numéro d'utilisateur Tomcat

L'exécution de Tomcat en tant qu'utilisateur root présente un risque de sécurité et n'est pas recommandée.

Pour créer un nouvel utilisateur système et un groupe pour notre instance Tomcat avec le répertoire d'accueil de /opt/tomcat exécutez la commande suivante :

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

Télécharger Tomcat #

Nous téléchargerons la dernière version de Tomcat 8.5.x à partir de la page de téléchargement de Tomcat. Au moment de la rédaction, la dernière version est la 8.5.37. Avant de télécharger le fichier zip, vous devez vérifier la page de téléchargement pour une nouvelle version.

Passez au /tmp répertoire et téléchargez le fichier zip avec wget :

cd /tmpwget http://www-us.apache.org/dist/tomcat/tomcat-8/v8.5.37/bin/apache-tomcat-8.5.37.zip

Une fois le téléchargement terminé, exécutez les commandes suivantes pour extraire le fichier zip et le déplacer vers /opt/tomcat répertoire :

unzip apache-tomcat-*.zipsudo mkdir -p /opt/tomcatsudo mv apache-tomcat-8.5.37 /opt/tomcat/

Pour avoir plus de contrôle sur les versions et les mises à jour de Tomcat, nous allons créer un lien symbolique nommé latest qui pointera vers le répertoire d'installation de Tomcat :

sudo ln -s /opt/tomcat/apache-tomcat-8.5.37 /opt/tomcat/latest

Plus tard, lorsque vous mettrez à niveau la version de Tomcat, vous pourrez simplement décompresser la version la plus récente et modifier le lien symbolique pour qu'il pointe vers la dernière version.

Changer le propriétaire du /opt/tomcat répertoire vers l'utilisateur et le groupe tomcat afin que l'utilisateur puisse avoir accès à l'installation de tomcat :

sudo chown -R tomcat: /opt/tomcat

faites également les scripts à l'intérieur de bin répertoire exécutable en émettant le chmod suivant commande :

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

Créer un fichier d'unité systemd #

Créez un nouveau tomcat.service fichier d'unité dans le /etc/systemd/system/ répertoire avec le contenu suivant :

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

[Service]
Type=forking

User=tomcat
Group=tomcat

Environment="JAVA_HOME=/usr/lib/jvm/default-java"
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

Avertissez systemd que nous avons créé un nouveau fichier d'unité et démarrez le service Tomcat en exécutant :

sudo systemctl daemon-reloadsudo systemctl start tomcat

Vérifiez l'état du service Tomcat en tapant :

sudo systemctl status tomcat
● tomcat.service
   Loaded: loaded (/etc/systemd/system/tomcat.service; disabled; vendor preset: enabled)
   Active: active (running) since Wed 2018-06-06 10:51:36 UTC; 3s ago
  Process: 21187 ExecStart=/opt/tomcat/latest/bin/startup.sh (code=exited, status=0/SUCCESS)
 Main PID: 21195 (java)
    Tasks: 44 (limit: 4915)
   CGroup: /system.slice/tomcat.service

S'il n'y a pas d'erreurs, vous pouvez activer le démarrage automatique du service Tomcat au démarrage :

sudo systemctl enable tomcat

Vous pouvez démarrer, arrêter et redémarrer Tomcat comme n'importe quel autre service d'unité systemd :

sudo systemctl start tomcatsudo systemctl stop tomcatsudo systemctl restart tomcat

Ajuster le pare-feu #

Si votre pare-feu s'exécute sur votre système Debian et que vous souhaitez accéder à l'interface Tomcat depuis l'extérieur de votre réseau local, vous devrez ouvrir le port 8080 :

sudo ufw allow 8080/tcp
Lors de l'exécution d'une application Tomcat dans un environnement de production, vous aurez très probablement un équilibreur de charge ou un proxy inverse et il est recommandé de restreindre l'accès au port 8080 uniquement à votre réseau interne.

Configurer l'interface de gestion Web Tomcat #

Maintenant que Tomcat est installé sur votre serveur Debian, l'étape suivante consiste à créer un utilisateur ayant accès à l'interface de gestion Web.

Les utilisateurs Tomcat et leurs rôles 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 vim /opt/tomcat/latest/conf/tomcat-users.xml

Nous allons définir notre nouvel utilisateur avec accès à l'interface web tomcat (manager-gui et admin-gui) dans le tomcat-users.xml 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 n'autorise l'accès qu'à partir de l'hôte local. Si vous souhaitez accéder à l'interface Web à partir d'une adresse IP distante ou de n'importe où, ce qui n'est pas recommandé car il s'agit d'un risque de sécurité, vous pouvez ouvrir les fichiers suivants et apporter les modifications suivantes.

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>

Si vous avez besoin d'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. Supposons que votre adresse IP publique soit 32.32.32.32 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|32.32.32.32" />
</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|32.32.32.32" />
</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.

Redémarrez le service Tomcat pour que les modifications prennent effet :

sudo systemctl restart tomcat

Tester l'installation #

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

Si l'installation réussit, un écran similaire au suivant apparaît :

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

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


Debian
  1. Comment installer MongoDB sur Debian 9

  2. Comment installer Nginx sur Debian 9

  3. Comment installer Nextcloud sur Debian 9

  4. Comment installer PostgreSQL 11 / 10 sur Debian 9 et Debian 8

  5. Comment installer Tomcat 8 sur Debian 8

Comment installer MariaDB sur Debian 11

Comment installer Nginx sur Debian 11

Comment installer Nagios sur Debian 10 / Debian 9

Comment installer Tomcat sur Debian 10 Buster

Comment installer Go sur Debian 11

Comment installer Apache Tomcat sur Debian 10