什么是反向代理?


Answers:


30

反向代理,也称为“入站”代理,是一种服务器,它从Internet接收请求并将请求转发(代理)到一小组服务器,这些服务器通常位于内部网络上,而不能从外部直接访问。这是“反向”的,因为传统的(“出站”)代理从内部网络上的一小组客户端接收请求,并将请求转发到Internet。

反向代理可用于允许经过身份验证的用户访问Intranet,即使他们位于外部也是如此。内部网络上的用户可以直接访问Intranet服务器(其IP地址是他们的身份验证),但是内部网络上的用户必须向代理服务器进行身份验证(通常使用用户名和密码)才能被允许进入。


15
当我第一次听说反向代理时,“入站代理”这个名称对我来说会更有意义。
l0c0b0x

5

是的,反向代理经常用于负载均衡。反向代理为多个服务器提供单个接口,并在这些服务器之间分配请求。它最常见的用途是负载平衡和缓存。


5

反向代理可用于为内部资源提供安全性。两个常见的是Microsoft ISA服务器和带有mod_proxy的Apache。

例如,如果内部局域网中有Microsoft Exchange服务器,但想授予Internet用户访问Outlook Web Access(OWA)的权限,则可以将服务器放在DMZ中(不推荐),或在内部网络的防火墙。使用反向代理,您可以将反向代理放入DMZ,并且所有OWA请求都将定向到反向代理。然后,它接受该请求并将其转发给Exchange服务器,充当中间人。

使用Apache mod_proxy和命名的虚拟主机,可以根据是否涉及SSL来使用单个IP地址反向代理多个站点。

这样,您的服务器和数据受到保护,同时仍然允许安全访问。


4

反向代理也经常用于缓存昂贵的计算资源。这样一来,您便可以每分钟生成一次给定的页面(例如),而不是每个请求一次。对于高流量的网站,这可能是一个重要的好处,尤其是对于主页;许多网站看到其访问量的70%转到首页,此后再也没有。缓存反向代理可以为最终用户透明地提供此页面的静态版本,而无需重写应用程序。


2

代理(本质上)是事务或请求的中介。“代理”的标准网络用法用于保护身份/位置/等的中间体。的请求创建者。“反向代理”是保护请求目标的中介。“透明代理”不保护任何一方。

其他技术(例如负载平衡,数据包筛选,缓存等)可以与代理技术结合使用(如其他人所述),以显着提高安全性和性能。


1

之所以称为反向代理,是因为它充当LAN外部传入请求的代理。普通代理(例如Squid或MS ISA)充当LAN中传出请求的代理。

通常,您将使用反向代理来实现负载平衡或安全性。在前一种情况下,它接受传入的请求(这是一个相对轻量级的过程),并将请求转发到一个或多个进行实际工作的Web服务器。在后一种情况下,它可以用于过滤来自未授权来源的请求。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.