3.4 一般ユーザーによる運用
スーパーユーザーと一般ユーザーの違い、一般ユーザーによるWebサーバを運用するための環境構築方法などについて説明します。
Webサーバを運用するユーザー
Webサーバは、通常の運用方法として、スーパーユーザーによる運用を想定しています。
インストールした状態では、スーパーユーザーによる運用ができるように各種設定が施されています。
このことから、スーパーユーザー以外のユーザー(以下、一般ユーザーと呼びます)で運用する場合、Webサーバの設定ファイルや関連するディレクトリー・ファイルの各種設定内容の変更が必要になります。また、Webサーバの一部の機能については、一般ユーザーによる運用は制限事項になるものがあります。
ここでは、スーパーユーザーと一般ユーザーの違い、一般ユーザーによるWebサーバを運用するための環境構築方法などについて説明します。
各プロセスの権限
スーパーユーザーまたは一般ユーザーで運用した場合、Webサーバの各プロセスの権限を次に示します。
項番 |
プロセス |
スーパーユーザーによる運用 |
一般ユーザーによる運用 |
---|---|---|---|
1 |
制御プロセス |
スーパーユーザー |
一般ユーザー |
2 |
rotatelogs、rotatelogs2プロセス |
||
3 |
サーバプロセス |
User、Groupディレクティブで指定したユーザー、グループ |
|
4 |
CGIプロセス |
||
5 |
gcacheサーバ |
UNIXでのスーパーユーザーと一般ユーザーの違い
UNIXでは、スーパーユーザーは一般ユーザーと異なり、システムの管理者権限を持つユーザーになります。UNIXでのスーパーユーザーと一般ユーザーの権限の差異(一例)を次に示します。
項番 |
項目 |
スーパーユーザーによる運用 |
一般ユーザーによる運用 |
---|---|---|---|
1 |
別のユーザーが起動したプロセスの停止 |
可 |
不可 |
2 |
well-knownポート(1023番以下のポート)を開く |
可 |
不可 |
3 |
明示的に読み取り/書き込み権限が与えられていないファイルへのアクセス |
可 |
不可 |
一般ユーザーでWebサーバを運用する場合、Webサーバの制御プロセスの権限が一般ユーザー権限で動作するため、このときの挙動はスーパーユーザーでWebサーバを運用した場合と異なる場合があります。したがって、一般ユーザーでWebサーバを運用する場合は、スーパーユーザーとの権限の差異を意識しながら環境を構築する必要があります。
リソースの所有者・グループの変更
Webサーバのコンテンツ、設定ファイル類、およびWebサーバが動作する際にアクセスする各種ファイル・ディレクトリーについて、UNIX上での所有者・グループを変更します。
最低限、インストールディレクトリー(Application Serverインストールディレクトリー/httpsdディレクトリー)以下のリソースに対しては変更が必要です。
将来、リソースの所有者・グループを元に戻したい場合は、変更作業の前に現在のリソースに対して、所有者とグループを保存しておきます。
保存作業は、スーパーユーザーで実行します。保存例を以下に示します。
(例)
/opt/hitachi/APServer/httpsdディレクトリー以下のリソースに対して、所有者とグループの一覧を作成する。
ls laR /opt/hitachi/APServer/httpsd
変更作業は、スーパーユーザーで実行します。変更例を以下に示します。
(例)
/opt/hitachi/APServer/httpsdディレクトリー以下のリソースに対して、所有者(hwsuser)とグループ(hwsgroup)を変更する。
chown R hwsuser:hwsgroup /opt/hitachi/APServer/httpsd
制限事項
次に示すコマンドは、一般ユーザーによる運用に対応していません。スーパーユーザーで運用してください。
-
hwscertutilコマンド
-
htpasswdコマンド
-
hwskeygenコマンド
-
logresolveコマンド
-
sslpasswdコマンド
一般ユーザーによる運用では次に示すディレクティブは指定できません。指定があっても無視します。
-
Groupディレクティブ
-
Userディレクティブ
一般ユーザーによる運用では、well-knownポート(1023番以下のポート)を開くことができません。
次のディレクティブにポート番号を指定する際は注意してください。
-
Listenディレクティブ
-
SSLCacheServerPortディレクティブ