Я настраиваю squid для аутентификации с использованием Win AD, но пользователи могут подключаться с другого IP-адреса, и я не могу установить базу политик на IP для другого пользователя.
есть ли способ установить базу acl для имени пользователя?
я нашел ident
http://www.visolve.com/squid/squid24s1/access_controls.php
это работает для моего тестового случая?
Вам необходимо определить и использовать списки управления доступом типа proxy_auth
; согласно странице, которую вы связали:
Тип Acl: proxy_auth
Описание Аутентификация пользователя через внешние процессы. proxy_auth требует ВНЕШНЕЙ программы аутентификации для проверки комбинаций имени пользователя и пароля (см. Authenticate_program).
Использование acl aclname proxy_auth имя пользователя ...
используйте REQUIRED вместо имени пользователя, чтобы принять любое действительное имя пользователя
Пример acl ACLAUTH proxy_auth usha venkatesh balu deepa
Этот acl предназначен для аутентификации пользователей usha, venkatesh, balu и deepa внешними программами.
Таким образом, Squid будет аутентифицировать пользователей, используя любой выбранный вами метод аутентификации (вы сказали, что он уже существует, поэтому у вас не должно возникнуть проблем), а затем вы сможете фильтровать доступ на основе имен пользователей.
Пример конфигурации:
acl Good_Users user1 user2 user3
http_access allow Good_Users
http_access deny all
Это позволит только пользователям user1, user2 и user3 получить доступ к сети.
Вы должны знать, что предоставить ложные учетные данные с помощью идентификатора относительно легко (если только клиенты не заблокированы). Также требуется, чтобы программное обеспечение было установлено на клиентских машинах. Раньше я использовал это с разными клиентами в корпоративной локальной сети, и у меня это сработало, но я настроил эту систему задолго до того, как Microsoft начала возиться с LDAP.
AFAIK, хотя вы также можете использовать NTLM, за пределами Microsoft он безопасен только для идентификатора.
Метод активного каталога (при условии, что вы делаете что-то вроде этот а не NTLM) должен быть более безопасным. Но если да, то WTF имеет отношение к этому IP-адрес? Похоже, у вас очень неработающее решение, полагающееся на (неправильную) аутентификацию IP-адреса. (IP-адреса очень легко подделать).
это работает для моего тестового случая?
Я понятия не имею, что это за тестовый пример.