ek lees die handleidings deur tomcat apache, waar hulle sê om tomcat as nie-root te laat loop, maar ek moet die eienaarskap aan root gee en die groep tomcat moet net die leestoestemming hê. Gee vir die groep tomcat slegs die leestoestemming, hoe kan ek die diens as nie-wortel begin? Is dit nie 'n teenstrydigheid nie?

Bron:

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.

ek bestuur die diens tans as tomcat met die toestemming 750 en eienaarskap tomcat:tomcat vir die gids /tomcat.

answer

Jy moet 'n onderskeid tref tussen twee konsepte:

  • Die geloofsbriewe van die Tomcat-proses. Dit moet as 'n onbevoorregte gebruiker loop: gebruiker tomcat, groep tomcatin jou voorbeeld. Op hierdie manier Tomcat kan enige instruksie uitvoer nie voorbehou aan gebruikers wortel (vgl vermoëns vir 'n onvolledige lys).
  • Die lêertoestemmings op Tomcat se lêers (vgl. Unix-modusse ). Die meeste van hierdie lêers kan maklik leesalleen vir die Tomcat-proses wees en moet waarskynlik. Dit word gewoonlik verkry deur die eienaar van hierdie lêers te stel op root(slegs die eienaar kan lêertoestemmings verander), die groep na tomcaten die wtoestemmingsvlag vir die groep en ander te verwyder.

So binne $CATALINA_BASE:

  • byna alle dopgehou moet leesalleen vir Tomcat wees, veral bin, confen lib,
  • webapps kan lees-skryf wees, maar dit is slegs nodig tydens toepassing-ontplooiing, daarna kan dit op leesalleen gestel word,
  • tempen workmoet lees-skryf wees vir die Tomcat-proses (en waarskynlik net die Tomcat-proses).