You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CentOS 7部署Squid正向代理后拦截所有请求求助

解决Squid正向代理拦截所有请求的问题
  • 调整http_access规则顺序
    Squid的访问规则是按从上到下的顺序匹配的,默认配置末尾通常有http_access deny all。如果你把http_access allow all加在这条规则之后,它根本不会被执行。编辑/etc/squid/squid.conf,将http_access allow all移到http_access deny all的前面,然后重启服务:
systemctl restart squid
  • 检查防火墙与SELinux设置
    CentOS 7默认启用firewalld,必须开放Squid的默认端口3128:
    • 临时开放:firewall-cmd --add-port=3128/tcp
    • 永久开放:firewall-cmd --add-port=3128/tcp --permanent && firewall-cmd --reload
      另外,SELinux可能会阻止Squid对外连接,临时关闭测试:setenforce 0,如果问题解决,再配置SELinux允许Squid联网:
setsebool -P squid_connect_any 1
  • 查看Squid日志定位具体原因
    如果调整规则后仍有问题,查看Squid的访问日志/var/log/squid/access.log,里面会记录每个请求的处理结果(比如拒绝的规则ID、错误代码),根据日志信息针对性调整配置。比如日志里出现TCP_DENIED/403,说明是访问规则拦截,出现TCP_RESET/503可能是网络或SELinux问题。

  • 添加客户端IP段的ACL规则
    如果不想全局允许所有访问,也可以针对Ubuntu客户端所在的IP段配置允许规则,比如你的客户端网段是192.168.1.0/24,在http_access deny all前添加:

acl allowed_clients src 192.168.1.0/24
http_access allow allowed_clients

保存配置后重启Squid即可。

内容的提问来源于stack exchange,提问作者RED

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 00:32:11