Я не могу найти, как я могу получить запись и прочитать разрешение в папку кота.
Я следовал учебному руководству DigitalOcean при установке Tomcat. Единственная вещь, которую я сделал отличающийся, состоит в том, что я использовал Java 8 вместо 7, но я не думаю, что это вызывает проблему.
Когда я вхожу в менеджера по веб-приложению кота и загружаю войну, я получаю следующую ошибку:
СБОЙ - Развертывает Неудавшуюся Загрузку, Исключение: java.io. FileNotFoundException:/opt/tomcat/webapps/SimpleServlet.war (Отклоненное разрешение)
Когда я использую Filezilla для соединения с EC2, и я хочу бросить файл в папку веб-приложений:
Ошибка:/opt/tomcat/webapps/SimpleServlet.war: открытый для записи: разрешение отклонено
Ошибка: Передача файлов перестала работать
Вывод ls -la /opt/tomcat/webapps
:
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
но это - структура папок, которая видна в FileZilla
На учебном руководстве я выполнил этот шаг:
Затем создайте нового пользователя кота. Мы сделаем этого пользователя членом группы кота с корневым каталогом/opt/tomcat (где мы установим Tomcat), и с оболочкой/bin/false (таким образом, никто не сможет войти в учетную запись):
sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat
Это могло быть проблемой?
/opt/tomcat
, как объявляют, корневой каталог tomcat
пользователь, но принадлежит root
пользователь (с tomcat
пользователь, не имеющий полномочия записи).
Вычищение учебного руководства, особенно раздел полномочий, я смешал чувства к качеству учебного руководства. Это говорит о "giv [луг] пользовательский доступ для записи кота к conf каталогу" при изменении полномочий папки. Наличие полномочий записи для пользователя сервера веб-приложения к программному обеспечению работало, кажется разумным для производственного использования (взломщик, использующий процесс кота, не будет в состоянии изменить программное обеспечение), это будет также препятствовать тому, чтобы Вы развернули приложения от скручивания жгутов менеджер по веб-приложению кота.
я пошел бы для установки tomcat
как webapps
группа:
chgrp -R tomcat /opt/tomcat/webapps
и когда необходимо будет развернуть новые приложения, добавьте полномочия записи для той группы:
chmod -R g+w /opt/tomcat/webapps
, который Вы удаляете снова после развертывания:
chmod -R g-w /opt/tomcat/webapps
(необходимо будет выполнить те команды с полномочиями суперпользователя, так префикс sudo
по мере необходимости). Это также соответствовало бы соображения HowTo безопасности Tomcat.