Jul 102007
厳密な方法ではありません。禁止ではなく防止できるかも、というレベルです。
rcスクリプト等でtomcatの起動ユーザをroot以外にしていたとします。
case "$1" in start) su - tomcat -c "$CATALINA_HOME/bin/startup.sh" ;; stop) su - tomcat -c "$CATALINA_HOME/bin/shutdown.sh" ;;
ですが、$CATALINA_HOME/bin/startup.shを直接実行されるとtomcat以外のユーザで起動されてしまう可能性があります。そこでsetenv.shを使い、tomcatユーザ以外で実行した場合にメッセージを出して終了するようにしてみました。
if [ "`/usr/bin/whoami`" != "tomcat" ]; then echo echo "tomcatユーザ以外では起動しないでください。" echo "/etc/rc.d/init.d/tomcat {start|stop}を使ってね。" echo exit fi :
こうしておけば、startup.shレベルであれば起動ユーザをチェックできると思います。
Sorry, the comment form is closed at this time.