Squid 设置 HTTP 代理

  1. 安装 Squid

从官方网站安装 Squid,链接:https://wiki.squid-cache.org/SquidFaq/BinaryPackages#CentOS

sudo yum install squid squid-helpers -y
  1. 创建认证

可以使用 htpasswd 或者 openssl 生成密码文件:

htpasswd -b -c /etc/squid/htpasswd <username> <password>

或者:

printf "<username>:$(openssl passwd -apr1 <your password>)\n" >> /etc/squid/htpasswd
  1. 配置认证

在配置文件 /etc/squid/squid.conf 添加:

http_port 3128
auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/htpasswd
auth_param basic children 5  #开启 5 个子进程
auth_param basic realm Squid proxy-caching web server  #认证提示
auth_param basic credentialsttl 2 hours  # 缓存 2 小时
auth_param basic casesensitive off   #忽略大小写

注:上面的配置需要放在:http_access deny all 配置的前面。

  1. 启动 Squid 服务
sudo service squid start
  1. 配置防火墙

给相应的 3128 端口添加防火墙规则

  1. 使用 CURL 测试代理
curl -U username:password -x http://xxx.xx.xx:3128 http://www.baidu.com