Squid ncsa_auth аутентификация и группы пользователей

У меня есть два вида пользователей, которые обращаются к squid. Я хочу, чтобы первая группа всегда имела доступ к Интернету, вторая должна иметь доступ к Интернету только в определенное время.

У меня есть пользователи в одном файле (создан с помощью htpasswd).

Как этого добиться?

Заранее спасибо,

1 ответ

Решение

Прежде всего вы должны настроить аутентификацию

Добавьте следующее в раздел аутентификации вашего squid.conf

auth_param basic program /usr/lib/squid/ncsa_auth /usr/local/etc/squid/passwd
auth_param basic children 5
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 8 hours

Вы захотите изменить путь к файлу паролей, чтобы он соответствовал местоположению вашего файла паролей. Вы можете изменить credentialsttl если вы хотите, чтобы люди проходили аутентификацию чаще.

В разделе ACL вашего squid.conf добавьте следующее

acl allowed_anytime proxy_auth "/usr/local/etc/squid/allowed_anytime"
acl allowed_by_time proxy_auth "/usr/local/etc/squid/allowed_by_time"

acl allow_hours time SMTWHFA 09:00-17:00

http_access allow  allowed_anytime

http_access allow allowed_by_time allow_hours

http_access deny all

Вы можете создать свой allowed_anytime а также allowed_by_time в другом месте, поэтому измените пути выше.

Файл allowed_anytime должен содержать список пользователей, которые могут использовать Интернет все время, например

user1
user2
user3
...

Файл allowed_by_time должен содержать список пользователей, которые могут пользоваться Интернетом в течение времени, указанного allow_hours например, acl

user4
user5
user6
user7
...
Другие вопросы по тегам