🔗 Squid 5
| 2023年7月 | 随着 Squid-6 系列的发布,Squid-5 系列已被弃用 |
| 2021年8月 | 发布用于生产环境。 |
功能已经确定,大规模的代码修改将留待后续版本。
新增功能仅限于
- 安全修复
- 严重 Bug 修复
- 文档更新
🔗 此版本中从 2.7 移植的功能
- Class 6 (客户端响应) 延迟池
- 以 response_delay_pool 和 response_delay_pool_access 的形式,用于 Squid 到客户端的速度限制。
🔗 5.1 的基本新功能
- Major UI changes
- Happy Eyeballs:尽快使用每个完全解析的转发目标。
- 作为副作用,删除了 dns_v4_first 功能。
- 空闲超时后,重用已保留的 Negotiate 和 NTLM 辅助程序。
- 支持在错误页面模板中使用 logformat %codes。
- 支持通过 HTTP 缓存对等方打开 CONNECT 隧道。
- 更改多个同名注释被接收时的注释行为(参见 bug 4912)
- 由于其用法(例如从 auth 和外部 ACL 辅助程序收到的 group=),一些保留的键保留了旧行为
- Happy Eyeballs:尽快使用每个完全解析的转发目标。
- Minor UI changes
- 添加 auth_schemes 以控制 401s/407s 中 scheme 的存在和顺序。
- 添加 ACL 类型 annotate_transaction 和 annotate_client。
- 使 CONNECT ACL 成为内置默认值。
- 添加 collapsed_forwarding_access 以限制 HTTP、ICP 和 HTCP 请求的已折叠转发。
- 添加 mark_client_connection 和 mark_client_packet 指令,用于 Netfilter MARK 和 CONNMARK 控制。
- 添加 deny_info 和错误页面%A代码以显示 Squid 监听的 IP 地址。
- 新的 %ssl::<cert 宏代码,以 PEM 格式显示接收到的服务器 X.509 证书。
- 新的 %proxy_protocol::>h logformat 代码,用于记录接收到的 PROXY 协议 TLV 值。
- Developer Interest changes
- ICAP Trailers.
- 删除 USE_CHUNKEDMEMPOOLS 编译器标志。
- 所有二进制文件现在都使用标准的 EXIT_SUCCESS 或 EXIT_FAILURE 终止结果,以更好地与操作系统集成。
- 从已弃用的 BerkleyDB 版本迁移到 TrivialDB。
- ntlm_fake_auth:添加测试延迟响应的能力。
- basic_ldap_auth:在内部错误时返回 BH。
- 支持 RFC 8586:内容分发网络中的循环检测
Squid-5 源代码的软件包可在 https://squid.org.cn/Versions/v5/ 上获取
🔗 Security Advisories
See our Advisories list.
🔗 Open Bugs
- Major or higher bugs currently affecting this version.
- 如果发现旧版本中的 Bug 在 5.x 中已修复,可以关闭
- 从旧版本继承的 Bug 不一定是稳定版本上的阻塞项。
- Bugs new in this version
🔗 Squid-5 默认配置
http_port 3128
# Example rule allowing access from your local networks.
# Adapt to list your (internal) IP networks from where browsing
# should be allowed
acl localnet src 0.0.0.1-0.255.255.255 # RFC 1122 "this" network (LAN)
acl localnet src 10.0.0.0/8 # RFC 1918 local private network (LAN)
acl localnet src 100.64.0.0/10 # RFC 6598 shared address space (CGN)
acl localnet src 169.254.0.0/16 # RFC 3927 link-local (directly plugged) machines
acl localnet src 172.16.0.0/12 # RFC 1918 local private network (LAN)
acl localnet src 192.168.0.0/16 # RFC 1918 local private network (LAN)
acl localnet src fc00::/7 # RFC 4193 local private network range
acl localnet src fe80::/10 # RFC 4291 link-local (directly plugged) machines
acl SSL_ports port 443
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost manager
http_access deny manager
#
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
#
http_access allow localnet
http_access allow localhost
http_access deny all
coredump_dir /squid/var/cache/squid
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern . 0 20% 4320