A reverse proxy is a type of proxy server that retrieves resources on behalf of clients from one or more servers. The resources are then returned to clients as if they originated from the proxy server itself.
Two common points of debate that always come up in the conversation of proxies include, “proxy vs reverse proxy” and “forward proxy vs reverse proxy.” Unlike a forward proxy, which acts as an intermediary for its associated clients to contact any server, a reverse proxy acts as an intermediary for its associated servers to be contacted by any client. Web servers in many cases use reverse-proxying, acting as shields for application frameworks with weaker HTTP capabilities.
To better understand the answer to questions such as “what is a reverse proxy server” and “what is proxy and reverse proxy,” it helps to explore how they are used. There are a number of use cases for reverse proxies. For example, they can hide the existence and characteristics of an origin server; protect against common web-based attacks such as DoS or DDoS; distribute the load from incoming requests to several servers, with each server serving its own application area; and reduce load on origin servers by caching static content and dynamic content; and add basic HTTP access authentication to a web server that doesn’t have any authentication.
Among these benefits are instant and complete protection . When placing the solution inline with traffic, detection and protection occurs automatically and without any additional changes to a website. As long as the solution sits between users and servers, every page, line of text, image, and other resource is protected. Another benefit of pre-access interception is the ability to issue challenges such as computational puzzles submitted to each questionable browser to prove that it functions as expected. This type of pre-access challenge makes sure only true human users behind genuine browsers are accessing your site, rather than automated browsers and scripts.
Another benefit is pre-access detection. Because the solution is inline with traffic, it identifies the requesting device and examines each request as it arrives. Once it has captured a requesting device’s “fingerprint,” it can immediately take action on any identifiable threats. This ensure that an overwhelming majority of threats never reach servers.
In addition, reverse proxy enables real-time threat response . When a violation occurs, the solution is able to serve an appropriate response to that violation in real time. Regardless of the type of threat, being inline allows for the response to happen automatically and conditionally, based on chosen threat responses. A threat response may be simply a quick flash of a blank page triggering an identification test, or depending upon your configured threat responses, a CAPTCHA or Block response page. In either case, being inline allows for this to happen automatically and conditionally, based upon your chosen threat responses. Third party script based solutions just can’t offer this kind of functionality.
Another added benefit of being an in-line reverse proxy is the ability to leverage those fingerprints to track access and usage over time for each requesting device. This data is then used to build baseline user profiles that reflect normal human access patterns in terms of rate of requests, volume of requests, and length of engagement time–data which is fed back to administrators by way of rate limiting recommendations.