squidでユーザー認証を行う(Ubuntu8.04)

まずhtpasswdでユーザー名とパスワードのMD5値のペアtxtを用意します。
# htpasswd -c /etc/squid/passwd hogehoge
New password:
Re-type new password:
できたら↓のように指定します。
auth_param basic children は認証プロセスの為のプロセス数を指定します。
auth_param basic realm はBASIC認証時に現われるメッセージを指定します。この場合は"Squid proxy-caching web server"と表示されます。
auth_param basic credentialsttl はパスワードの生存時間を指定します。(HTTPアクセスヘッダに付随させるBASIC認証で生存時間があるのはよく分からないですが・・・)
auth_param basic casesensitive は大文字小文字を区別するかどうかです(多分)offなので区別します。最後にacl kusi proxy_auth REQUIREDでアクセスリストkusiを定義
ローカルネットの後にhttp_access allow kusiを入れているので
LAN内のホストなら無条件で通し、WAN側からの要求にはBASIC認証を要求します。



auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/passwd
auth_param basic children 5
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
acl kusi proxy_auth REQUIRED

http_access allow localnet
http_access allow kusi
http_access allow manager localhost
http_access deny manager
http_access allow purge localhost
http_access deny purge
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost
http_access deny all

参考リンク
http://squid.robata.org/faq_19.html#l-06