Squid 403 的每个请求都作为 HTTP 代理

Sna*_*xib 4 configuration proxy squid http-status-code-403

所以我试图将鱿鱼设置为 HTTP 代理。此代理仅用于测试目的且位于内部网络上,无法从外部访问。我可以很好地连接到代理,但是 Squid 403 的每个 HTTP 请求。在快速而肮脏的尝试中,我将以下几行添加到squid.conf

acl all src 0.0.0.0/0.0.0.0
http_access allow all
Run Code Online (Sandbox Code Playgroud)

对于每个 HTTP 请求,我仍然得到 403。想知道有没有人知道怎么回事?

内部网络在 10.0.0.0/8 区块上。如果需要更多信息,请告诉我。

注意:我不需要鱿鱼来做任何额外的事情,实际上只是充当一个简单的 HTTP 代理。

Tru*_*ity 7

在没有看到您的整个配置的情况下,我只能猜测问题可能是什么,但这里有一些使用鱿鱼时的有用提示和潜在问题。

ACL 是按顺序完成的,因此如果您在这两个“拒绝”之前有任何 ACL,我会先检查它们。

默认情况下,squid 记录到 /usr/local/squid/var/logs/access.log,它可以提供有用的提示,以及您可能会看到 403 的原因。您可能还想尝试添加这些行,当我需要调试某些内容时,这些不在我的配置中,它们过去已被证明非常有用

# <Client IP> <Username> [<Local Time>] "<Request Method> <Request URL> HTTP/<Protocol Version> <Response Status Code> \
# <Sent reply size (with hdrs)> <Referer> <User Agent> <Squid Request Status>:<Squid Hierarchy Status>
logformat combined %>a %un [%tl] "%rm %ru HTTP/%rv" %>Hs %<st "%{Referer}>h" "%{User-Agent}>h" %Ss:%Sh
access_log /var/log/squid/squid.log squid
access_log /var/log/squid/access.log combined
Run Code Online (Sandbox Code Playgroud)

前两行是描述组合日志格式的注释。确保 /var/log/squid 存在并且它可由您的 squid 实例运行的任何用户写入。

如果您使用这些行,一般的 squid 错误将被重定向到 /var/log/squid/squid.log 并且从客户端到 squid 的每个请求/响应都将被记录在 /var/log/squid/access.log 中。如果您有很多用户使用您的代理,请小心打开第二个 access_log 行,因为它会生成大量日志。

希望这可以帮助 :)