透明代理

图解正向代理、反向代理、透明代理

时光毁灭记忆、已成空白 提交于 2019-12-07 11:46:44
套用古龙武侠小说套路来说,代理服务技术是一门很古老的技术,是在互联网早期出现就使用的技术。一般实现代理技术的方式就是在服务器上安装代理服务软件,让其成为一个代理服务器,从而实现代理技术。常用的代理技术分为正向代理、反向代理和透明代理。本文就是针对这三种代理来讲解一些基本原理和具体的适用范围,便于大家更深入理解代理服务技术。 一、 正向代理 (Forward Proxy) 一般情况下,如果没有特别说明,代理技术默认说的是正向代理技术。关于正向代理的概念如下: 正向代理(forward)是一个位于客户端【用户A】和原始服务器(origin server)【服务器B】之间的服务器【代理服务器Z】,为了从原始服务器取得内容,用户A向代理服务器Z发送一个请求并指定目标(服务器B),然后代理服务器Z向服务器B转交请求并将获得的内容返回给客户端。客户端必须要进行一些特别的设置才能使用正向代理。如下图1.1 从上面的概念中,我们看出,文中所谓的 正向代理 就是 代理服务器替代访问方【用户A】去访问目标服务器【服务器B】 这就是正向代理的意义所在。而为什么要用代理服务器去代替访问方【用户A】去访问服务器B呢?这就要从代理服务器使用的意义说起。 使用正向代理服务器作用主要有以下几点: 1、访问本无法访问的服务器B,如下图1.2 我们抛除复杂的网络路由情节来看图1.2,假设图中路由器从左到右命名为R1

系统原理分析架构-四-squid(简介及正向代理)

江枫思渺然 提交于 2019-12-05 09:32:19
感谢朋友支持本博客,欢迎共同探讨交流,由于能力和时间有限,错误之处在所难免,欢迎指正! 如有转载,请保留源作者博客信息。 Better Me的博客 : blog.csdn.net/tantexian 如需交流,欢迎大家博客留言。 一、squid简介 Squid Cache (简称为 Squid )是 HTTP 代理服务器 软件。Squid用途广泛的,可以作为 缓存服务器 , 代理用户向web服务器请求数据并进行缓存, 可以过滤流量帮助网络安全,也可以作为代理服务器链中的一环,向上级代理转发数据或直接连接互联网。 还也可以用在局域网中,使局域网用户通过代理上网。 Squid将数据元缓存在内存中,同时也缓存 DNS 查寻的结果,除此之外,它还支持非模块化的DNS查询,对失败的请求进行消极缓存。Squid支持SSL,支持 访问控制 。由于使用了ICP,Squid能够实现重叠的代理阵列,从而最大限度的节约带宽。 Squid由一个主要的服务程序Squid,一个DNS查询程序 dns server,几个重写请求和执行认证的程序,以及几个管理工具组成。当Squid启动以后,它可以派生出指定数目的 dns server进程,而每一个dnsserver进程都可以执行单独的DNS查询,这样一来就大大减少了服务器等待DNS查询的时间。 Squid的另一个优越性在于它使用 访问控制 清单(ACL

图解正向代理、反向代理、透明代理

匿名 (未验证) 提交于 2019-12-03 00:30:01
套用古龙武侠小说套路来说,代理服务技术是一门很古老的技术,是在互联网早期出现就使用的技术。一般实现代理技术的方式就是在服务器上安装代理服务软件,让其成为一个代理服务器,从而实现代理技术。常用的代理技术分为正向代理、反向代理和透明代理。本文就是针对这三种代理来讲解一些基本原理和具体的适用范围,便于大家更深入理解代理服务技术。 一、正向代理(Forward Proxy) 正向代理(forward)是一个位于客户端【用户A】和原始服务器(origin server)【服务器B】之间的服务器【代理服务器Z】,为了从原始服务器取得内容,用户A向代理服务器Z发送一个请求并指定目标(服务器B),然后代理服务器Z向服务器B转交请求并将获得的内容返回给客户端。客户端必须要进行一些特别的设置才能使用正向代理。如下图1.1 (图1.1) 从上面的概念中,我们看出,文中所谓的 正向代理 就是 代理服务器替代访问方【用户A 】去访问目标服务器【服务器B】 这就是正向代理的意义所在。而为什么要用代理服务器去代替访问方【用户A】去访问服务器B呢?这就要从代理服务器使用的意义说起。 使用正向代理服务器作用主要有以下几点: 1、访问本无法访问的服务器B,如下图1.2 (图1.2) 我们抛除复杂的网络路由情节来看图1.2,假设图中路由器从左到右命名为R1,R2

squid服务之配置透明代理

半腔热情 提交于 2019-11-28 11:46:44
透明代理提供的服务功能与传统代理时一致的,但是其“透明”的实现依赖于默认路由和防火墙的重定向策略,因此更适用于局域网主机服务,而不适合Internet中。 项目大概流程如下: 在Linux网关上,构建squid为客户机访问Internet提供代理服务。 在局域网所有的客户机上,只需有正确的IP地址、默认网关和DNS,不需要手动指定代理服务器的地址、端口等信息(若指定了反而易出错)。关于客户机的DNS解析工作,最好还是通过正常的DNS服务器来提供,不建议抛给代理服务器来处理。 开始配置透明代理服务器: squid服务的安装及传统代理的实施过程请参考博文: https://blog.51cto.com/14227204/2432301 配置squid支持透明代理: [root@localhost /]# vim /etc/squid.conf .................. http_port 192.168.1.1:3128 transparent #只在其中一个IP地址上提供服务,并支持透明模式 cache_effective_user squid cache_effective_group squid ...................... [root@localhost ~]# systemctl restart squid [root@localhost ~]#

Squid 服务的安装及部署

落爺英雄遲暮 提交于 2019-11-28 11:33:46
squid 作为一款服务器代理工具,可以缓存网页对象,减少重复请求,从而达到加快网页访问速度,隐藏客户机真实IP,更为安全。 squid的工作机制: 当我们客户机通过squid代理去访问web页面时,指定的代理服务器会先检查自己的缓存,若是缓存中有我们客户机需要的页面,那么squid服务器将直接把缓存中的页面内容返回给客户机,如果缓存中没有客户端请求的页面,那么squid代理服务器就会向internet发送访问请求,获得返回的web页面后,将网页的数据保存到缓存中并发送给客户机。 由于客户机的web访问请求实际上是squid代理服务器来代替完成的,所以隐藏了用户的真实IP地址,从而起到一定的保护作用。 另一方面,squid也可以针对要访问的目标、客户机的地址、访问的时间段进行过滤控制。 根据实现的方式不同,基本可以分为传统代理和透明代理两种方式: 传统代理:也就是普通的代理服务,需要我们客户端在浏览器、聊天工具等一些程序中设置代理服务器的地址和端口,然后才能使用代理来访问网络,这种方式相比较而言比较麻烦,因为客户机还需手动指定代理服务器,所以一般用于Internet环境。 透明代理:与传统代理实现的功能是一样的,区别在于客户机不需要手动指定代理服务器的地址和端口,而是通过默认路由、防火墙策略将web访问重定向,实际上仍然交给代理服务器来处理

Squid 服务的安装及部署

戏子无情 提交于 2019-11-28 11:04:25
squid 作为一款服务器代理工具,可以缓存网页对象,减少重复请求,从而达到加快网页访问速度,隐藏客户机真实IP,更为安全。 squid的工作机制: 当我们客户机通过squid代理去访问web页面时,指定的代理服务器会先检查自己的缓存,若是缓存中有我们客户机需要的页面,那么squid服务器将直接把缓存中的页面内容返回给客户机,如果缓存中没有客户端请求的页面,那么squid代理服务器就会向internet发送访问请求,获得返回的web页面后,将网页的数据保存到缓存中并发送给客户机。 由于客户机的web访问请求实际上是squid代理服务器来代替完成的,所以隐藏了用户的真实IP地址,从而起到一定的保护作用。 另一方面,squid也可以针对要访问的目标、客户机的地址、访问的时间段进行过滤控制。 根据实现的方式不同,基本可以分为传统代理和透明代理两种方式: 传统代理:也就是普通的代理服务,需要我们客户端在浏览器、聊天工具等一些程序中设置代理服务器的地址和端口,然后才能使用代理来访问网络,这种方式相比较而言比较麻烦,因为客户机还需手动指定代理服务器,所以一般用于Internet环境。 透明代理:与传统代理实现的功能是一样的,区别在于客户机不需要手动指定代理服务器的地址和端口,而是通过默认路由、防火墙策略将web访问重定向,实际上仍然交给代理服务器来处理

squid服务之配置透明代理

最后都变了- 提交于 2019-11-28 10:56:22
透明代理提供的服务功能与传统代理时一致的,但是其“透明”的实现依赖于默认路由和防火墙的重定向策略,因此更适用于局域网主机服务,而不适合Internet中。 项目大概流程如下: 在Linux网关上,构建squid为客户机访问Internet提供代理服务。 在局域网所有的客户机上,只需有正确的IP地址、默认网关和DNS,不需要手动指定代理服务器的地址、端口等信息(若指定了反而易出错)。关于客户机的DNS解析工作,最好还是通过正常的DNS服务器来提供,不建议抛给代理服务器来处理。 开始配置透明代理服务器: squid服务的安装及传统代理的实施过程请参考博文:https://blog.51cto.com/14227204/2432301 配置squid支持透明代理: [root@localhost /]# vim /etc/squid.conf .................. http_port 192.168.1.1:3128 transparent #只在其中一个IP地址上提供服务,并支持透明模式 cache_effective_user squid cache_effective_group squid ...................... [root@localhost ~]# systemctl restart squid [root@localhost ~]#

Squid 服务的安装及部署

无人久伴 提交于 2019-11-28 10:48:46
squid 作为一款服务器代理工具,可以缓存网页对象,减少重复请求,从而达到加快网页访问速度,隐藏客户机真实IP,更为安全。 squid的工作机制: 当我们客户机通过squid代理去访问web页面时,指定的代理服务器会先检查自己的缓存,若是缓存中有我们客户机需要的页面,那么squid服务器将直接把缓存中的页面内容返回给客户机,如果缓存中没有客户端请求的页面,那么squid代理服务器就会向internet发送访问请求,获得返回的web页面后,将网页的数据保存到缓存中并发送给客户机。 由于客户机的web访问请求实际上是squid代理服务器来代替完成的,所以隐藏了用户的真实IP地址,从而起到一定的保护作用。 另一方面,squid也可以针对要访问的目标、客户机的地址、访问的时间段进行过滤控制。 根据实现的方式不同,基本可以分为传统代理和透明代理两种方式: 传统代理:也就是普通的代理服务,需要我们客户端在浏览器、聊天工具等一些程序中设置代理服务器的地址和端口,然后才能使用代理来访问网络,这种方式相比较而言比较麻烦,因为客户机还需手动指定代理服务器,所以一般用于Internet环境。 透明代理:与传统代理实现的功能是一样的,区别在于客户机不需要手动指定代理服务器的地址和端口,而是通过默认路由、防火墙策略将web访问重定向,实际上仍然交给代理服务器来处理

squid代理与缓存(下)

痞子三分冷 提交于 2019-11-28 06:03:17
squid代理与缓存(下) 6. squid代理模式案例 6.1 squid传统正向代理生产使用案例 6.1.1 squid传统正向代理两种方案 (1)普通代理服务器 作为代理服务器,这是SQUID的最基本功能;通过在squid.conf文件里添加一系列访问及控制规则,用户在客户端设置服务器地址和端口,即可通过SQUID访问INTERNET,在下面的规则里,squid实现局域网用户代理和高速缓存功能: 即通过浏览器设置代理服务器地址实现共享上网,这种方式不需要代理服务器在网络的出入口位置,只要代理服务器可以上网,其他的客户机就可以通过IE等客户端设置代理服务器的地址及端口进行上网(客户机不能上网,但是可以通过代理服务器来达到上网的目的)。 (2)透明代理服务器 另一种就是透明代理,所谓透明代理,是相对于代理服务器而言,客户端不需要做任何和代理服务器相关的设置和操作,对用户而言,感觉不到代理服务器的存在,所以称之为透明代理。即把代理服务器部署在核心的上网出口,当用户上网浏览页面时,会交给代理服务器向外请求,如果结合iptables可以实现代理+网关+内容过滤+流量安全控制等完整的上网解决方案。 透明代理流程说明: 用户A发送一个访问请求到防火墙,由防火墙将该用户的访问请求转发到SQUID,SQUID在先检查自身缓存中有无该用户请求的访问内容,如果没有,则请求远端目的服务器

wstngfw中配置squid

♀尐吖头ヾ 提交于 2019-11-28 03:49:57
wstngfw中配置squid Squid是一个缓存 Internet 数据的软件,其接收用户的下载申请,并自动处理所下载的数据。当一个用户想要下载一个主页时,可以向 Squid 发出一个申请,要 Squid 代替其进行下载,然后 Squid 连接所申请网站并请求该主页,接着把该主页传给用户同时保留一个备份,当别的用户申请同样的页面时,Squid 把保存的备份立即传给用户。 按照代理类型的不同,可以将 Squid 代理分为正向代理和反向代理,正向代理中,根据实现方式的不同,又可以分为标准代理和透明代理。 1.标准的代理缓冲服务器 一个标准的代理缓冲服务被用于缓存静态的网页(例如:html文件和图片文件等)到本地网络上的一台主机上(即代理服务器)。当被缓存的页面被第二次访问的时候,浏览器将直接从本地代理服务器那里请求数据而不再向原web站点请求数据。这样就节省了宝贵的网络带宽,而且提高了访问速度。但是,要想实现这种方式,必须在每一个内部主机的浏览器上明确指明代理服务器的IP地址和端口号。客户端上网时,每次都把请求送给代理服务器处理,代理服务器根据请求确定是否连接到远程web服务器获取数据。如果在本地缓冲区有目标文件,则直接将文件传给用户即可。如果没有的话则先取回文件,先在本地保存一份缓冲,然后将文件发给客户端浏览器。 2.透明代理缓冲服务器