主にPHPアプリケーションを含む(cPanel/WHMベースの)サーバーを実行しています。これらは、ApacheのsuExecコンポーネントを使用して所有者のアクセス許可で実行されます。
コアアプリケーションの一部をJavaに移行し、Tomcat(Apacheプロキシを使用)で実行することを検討しています。これは、WHM内から簡単にインストールできるようです。ただし、そこにsuExec機能を保持する方法はあるので、Javaアプリケーションも正しい権限で実行されますか?
Tomcatは単一の(マルチスレッド)プロセスとしてのみ実行されるため、同じ$CATALINA_BASE
にデプロイされたアプリを異なるユーザーとして実行する方法はありません。
異なるユーザーで異なるWebアプリケーションを実行する必要がある場合は、個別のTomcatインスタンスをインストールする(または少なくとも個別の$ CATALINA_BASEディレクトリを設定する)必要があります。
一部のアプリケーションには特定のセキュリティ権限が必要なため、別のユーザーとして実行する場合は、 セキュリティマネージャー を使用して調査することもできます。
私が行ったすべてのTomcatデプロイメントでは、Tomcatインスタンスは8080などの多数のポートでユーザー「Tomcat」として実行されます。次に、フロントエンドWebサーバー(Apache?)を使用して、着信接続を多数にプロキシします。ポート。
これにより、root以外のTomcatが可能になり、最近のほとんどのLinuxディストリビューションではデフォルトになっていると思います。
または、Tomcat内で複数のアプリケーションを実行し、それぞれが独自のユーザーとして実行することを検討していますか?