Дата:2010-05-23
Авторизации в Squid по IP, mac -адресу и паролю может не хватить или не иметь смысла применения, если в организации установлен контроллер домена и необходимо осуществлять централизованное управление через домен.
Давайте настроим Squid на авторизацию через домен, т.е. необходимо сделать samba участником домена.
Об этом было написано в разделе Samba, статья Samba
в Домене NT.
Используем CentOs 5.
После того как вы настроили samba переходим к конфигурированию squid.
Для этого нам понадобится samba и winbind.
1-Й ВАРИАНТ ДЛЯ ВСЕГО ДОМЕНА
Логика проста - если пользователь оказался в домен, то
разрешить доступ в Интернет
Вставляем до разкомменированного http_access deny all следующее:
auth_param ntlm program
/usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp
auth_param ntlm children 5
auth_param ntlm keep_alive on
acl NTauth proxy_auth REQUIRED
http_access allow NTauth
http_access deny all
2-Й ВАРИАНТ ПО ГРУППЕ
Пользователи должны присутствовать в группе Домена - INTUSER
Вставляем до разкомменированного http_access deny all следующее:
auth_param ntlm program
/usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp
--require-membership-of=DOMAIN\+INTUSER
auth_param ntlm children 5
auth_param ntlm keep_alive on
acl NTauth proxy_auth REQUIRED
http_access allow NTauth
http_access deny all
3-Й ВАРИАНТ С ИСПОЛЬЗОВАНИЕМ wbinfo_group.pl
Для нескольких доменов и групп, дает большие возможности по разделению прав в дальнейшем
Вставляем до разкомменированного http_access deny all следующее:
auth_param ntlm program
/usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp
auth_param ntlm children 5
auth_param ntlm keep_alive on
external_acl_type ntgroup1 %LOGIN /usr/lib/squid/wbinfo_group.pl
external_acl_type ntgroup2 %LOGIN /usr/lib/squid/wbinfo_group.pl
external_acl_type ntgroup3 %LOGIN /usr/lib/squid/wbinfo_group.pl
acl NTgroup1 external ntgroup1 DOMAIN1+INTUSER
acl NTgroup2 external ntgroup2 DOMAIN2+USERINT
acl NTgroup3 external ntgroup3 DOMAIN2+INTPRIV
acl NTauth proxy_auth REQUIRED
# Логика - если прошла авторизация в домене и пользователь оказался в группе DOMAIN1+INTUSE, то разрешить.
http_access allow NTauth NTgroup1
# Логика - если прошла авторизация в домене и пользователь оказался в группе DOMAIN2+USERINT, то разрешить.
http_access allow NTauth NTgroup2
# Логика - если прошла авторизация в домене и пользователь оказался в группе DOMAIN2+INTPRIV , то разрешить.
http_access allow NTauth NTgroup3
http_access deny all
Количество просмотров: 9855
Комментарии к статье:
Добавить комментарий