Tomcat7 인스턴스가 tomcat7 (또는 다른) 사용자로 실행되도록하는 권장 방법은 무엇입니까?
상단에 'su tomcat7'을 수정 tomcat7-instance/bin/startup.sh
하고 tomcat7-instance/bin/shutdown.sh
추가 할 수 있다고 가정합니다 .
Tomcat6에서는 환경 변수라고 생각합니다 TOMCAT6_USER
.
Tomcat7 인스턴스가 tomcat7 (또는 다른) 사용자로 실행되도록하는 권장 방법은 무엇입니까?
상단에 'su tomcat7'을 수정 tomcat7-instance/bin/startup.sh
하고 tomcat7-instance/bin/shutdown.sh
추가 할 수 있다고 가정합니다 .
Tomcat6에서는 환경 변수라고 생각합니다 TOMCAT6_USER
.
답변:
가장 일반적인 방법은 다음을 사용하여 표준 tomcat7
패키지 를 설치하고 apt-get
시작하는 것입니다.
sudo service tomcat7 start
/etc/default/tomcat7
이 발췌 부분에서 볼 수 있듯이 기본 사용자 및 그룹이 구성되어 있습니다.
# Run Tomcat as this user ID. Not setting this or leaving it blank will use the
# default of tomcat7.
TOMCAT7_USER=tomcat7
# Run Tomcat as this group ID. Not setting this or leaving it blank will use
# the default of tomcat7.
TOMCAT7_GROUP=tomcat7
/etc/default/tomcat7
않습니까?
편집 : 아래의 의견을 읽으십시오! 이 솔루션이 모든 상황에 적용되는 것은 아닙니다.
허용되는 답변은 훌륭하지만 Ubuntu 14.04에서 Tomcat 7을 실행 한 후 모든 것을 실행하기 위해 수행해야 할 추가 작업이 있습니다.
/etc/default/tomcat7
. 사용자와 그룹을 변경하면 더 이상 이전 사용자를 사용하여 서비스를 중지 할 수 없습니다.파일에서 사용자 및 그룹 변경 /etc/default/tomcat7
폴더 /var/log/tomcat7
와 모든 파일의 소유권을 변경해야 합니다. 모든 adm 사용자가 로그를 읽을 수 있도록 adm 그룹을 유지하는 것이 좋습니다.
sudo chown -R newuser:adm /var/log/tomcat7
폴더 소유권 변경 /var/lib/tomcat7/webapps
sudo chown -R newuser:newgroup /var/lib/tomcat7/webapps
Ubuntu 14.04의 포트 80/443에서 실행중인 경우 인증 파일의 소유권을 변경해야합니다.
sudo chown newuser /etc/authbind/byport/80
sudo chown newuser /etc/authbind/byport/443
작업 폴더의 소유권 변경
sudo chown newuser:adm /var/cache/tomcat7
sudo chown -R newuser:newgroup /var/cache/tomcat7/Catalina
구성 파일을 읽을 수있게 만드십시오. 여기에는 두 가지 옵션이 있습니다. 다음과 같이 tomcat7 그룹에 새 사용자를 추가하십시오.
sudo usermod -a -G tomcat7 newuser
... 또는 구성 파일의 소유권을 변경하십시오.
sudo chown -R :newgroup /var/lib/tomcat7/conf/*
로그 파일 구성 파일 등과 같이 웹 응용 프로그램이 액세스하는 다른 파일이 있으면 해당 파일의 소유권도 변경해야합니다.
편집 2 : Tomcat 8 및 Ubuntu 18.04로 업그레이드 한 후 다른 사용자로 Tomcat을 실행할 때 다른 문제가 발생했습니다. 스크립트 /etc/init.d/tomcat8
에서 다음 줄은 tomcat 사용자의 홈 폴더를 변경하는 것처럼 보이지만 다른 사용자를 사용하는 경우 원하는 결과가 아닙니다.
usermod --home /var/lib/tomcat8 $TOMCAT8_USER > /dev/null 2>&1 || true
이 줄을 제거하거나 주석 처리하면 새 Tomcat 사용자에 대한 홈 폴더를 변경하지 않아도됩니다.