这是我在Ubuntu 14.04上设置基本身份验证所要做的(在其他地方找不到指南)
基本的鱿鱼conf
/etc/squid3/squid.conf
而不是超级肿的默认配置文件
auth_param basic program /usr/lib/squid3/basic_ncsa_auth /etc/squid3/passwords
auth_param basic realm proxy
acl authenticated proxy_auth REQUIRED
http_access allow authenticated
# Choose the port you want. Below we set it to default 3128.
http_port 3128
请注意basic_ncsa_auth程序,而不是旧的ncsa_auth
鱿鱼2.x
对于鱿鱼2.x,您需要编辑/etc/squid/squid.conf
文件并放置:
auth_param basic program /usr/lib/squid/digest_pw_auth /etc/squid/passwords
auth_param basic realm proxy
acl authenticated proxy_auth REQUIRED
http_access allow authenticated
设置用户
sudo htpasswd -c /etc/squid3/passwords username_you_like
然后为所选用户名输入两次密码,然后
sudo service squid3 restart
鱿鱼2.x
sudo htpasswd -c /etc/squid/passwords username_you_like
然后为所选用户名输入两次密码,然后
sudo service squid restart
htdigest vs htpasswd
对于许多问我的人:2种工具产生不同的文件格式:
htdigest
以纯文本形式存储密码。
htpasswd
存储散列的密码(可用各种散列算法)
尽管格式有所不同,basic_ncsa_auth
仍然可以解析使用生成的密码文件htdigest
。因此,您可以选择使用:
sudo htdigest -c /etc/squid3/passwords realm_you_like username_you_like
请注意,这种方法是经验性的,没有文档记录,Squid的未来版本可能不支持这种方法。
在Ubuntu 14.04上htdigest
,htpasswd
这两个[apache2-utils][1]
软件包都可用。
苹果系统
与上述类似,但文件路径不同。
安装鱿鱼
brew install squid
启动鱿鱼服务
brew services start squid
鱿鱼配置文件存储在/usr/local/etc/squid.conf
。
注释或删除以下行:
http_access allow localnet
然后类似于linux config(但具有更新的路径)添加以下内容:
auth_param basic program /usr/local/Cellar/squid/4.8/libexec/basic_ncsa_auth /usr/local/etc/squid_passwords
auth_param basic realm proxy
acl authenticated proxy_auth REQUIRED
http_access allow authenticated
请注意,路径basic_ncsa_auth
可能会有所不同,因为使用时它取决于安装的版本brew
,您可以使用进行验证ls /usr/local/Cellar/squid/
。还要注意,您应该在以下部分之后添加以上内容:
#
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
#
现在为您自己生成一个用户:密码基本身份验证凭证(注意:htpasswd
并且htdigest
在MacOS上也都可用)
htpasswd -c /usr/local/etc/squid_passwords username_you_like
重新启动鱿鱼服务
brew services restart squid