Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

mod_vhost_aliasでもvirtualhost単位で動的にuidgidを固定できるようなディレクティブ #2

Open
matsumotory opened this issue Aug 29, 2013 · 9 comments

Comments

@matsumotory
Copy link
Owner

mod_vhost_aliasのようなmassivevirtualでもvirtualhost単位で動的にuidgidを固定できるようなディレクティブを追加したい。SuexecUserGroupを動的にやるような。いい方法なだろうか。

<VirtualHost *:80>
...
  VirtualDocumentRoot /usr/local/apache/vhosts/%0
  PSUserGroup On
...
</VirtualHost>

とかしたら、ホストで固定したいuidgidをそれぞれのホストが持つ何らかのファイルから動的に取得して、そのホストの処理は全てそのuidgidでコンテンツを処理する、といったような。具体的な案はまだない。

今の実装では、リクエストのあったファイルから動的にuidgidを取得するので、そうしたくない場合の機能を追加したい。

@matsumotory
Copy link
Owner Author

こんな感じのディレクティブが良いかな。

<VirtualHost *:80>
...
  VirtualDocumentRoot /usr/local/apache/vhosts/%0
  PSFixedUserGroupFile /usr/local/apache/vhosts/%0/.permission_file
...
</VirtualHost>

@WhiteAnthrax
Copy link

それいい感じ

@matsumotory
Copy link
Owner Author

普通のVirtualHost設定の時は、

<VirtualHost *:80>
...
  PSFixedUserGroup 501 501
...
</VirtualHost>

とか。

@cs-sonar
Copy link

cs-sonar commented Sep 2, 2013

mod_vhost_alias際、デフォルト(.permission_fileがないとき)は、ドキュメントルートのディレクトリのuid/gidで固定してしまう、っていうのはどうでしょうか。
ちゃんと取れるのかはわからないですが。。

@matsumotory
Copy link
Owner Author

@cs-sonar

ドキュメントルート・ディレクトリのuid、gidがコンテンツのuid.gidと大抵の場合同じであることが想定できれば、それでもよさそうですね。どうなのだろう。

この時に取得するuid gidは非常に重要な情報なので、きちんとチェックできるような仕様にしたいですね。例えば、.permission_fileとドキュメントルートのuid、gidが一致していて、なおかつ処理するコンテンツのuid,gidが一致していれば実行する、といったような。

@WhiteAnthrax
Copy link

ドキュメントルートのディレクトリuid,gidで動作するのはデフォルトじゃないほうが安全な気がします。
あと、PSFixedUserGroupFile は ドキュメントルート外にも置けるのがいいなあ

@matsumotory
Copy link
Owner Author

ドキュメントルート外における方が良いですね。デフォルトはファイルの権限にしておいて、PSFixedUserGroupFileが設定されていたら、そのファイルのuidgidを使う、ファイルがなければデフォルトの動きをする、という感じが良さそうです。

@cs-sonar
Copy link

cs-sonar commented Sep 4, 2013

PSFixedUserGroupFile にて指定できるのはファイルだけではなくディレクトリも可能なようするのはどうでしょうか?

運用中のホスティングサービスに導入するという目線で考えた場合、できるだけ現状のシステムに変更なく導入したいと考えてしまうのですが、ディレクトリの指定も可能であればそういったコストが軽減できるパターンもあるのではないかと思います。

@matsumotory
Copy link
Owner Author

そうですね。ファイルやディレクトリのowner・groupが変更されて何か被害がでる、というのは避けるような仕様にする必要はありますね。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants