awstats で閲覧できるユーザを制限する。


恵比寿のバカラ シャンデリア



※写真と本文は関係ありません。


アクセス解析のawsstat。引数をつけて、解析結果を切り替えられるので便利。(複数の解析結果を見せるのが楽)
『同じ URL で結果を表示するから、ユーザでアクセス制限したいけど Basic 認証じゃダメだよなぁ…』って思ってたら、設定があった。

それぞれのawstatの設定に書く。


$ cat /etc/awstats/awstats.host1.conf
…
AllowAccessFromWebToAuthenticatedUsersOnly=1
AllowAccessFromWebToFollowingAuthenticatedUsers="host1-user"
…
$ cat /etc/awstats/awstats.host2.conf
…
AllowAccessFromWebToAuthenticatedUsersOnly=1
AllowAccessFromWebToFollowingAuthenticatedUsers="host2-user"
…


apache のほうはBasic認証の設定。


<Directory "/usr/local/awstats/wwwroot">
Options None
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.1
AuthUserFile /usr/local/awstats/.htpasswd
AuthGroupFile /dev/null
AuthName "Please enter your ID and password"
AuthType Basic
require valid-user
</Directory>


普通にBasic認証を設定して、htpasswdファイルにユーザ追加。(この場合だと host1-user と host2-user を追加)
閲覧許可ユーザを awsstat のConfig AllowAccessFromWebToFollowingAuthenticatedUsers で指定する。


さらにいろいろ制御したいなら、-output -staticlinks オプションで静的にページを生成する。
セキュリティに関するTips – ログ解析スクリプトAWStats 5.0ドキュメント