squid透明代理和反向代理配置过程
透明代理环境:
一台linux 私网ip:192.168.1.1 一台linux 私网ip:192.168.1.100 公网ip:202.106.0.1 一台linux 公网ip:202.106.0.20
需求:
1:员工可以通过squid代理服务器高速访问公网
实现步骤:
1:代理服务器上安装squid程序,设置为开机启动,备份主配置文件
[[email protected] ~]# yum -y install squid.x86_64 7:2.6.STABLE21-6.el5
[[email protected] ~]# chkconfig squid on
[[email protected] ~]# cp /etc/squid/{squid.conf,squid.conf.bak}
2:配置主配置文件,重启服务
[[email protected] ~]# vim /etc/squid/squid.conf
... 637 http_access allow all //允许所有主机访问http ... 778 reply_body_max_size 10240000 allow all //最大允许访问目标的大小 ... 921 http_port 3128 transparent //监听3128端口并开启转发 ... 1580 cache_mem 8 MB //高速缓存大小 ... 1787 cache_dir ufs /var/spool/squid 500 16 256 //缓存文件夹位置,大小,1级目录个数,2级目录个数 ... 1826 maximum_object_size 8096 KB //最大缓存目标的大小 ... 1843 cache_swap_low 90 1844 cache_swap_high 95 //缓存大小到95%时删除旧内容到90% ... 2456 refresh_pattern ^ftp: 1440 20% 10080 //以ftp开头的缓存保留时间最小1440,最多10080的20% 2457 refresh_pattern ^gopher: 1440 0% 1440 2458 refresh_pattern . 0 20% 4320 ... 3007 visible_hostname //squid的完整主机名 ...[[email protected] ~]# service squid restart
3:添加防火墙规则实现端口转发
[[email protected] ~]# iptables -t nat -A PREROUTING -i eth0 -s 192.168.1.0/24 -p tcp --dport 80 -j REDIRECT --to-port 3128
[[email protected] ~]# service iptables save
4:配置完成后,私网员工电脑的网关指向squid代理服务器,就可以访问公网
反向代理环境:
一台linux 私网ip:192.168.1.1 一台linux 私网ip:192.168.1.100 公网ip:202.106.0.1 一台linux 公网ip:202.106.0.20
需求:
1:用户访问squid服务器的公网地址后,可以访问web内容并且高速缓存私网HTTP静态内容
实现步骤:
1:安装squid程序,设置为开机启动,备份主配置文件,同上
2:配置主配置文件,其他配置同上
[[email protected] ~]#vim /etc/squid/squid.conf
... 921 http_port 80 vhost //监听80端口并开启反向代理模式 922 cache_peer 192.168.1.1 parent 80 0 originserver //指定实际WEB服务器的地址,并宣告为真实提供服务 ...[[email protected] ~]# service squid restart
3:配置完成后,来自公网web访问就由squid代理服务器反向解析给私网web服务器,并提供高速缓存