Je ne trouve pas comment obtenir des permissions d’écriture et de lecture dans le dossier tomcat.
J’ai suivi le tutoriel de DigitalOcean sur la configuration de Tomcat . La seule chose que j’ai faite est que j’ai utilisé Java 8 au lieu de 7, mais je ne pense pas que cela soit à l’origine du problème.
Lorsque je me connecte au gestionnaire d’applications Web tomcat et téléporte la guerre, l’erreur suivante s’affiche:
FAIL – Échec du téléchargement du déploiement, exception: java.io.FileNotFoundException: /opt/tomcat/webapps/SimpleServlet.war (autorisation refusée)
- avertissement lors du piping apt et grep
- Navigation dans les dossiers de plus de 100 000 images
- Impossible de mettre à niveau vers Ubuntu 14.04
- Meilleure façon de mettre à niveau LibreOffice 4 à 5 sur 14.04
- 14.04 kate editor ne montre aucun plugin (autorisation de configuration incorrecte même après une nouvelle installation)
Lorsque j’utilise Filezilla pour me connecter à EC2 et que je veux déposer le fichier dans le dossier webapps:
Erreur: /opt/tomcat/webapps/SimpleServlet.war: ouvert en écriture: autorisation refusée
Erreur: le transfert de fichier a échoué
La sortie de ls -la /opt/tomcat/webapps
est:
total 28 drwxr-xr-x 7 root root 4096 Nov 20 09:19 . drwxr-xr-x 9 root root 4096 Nov 28 16:34 .. drwxr-xr-x 14 root root 4096 Nov 28 16:34 docs drwxr-xr-x 6 root root 4096 Nov 28 16:34 examples drwxr-xr-x 5 root root 4096 Nov 28 16:34 host-manager drwxr-xr-x 5 root root 4096 Nov 28 16:34 manager drwxr-xr-x 3 root root 4096 Nov 28 16:34 ROOT
mais c’est la structure de dossier que l’on peut voir dans FileZilla
Sur le tutoriel, j’ai suivi cette étape:
Créez ensuite un nouvel utilisateur tomcat. Nous ferons de cet utilisateur un membre du groupe tomcat, avec un répertoire personnel de / opt / tomcat (où nous installerons Tomcat) et un shell de / bin / false (afin que personne ne puisse se connecter au compte):
sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat
Est-ce que ceci pourrait être le problème?
/opt/tomcat
est déclaré être le répertoire de base de l’utilisateur tomcat
, mais appartient à l’utilisateur root
(l’utilisateur tomcat
ne disposant pas de droits en écriture).
En nettoyant le didacticiel, en particulier la section des permissions, j’ai des sentiments mitigés quant à la qualité de ce didacticiel. Il parle de “donner à l’utilisateur tomcat un access en écriture au répertoire conf” lors de la modification des permissions du dossier. Ne pas avoir les permissions d’écriture pour l’utilisateur du serveur d’applications Web sur le logiciel exécuté semble raisonnable pour une utilisation en production (un attaquant exploitant le processus tomcat ne pourra pas modifier le logiciel), cela vous empêchera également de déployer des applications avec le gestionnaire d’applications Web tomcat. .
Je préférerais configurer tomcat
tant que groupe d’ webapps
:
chgrp -R tomcat /opt/tomcat/webapps
et lorsque vous avez besoin de déployer de nouvelles applications, ajoutez des permissions en écriture pour ce groupe:
chmod -R g+w /opt/tomcat/webapps
que vous supprimez à nouveau après le déploiement:
chmod -R gw /opt/tomcat/webapps
(vous devrez exécuter ces commandes avec les privilèges de super utilisateur, préfixez donc sudo
si nécessaire). Cela conviendrait également au HowTo de Considérations sur la sécurité Tomcat .