Debian と Tomcat、なぜ専用ユーザーを作成するのですか?

Debian と Tomcat、なぜ専用ユーザーを作成するのですか?

WheezyにTomcat 7をインストールしようとしていました

いくつかのガイドを見ると、ほとんどすべてが専用ユーザーを作成することを提案していることに気づきました。なぜでしょうか?

また、リポジトリからTomcat 7をインストールし、それに適したユーザーがすでに存在することを確認したので、Tomcatのインストール自体がそれを作成したのではないかと思います。

cat /etc/passwd
tomcat7:x:103:106::/usr/share/tomcat7:/bin/false

そこで質問なのですが、Tomcat 用に (追加の) ユーザーを作成する必要があるのでしょうか?

root@j51391:~# /usr/share/tomcat7/bin/version.sh 
Using CATALINA_BASE:   /usr/share/tomcat7
Using CATALINA_HOME:   /usr/share/tomcat7
Using CATALINA_TMPDIR: /usr/share/tomcat7/temp
Using JRE_HOME:        /usr/lib/jvm/java-7-oracle
Using CLASSPATH:       /usr/share/tomcat7/bin/bootstrap.jar:/usr/share/tomcat7/bin/tomcat-juli.jar
Server version: Apache Tomcat/7.0.28
Server built:   Dec 8 2012 06:51:43
Server number:  7.0.28.0
OS Name:        Linux
OS Version:     3.10.13-x86_64-jb1
Architecture:   amd64
JVM Version:    1.7.0_45-b18
JVM Vendor:     Oracle Corporation

答え1

一部のサービス、特にインターネットや信頼できないネットワーク経由でアクセスできるサービスには、専用のアカウントを作成することをお勧めします。そうすれば、誰かが Tomcat のセキュリティ上の欠陥を悪用しても、システム全体が危険にさらされることはありません。(権限を昇格させない限りは、それは別の話です)

Tomcat ドキュメントのセキュリティに関する考慮事項のセクションから:

Tomcat は、ルート ユーザーで実行しないでください。Tomcat プロセス専用のユーザーを作成し、そのユーザーにオペレーティング システムに必要な最小限の権限を付与します。たとえば、Tomcat ユーザーを使用してリモートでログオンできないようにします。

あなたの場合、パッケージ インストーラーがすでに専用ユーザーの作成を処理しているようです。

関連情報