Squid ncsa_auth 身份验证和用户组

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如果您希望人们更频繁地进行身份验证,您可能需要更改。

在 squid.conf 的 ACL 部分添加以下内容

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应包含在 acl 指定的时间内可以使用互联网的用户列表,allow_hours例如

user4
user5
user6
user7
...

相关内容