SquidでActive Directoryを使ったアクセス制限

SquidActive Directoryの特定のグループのメンバーしか利用できないようにする設定です。

  • 前提
    • AD認証用アカウント/パスワード:manager/password
    • Active Directoryのアドレス:172.16.1.10
    • 利用制御用グループ:Operators (CN=Operators,CN=Users,DC=hoge,DC=com)

ユーザーのクエリ

auth_param basic program /usr/lib/squid/squid_ldap_auth -R -b "dc=hoge,dc=com" -D "cn=manager,cn=Users,dc=hoge,dc=com" -w "password" -f sAMAccountName=%s -h 172.16.1.10

グループのクエリ

external_acl_type ldap_group %LOGIN /usr/lib/squid/squid_ldap_group -R -b "dc=hoge,dc=com" -D "cn=manager,cn=Users,dc=hoge,dc=com" -w "password" -f "(&(objectclass=person)(sAMAccountName=%v)(memberof=cn=%a,cn=Users,dc=hoge,dc=com))" -h 172.16.1.10

以下、ACL

acl password proxy_auth REQUIRED
acl ldap_group_allow external ldap_group Operators
http_access deny !password
http_access allow ldap_group_allow
http_access deny !ldap_group_allow

以上

参考:(http://www.papercut.com/kb/Main/ConfiguringSquidProxyToAuthenticateWithActiveDirectory)