之前有使用到burpsuite中的SSL代理功能,能同时代理HTTPS,所以向研究一下squid能不能完成这个功能。

搭建

首先需要配置自签证书:

mkdir /etc/squid/certs
cd /etc/squid/certs
openssl req -new -newkey rsa:2048 -sha256 -days 365 -nodes -x509 -extensions v3_ca -keyout squid-ca-key.pem -out squid-ca-cert.pem
ls
cat squid-ca-cert.pem squid-ca-key.pem >> squid-ca-cert-key.pem

然后配置squid服务:

http_port 3128 ssl-bump cert=/etc/squid/certs/squid-ca-cert-key.pem generate-host-certificates=on dynamic_cert_mem_cache_size=16MB
sslcrtd_program /usr/lib64/squid/security_file_certgen -s /var/spool/squid/ssl_db -M 16MB
acl step1 at_step SslBump1
ssl_bump peek step1
ssl_bump bump all
ssl_bump splice all

我没研究过SSL连接,所以对这里的参数还没有研究过,不过可以参考这篇文章《Using Squid to Proxy SSL Sites

注意:这里虚空先生成ssl_db目录,否则squid代理无法生效。
注意,一定要注意,/var/spool/squid/ssl_db这个目录不能存在,否则将失效。

/usr/lib64/squid/security_file_certgen -c -s /var/spool/squid/ssl_db -M 16MB
chown squid:squid -R ssl_db

最后再启动squid服务,然后测试:

systemctl restart squid

测试

  1. 导入证书(公钥),这里使用firefox来进行演示,比较方便


注意,这里在导入的时候需要勾选一下信任

  1. 测试

本文经「原本」原创认证,作者乾坤盘,访问yuanben.io查询【3NFQKCCJ】获取授权信息。

最后修改:2020 年 08 月 13 日 08 : 42 AM
如果觉得我的文章对你有用,请随意赞赏