Proxy 互联网上Squid服务器(NAT后面)的基本身份验证

Proxy 互联网上Squid服务器(NAT后面)的基本身份验证,proxy,ubuntu-14.04,basic-authentication,squid,Proxy,Ubuntu 14.04,Basic Authentication,Squid,我在谷歌上搜索过“squid服务器中的基本身份验证无法在互联网上运行”之类的搜索,但没有找到适合我的问题的答案 我的问题是: 我在防火墙后面设置了一个squid代理服务器。我已将一个端口(54321)转发到squid代理正在侦听的9999端口。现在一切都好了。我可以从任何地方连接到此代理。但我需要某种身份验证,因此启用了基本身份验证。现在,我可以通过局域网计算机进行身份验证后访问互联网。好吧,一切都按我想的进行但是 在互联网上,我弹出了用户名/密码(firefox),在身份验证之后,我从squi

我在谷歌上搜索过“squid服务器中的基本身份验证无法在互联网上运行”之类的搜索,但没有找到适合我的问题的答案

我的问题是: 我在防火墙后面设置了一个squid代理服务器。我已将一个端口(54321)转发到squid代理正在侦听的9999端口。现在一切都好了。我可以从任何地方连接到此代理。但我需要某种身份验证,因此启用了基本身份验证。现在,我可以通过局域网计算机进行身份验证后访问互联网。好吧,一切都按我想的进行但是

在互联网上,我弹出了用户名/密码(firefox),在身份验证之后,我从squid代理收到了“缓存访问被拒绝”的消息

如果有人告诉我我做错了什么,我会非常感激

这是我的squid.conf文件:

http_port 9999
auth_param basic program /usr/lib/squid3/basic_ncsa_auth /etc/squid3/passwd
auth_param basic realm proxy
acl authenticated proxy_auth REQUIRED
http_access allow authenticated
网络设置:
防火墙静态IP:端口:54321转发到代理服务器:10.11.12.8:9999。

您的Squid配置是否允许http_reply_访问

http_reply_access allow all
如果密码长度超过8个字符,还需要确保未使用DES散列,这是htpasswd命令的默认设置

下面介绍如何使用MD5哈希算法创建新密码文件:

[root@localhost ~] htpasswd -cm /tmp/passwd testuser
New password: 
Re-type new password: 
Adding password for user testuser
检查文件的内容:

[root@localhost ~] cat /tmp/password
testuser:$apr1$VxCDyltg$krZ6v7VrnULVOiuS0u6KD1
使用基本认证验证密码:

[root@localhost ~] /usr/lib64/squid/basic_ncsa_auth /tmp/passwd
testuser superspurs
OK
现在在CLI上验证:

[root@TLABprx00 ~]# http_proxy=http://localhost:9999/ curl http://www.msftncsi.com/ncsi.txt --proxy-user testuser:superspurs
Microsoft NCSI

您的Squid配置是否允许http_reply_访问

http_reply_access allow all
如果密码长度超过8个字符,还需要确保未使用DES散列,这是htpasswd命令的默认设置

下面介绍如何使用MD5哈希算法创建新密码文件:

[root@localhost ~] htpasswd -cm /tmp/passwd testuser
New password: 
Re-type new password: 
Adding password for user testuser
检查文件的内容:

[root@localhost ~] cat /tmp/password
testuser:$apr1$VxCDyltg$krZ6v7VrnULVOiuS0u6KD1
使用基本认证验证密码:

[root@localhost ~] /usr/lib64/squid/basic_ncsa_auth /tmp/passwd
testuser superspurs
OK
现在在CLI上验证:

[root@TLABprx00 ~]# http_proxy=http://localhost:9999/ curl http://www.msftncsi.com/ncsi.txt --proxy-user testuser:superspurs
Microsoft NCSI

谢谢你的清楚解释。正如我所说的,一切正常,除了从互联网到代理的身份验证给了我“拒绝访问错误”,过了一段时间,我发现Chrome/Chrome可以成功地进行身份验证并按预期工作,但Firefox无法。。。它显示“缓存访问被拒绝”消息。我现在使用chrome只是因为Firefox没有向代理服务器进行身份验证。(Firefox显示身份验证框,输入凭据后显示拒绝访问错误。奇怪。)感谢您的明确解释。正如我所说的,一切正常,除了从互联网到代理的身份验证给了我“拒绝访问错误”,过了一段时间,我发现Chrome/Chrome可以成功地进行身份验证并按预期工作,但Firefox无法。。。它显示“缓存访问被拒绝”消息。我现在使用chrome只是因为Firefox没有向代理服务器进行身份验证。(Firefox显示身份验证框,输入凭据后显示拒绝访问错误。奇怪。)