Назад | Перейти на главную страницу

Используете как пользователей домена, так и локальных пользователей для аутентификации Squid?

Я работаю над прокси-сервером Squid, который должен аутентифицировать пользователей в домене Active Directory; это работает нормально, Samba настроена правильно, а Squid аутентифицирует пользователей через ntlm_auth. Соответствующие строки в squid.conf:

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 Authenticated proxy_auth REQUIRED
http_access allow Authenticated
http_access deny all

Теперь мне нужен способ разрешить доступ пользователям, у которых нет учетной записи домена. Я знаю, что могу создать учетную запись «интернет-пользователя» в домене, но это позволит получить доступ, хотя и ограниченный, к ресурсам домена (общие файловые ресурсы и т. Д.); Мне нужно что-то, что разрешит только доступ в Интернет.

Идеальным решением было бы использование локальной учетной записи на прокси-сервере, будь то учетная запись Linux или Squid; Я знаю, что Squid поддерживает это, но я не могу использовать его обе аутентификация домена и Squid / локальная аутентификация, если аутентификация домена неуспешна.

Это можно сделать? Как?

создать пользователя домена с ограниченным доступом (изолированное OU). из squid создайте аутентификацию squid ldap, которая позволит пользователю использовать Интернет.

Теперь мне нужен способ разрешить доступ пользователям, у которых нет учетной записи домена. Это можно сделать?

Да.

Как?

Вы можете использовать «внешний» помощник ACL, который позволяет вам запускать собственный механизм. Увидеть Squid wiki "Множественный источник" запись Больше подробностей. Этот фрагмент псевдокода появился прямо оттуда:

auth_param basic program /usr/local/bin/my-auth.pl
external_acl_type myAclType %SRC %LOGIN %{Proxy-Authorization} /usr/local/bin/my-acl.pl
acl MyAcl external myAclType
http_access allow MyAcl

... где my-auth.pl - это фрагмент Perl-скрипта, который выполняет фактическую аутентификацию и возвращает OK или ERR в результате.