Я прочитал руководства Tomcat Apache, где они говорят, что Tomcat запускается как не-root, но я должен предоставить root права собственности, а группа tomcat должна иметь только разрешение на чтение. Дайте группе tomcat только разрешение на чтение, как я могу запустить службу без полномочий root? Разве это не противоречие?
Источник:
Tomcat should not be run under the root user. Create a dedicated user for the
Tomcat process and provide that user with the minimum necessary permissions
for the operating system. For example, it should not be possible to log on
remotely using the Tomcat user.
aking the Tomcat instances at the ASF as an example (where auto-deployment is
disabled and web applications are deployed as exploded directories), the
standard configuration is to have all Tomcat files owned by root with group
Tomcat and whilst owner has read/write privileges, group only has read and
world has no permissions. The exceptions are the logs, temp and work
directory that are owned by the Tomcat user rather than root.
Я запускаю службу в настоящее время как tomcat с разрешением 750 и владельцем tomcat: tomcat для папки / tomcat.
Вы должны различать два понятия:
tomcat
, группа tomcat
в вашем примере. Таким образом, Tomcat не может выполнять какие-либо операции, зарезервированные для пользователя корень (ср. возможности для неполного списка).root
(только владелец может изменять права доступа к файлу), группа должна tomcat
и удаление w
флаг разрешения для группы и другие.Так внутри $CATALINA_BASE
:
bin
, conf
и lib
,webapps
может быть доступен для чтения и записи, но это необходимо только во время развертывания приложения, после этого он может быть установлен только для чтения,temp
и work
должно быть читай пиши для процесса Tomcat (и, вероятно, просто процесса Tomcat).