У меня есть два типа пользователей, получающих доступ к Squid. Я хочу, чтобы первая группа всегда имела доступ к Интернету, вторая должна иметь доступ к Интернету только в определенное время.
У меня есть пользователи в том же файле (созданном с помощью htpasswd).
Как этого добиться?
Заранее спасибо,
Прежде всего вам необходимо настроить аутентификацию
Добавьте следующее в раздел аутентификации вашего 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
...