Lighttpd mod_authモジュールの設定

Archlinux
https://wiki.archlinux.org/index.php/lighttpd#Password_protecting_a_directory
(日本語ページは最新情報ではありません。)

Lighttpd Wiki
https://redmine.lighttpd.net/projects/1/wiki/HowToBasicAuth

Lighttpdのmod_authモジュールにより、特定ユーザ以外のフォルダへのアクセスを制限します。
ターミナルで以下コマンドを実行します。(ユーザ、パスワード、レルムをキャッシュしてハッシュ関数によりそれらを暗号化、最後にlighttpd.userに暗号化した算出結果を書込みます。)

注)直接ユーザ、パスワード、レルムを入力してチェックサムを算出した方がいいかもしれません。

$ user=foo
$ password=b@R102
$ realm='Password Required'

注)上記変数のチェックサムを算出します(ハッシュ関数による暗号化)。

$ echo -n "$user:$realm:$password" | md5sum | cut -b -32

算出されたチェックサムを以下ファイルに”ユーザ:レルム:チェックサム”のように記述します。

$ sudo pico /etc/lighttpd/lighttpd.user

foo:Password Required:xxxxxxxxxxxxxxxxxxxxxxxxx<---注)で算出されたチェックサム

/etc/lighttpd/lighttpd.conf にmod_authの記述を追加します。

$ sudo pico /etc/lighttpd/lighttpd.conf

server.modules = (
   "mod_auth",
 )

auth.debug = 2
auth.backend                = "htdigest"
auth.backend.htdigest.userfile = "/etc/lighttpd/lighttpd.user"

# note this entry is relative to the server.document-root
auth.require = ( "/secret" =>
   (
    "method" => "basic",
    "realm" => "Password Required",
    "require" => "user=foo"
   )
)

最後にLighttpdを再起動します。

$ sudo service lighttpd restart