|
目的:
加速一些静态内容的访问,比如图片,就不需要每次都重新向服务器获取了,有缓存的话直接本地缓存返回就非常快了
前几年网上都还有一些旁路缓存的软件的,现在再搜索不知道为什么就都没了,是因为带宽高了不需要了吗?
我搭建这个的目的是因为我每次访问github,用户的头像都卡半天,装了这个以后只要是看过的头像就立刻加载出来了,还是很明显的
安装过程:
服务器系统是ROCKYLINUX8 最小化安装
yum install squid
然后编辑配置文件
/etc/squid/squid.conf
把这个打开
http_access deny to_localhost
缓存目录 #单位是M 这个教程自己找吧,我只用来给我家里用,这个设定暂时足够用
cache_dir ufs /var/spool/squid 100 16 256
代理设置 如果这台服务器有多个网卡,建议手动指定IP 比如这样写http_port 192.168.1.1:3130
http_port 3130 #这3条必须这样设定 少一个都不行 不这样写也不行 我多次测试得出的结论
http_port 3128 intercept
https_port 3129 transparent cert=/etc/squid/certs/squid-ca-cert-key.pem key=/etc/squid/certs/squid-ca-key.pem ssl-bump
ssl_bump none all
然后保存
然后设置生成证书
yum install openssl
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
cat squid-ca-cert.pem squid-ca-key.pem >> squid-ca-cert-key.pem
chown squid:squid -R /etc/squid/certs
检查配置文件squid -k parse
最后启动服务 service squid start
就可以了
然后这台服务器开启转发
echo 1 > /proc/sys/net/ipv4/ip_forward
设置iptables透明代理的语句
iptables -t nat -I PREROUTING 1 -i eth0 -p tcp --dport 443 -j REDIRECT --to-ports 3129
iptables -t nat -I PREROUTING 2 -i eth0 -p tcp --dport 80 -j REDIRECT --to-ports 3128
这样服务器就设置好了
然后客户端把网关指向这台服务器就可以了,客户端浏览网站的时候就是被透明代理了
234楼的内容是我参考过了,里面的配置都有点问题,至少在我这个版本上完全按照他的配置写有的连服务都启动不了,都有各种问题
最后附上官方文档
http://www.squid-cache.org/Versions/v4/cfgman/
很详细的文档,但是全英文
|
|