[Squid教程]快速搭建本地代理服务器
本文将指导你完成安装和配置Squid缓存代理服务器的全过程,解决网络访问速度慢、内容过滤需求等问题。
系统环境准备
确保你的服务器或开发环境满足以下要求:
- Linux系统(推荐Ubuntu 20.04/Debian 11)
- 编译环境(gcc, make等)
- 至少1GB可用内存
- 可访问的互联网连接
安装Squid缓存代理
1. 更新系统包列表
sudo apt update
sudo apt upgrade -y
2. 安装编译依赖
sudo apt install build-essential libevent-dev libpcre3-dev zlib1g-dev -y
3. 下载并编译Squid
- 下载最新稳定版本源码
- 执行编译命令
wget http://www.squid-cache.org/Versions/v4/squid-4.15.5.tar.gz
tar -xzvf squid-4.15.5.tar.gz
cd squid-4.15.5
./configure --prefix=/usr --enable-ssl --enable-regex --enable-icap --enable-asyncio --enable-threads
make -j $(nproc)
sudo make install
配置Squid缓存设置
1. 编辑主配置文件
sudo nano /etc/squid/squid.conf
关键配置项说明:
- http_port 3128 指定代理端口
- cache_dir ufs /var/spool/squid 10000 16 256 设置缓存目录
- visible_hostname 设置服务器名称
- access_log 日志文件路径
2. 创建缓存目录
sudo mkdir -p /var/spool/squid
sudo chown -R squid:squid /var/spool/squid
sudo chmod 755 /var/spool/squid
启动与测试
1. 启动Squid服务
sudo systemctl start squid
sudo systemctl status squid
2. 验证代理功能
在客户端机器上设置代理:
- Windows: 系统代理设置
- macOS: 系统偏好设置 > 网络 > 高级 > 代理
- Linux: 浏览器代理设置
使用测试命令:
curl -x http://127.0.0.1:3128 http://ifconfig.me
常见问题排查
1. 连接错误 403
检查以下配置:
- acl 规则是否正确
- http_access 权限控制
- 缓存目录权限问题
2. 日志文件无法写入
确保:
- 日志目录存在且可写
- cache_log 配置正确
- 系统磁盘空间充足
性能优化建议
根据实际使用场景调整:
- 增加cache_mem参数缓存内存
- 配置cache_swap_dir多级缓存
- 启用ssl_bump实现HTTPS透明代理
- 使用icap接口集成内容过滤