标题 一、squid简介
squid是一种用来缓存Internet数据的web缓存代理软件。Squid代理服务器工作在TCP/IP应用层。squid 一般仅缓存静态页面,比如HTML网页、图片、歌曲等,默认不护岸村CGI脚本程序或者PHP\JSP等。squid可以根据HTTP头部信息决定如何缓存数据,即缓存周期。
squid代理的作用:通过缓存的方式为用户提供Web访问加速;对用户的Web访问进行过滤控制;
正向代理:
标准的代理缓冲服务器
一个标准的代理缓冲服务被用于缓存静态的网页到本地网络上的一台主机上(即代理服务器)。要想实现这种方式,必须在每一个内部主机的浏览器上明确指名代理服务器的IP地址和端口号。
透明代理缓冲服务器
透明代理缓冲服务器和标准代理服务器的功能完全相同。代理操作对客户端的浏览器是透明的(即不需指明代理服务器的IP和端口)。透明代理服务器阻断网络通信,并且过滤出访问外部的HTTP(80端口)流量。对于linux操作系统来说,透明代理使用Iptables或者Ipchains实现。透明代理对于ISP(Internet服务器提供商)特别有用。
反向代理
反向代理缓冲器
可以降低原始WEB服务器的负载。反向代理服务器承担了对原始WEB服务器的静态页面的请求,防止原始服务器过载。它位于WEB服务器和Internet之间,处理所有对WEB服务器的请求,组织了WEB服务器和Internet的直接通信。反向代理结合智能DNS即可实现基本的CDN(内容分发网络)框架,通过DNS视图功能,可以为来自不同地区的DNS请求解析不同的结果返回给客户端。
正向代理与反向代理的区别
正向代理对于客户端而言,是个代理人,而反向代理服务对客户端而言就是访问的服务器本身。
正向代理的典型用途是为在防火墙内的局域网客户端提供访问Internet的途径。正向代理还可以使用缓冲特性减少网络使用率。
反向代理还可以为后端的多台服务器提供负载平衡,或为后端较慢的服务器提供缓冲服务。另外,反向代理还可以启用高级URL策略和管理技术,从而使处于不同web服务器系统的web页面同时存在于同一个URL空间下。
ACL元素类型:
src:源地址(即客户机IP地址)
dst:目标地址(即服务器IP地址)
srcdomain:源名称(即客户机名称)
dstdomain:目标名称(即服务器名称)
time:一天中的时刻和一周内的一天
url_regex:URL规则表达式匹配
urlpath_regex:URL-path规则表达式匹配,略去协议和主机名
proxy_auth:通过外部程序进行用户验证
maxconn:单一IP的最大连接数
实验环境
一台Linux作为squid代理服务器
一台Linux作为web网站,并搭建Apache
一台Win10作为客户端访问服务器网站
实验步骤
一、首先开始搭建squid,我们这里使用的是手工编译安装
1、进行文件挂载
mkdir /abc
mount.cifs //192.168.10.122/squid /abc
2、进行解压缩
tar zxvf squid-3.4.6.tar.gz -C /opt/
3、安装环境包
yum install gcc gcc-c++ make