tracや subversionを使うのに、それぞれに認証を設定するのは面倒くさい。
特に、会社の中で使う場合、利用者は多いし、firewallの内側でそこそこの安全性が確保されているので、Unixのアカウントと共用したくなる。
そんなときに使えるのがmod_auth_pamやmod_auth_externalと言うモジュールである。
以前は、別プログラムが必要ないのでmod_auth_pamを使っていた。
しかし、apache2.2に上げてから、認証に失敗するようになってしまった。
そこで、今回は mod_auth_external と pwauth を使ってみることにした。
portsから、www/mod_auth_external2とsecurity/pwauthをインストールする。
で、/usr/local/etc/apache22/httpd.confを修正する。
LoadModule auth_external_module libexec/apache22/mod_auth_external.so

AddExternalAuth pwauth /usr/local/bin/pwauth
SetExternalAuthMethod pwauth pipe

<Location "/trac/tractest/login">
  AuthExternal pwauth
  AuthType Basic
  AuthName trac
  Require valid-user
</Location>
注意点としては、LoadModuleは、ほかのapache2.2.のmod_auth_*よりも前に必要だと言う事。
で、これで試して見ると、
[Sun Jul 09 09:23:08 2006] [error] [client a.b.c.d] GROUP: hoge not in required group(s)., referer: http://www.wizard-limit.net/trac/tractest
のようなエラーが出て、認証に失敗してしまう。 どうも、valid-userでの認証がうまくないようなので、Require valid-userの代わりに、Require group hoge のようにしたら、無事に使えるようになった。
mod_auth_externalのページを見たところ、apache2.2の場合は、mod_auth_externalの2.2系ではなく、3.1系を使うのが正しいらしい。
どうも、apache2.2では、auth系のモジュールが見直されて、mod_auth_basicとmod_auth_digestがメインで、ほかのモジュールがプラグインする形らしい。
その辺もあって、mod_auth_externalを先にLoadModuleする必要があるのかも知れない。
まあ、これも、portsでmod_auth_external の3.1が入るようになってから追加検証することにしよう。

# 最近は、portauditが使えるからとか、バージョンアップが追いやすいとかの理由で、ports経由でしかインストールする気にならないのです。

カテゴリ

トラックバック(0)

このブログ記事を参照しているブログ一覧: mod_auth_pamとmod_auth_external

このブログ記事に対するトラックバックURL: https://www.wizard-limit.net/cgi-bin/mt/mt-tb.cgi/1061

コメントする

このブログ記事について

このページは、falseが2006年7月 9日 19:30に書いたブログ記事です。

ひとつ前のブログ記事は「subversion再び」です。

次のブログ記事は「新しいVAIOとNAS」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

広告

Powered by Movable Type 6.1.1