Closed. This question does not meet Stack Overflow guidelines。它当前不接受答案。












想改善这个问题吗?更新问题,以便将其作为on-topic用于堆栈溢出。

6年前关闭。



Improve this question




我目前在ACL中使用ip,并且我想使用用户名和密码来执行此操作。

最佳答案

这是我在上设置基本身份验证所需要做的事情Ubuntu 14.04 (在其他任何地方都找不到指南)

基本的鱿鱼conf
/etc/squid3/squid.conf代替 super 膨胀的默认配置文件

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的 future 版本可能不支持这种方法。

    在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
    #
    

    现在为您自己生成一个用户:密码基本身份验证凭证(注意:Mac OS上也提供htpasswdhtdigest)

    htpasswd -c /usr/local/etc/squid_passwords username_you_like
    

    重新启动鱿鱼服务

    brew services restart squid
    

    关于http-proxy - 如何使用基本的用户名和密码身份验证设置鱿鱼代理? ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3297196/

    10-11 04:35