正反向代理
正反向代理
为什么使用代理服务器?
因为安全,隔离用户与服务之间的信息。就像NAT一开始研发的初衷就是为了安全,结果确结省了大量IP。
代理的基本类型:
-
传统代理:需要在客户客户端软件手动设置指定代理服务器
-
透明代理:无需要用户手动指定,通过路由、防火墙策略将访问重定向代理服务器
-
正向代理:客户端(A)与服务端(C)之间的服务器(B)。B和A、C都能通信的前提下,A无法与C通信时,此时A的请求让B去代理并将从C取的信息返回给A。
-
反向代理:客户端(A)与服务端(C)之间的服务器(B)。B和A、C都能通信。反向代理的目的是,就是让A不能与C之间直接通信,而是由B来做转发。
正向代理和反向代理的区别
-
位置不同:
- 正向代理:架设在客户端和服务端之间
- 反向代理:架设在服务端
-
代理对象不同
- 正向代理:代理客户端,服务端不知道实际发起请求的客户端;
- 反向代理:代理服务端,客户端不知道实际提供服务的服务端;
-
用途不同
- 正向代理:为两个不同网络中的客户端与服务端提供通信的方式
- 反向代理:隐藏服务器端的地址,提供了高可用和负载均衡的方式
正向代理的应用
- 访问原来无法访问的资源
- 用作缓存,加速访问速度
- 对客户端访问制空权,上网进行认证(上网行为管理)
反向代理的应用
- 保护内网安全
- 负载均衡
- 提供缓存,减少服务器压力
总结:
正向代理推荐使用squid专业的正向代理服务,支持上网行为控制。不建议使用nginx做正向代理,因为其无法代理https协议。
反向代理推荐使用nginx专业的反向代理服务,做为当下性能最好的web服务器,无法拒绝。