Flux rss

Proxy and reverse proxy servers

Proxy servers

A proxy server is a machine which acts as an intermediary between the computers of a local area network (sometimes using protocols other than TCP/IP) and the Internet

Most of the time the proxy server is used for the web, and when it is, it's an HTTP proxy. However, there can be proxy servers for every application protocol (FTP, etc.).

diagram of an intranet with a proxy server

The operating principle of a proxy server

The basic operating principle of a proxy server is quite simple: It is server which acts as a "proxy" for an application by making a request on the Internet in its stead. This way, whenever a user connects to the Internet using a client application configured to use a proxy server, the application will first connect to the proxy server and give it its request. The proxy server then connects to the server which the client application wants to connect to and sends that server the request. Next, the server gives its reply to the proxy, which then finally sends it to the application client

how a proxy server works

Features of a proxy server

Nowadays, by using TCP/IP within local area networks, the relaying role that the proxy server plays is handled directly by gateways and routers. However, proxy servers are still being used, as they have some other features.

Caching

Most proxies have a cache, the ability to keep pages commonly visited by users in memory (or "in cache"), so they can provide them as quickly as possible. Indeed, the term "cache" is used often in computer science to refer to a temporary data storage space (also sometimes called a "buffer.")

A proxy server with the ability to cache information is generally called a "proxy-cache server".

The feature, implemented on some proxy servers, is used both to reduce Internet bandwidth use and to reduce document loading time for users.

Nevertheless, to achieve this, the proxy must compare the data it stores in cached memory with the remote data on a regular basis, in order to ensure that the cached data is still valid.

Filtering

What's more, by using a proxy server, connections can be tracked by creating logs for systematically recording user queries when they request connections to the Internet

Because of this, Internet connections can be filtered, by analysing both client requests and server replies. When filtering is done by comparing a client's request to a list of authorised requests, this is called whitelisting, and when it's done with a list of forbidden sites, it's called blacklisting. Finally, analysing server replies that comply with a list of criteria (such as keywords) is called content filtering.

Authentication

As a proxy is an indispensable intermediary tool for internal network users who want to access external resources, it can sometimes be used to authenticate users, meaning to ask them to identify themselves, such as with a username and password. It is also easy to grant access to external resources only to individuals authorised to do so, and to record each use of external resources in log files.

This type of mechanism, when implemented, obviously raises many issues related to individual liberties and personal rights.

Reverse-proxy servers

A reverse-proxy is a "backwards" proxy-cache server; it's a proxy server that, rather than allowing internal users to access the Internet, lets Internet users indirectly access certain internal servers.

reverse-proxy server diagram

The reverse-proxy server is used as an intermediary by Internet users who want to access an internal website, by sending it requests indirectly. With a reverse-proxy, the web server is protected from direct outside attacks, which increases the internal network's strength. What's more, a reverse-proxy's cache function can lower the workload if the server it is assigned to, and for this reason is sometimes called a server accelerator.

Finally, with perfected algorithms, the reverse-proxy can distribute the workload by redirecting requests to other, similar servers; this process is called load balancing.

Setting up a proxy server

The most widely used proxy, without a doubt, is Squid, a free software program available for several platforms, including Windows and Linux.

In Windows, there are several programs for setting up a local area network proxy server at a low cost:

  • Wingate is the most common solution (but isn't free of charge)
  • Configuring a proxy with Jana server is becoming more and more common
  • Windows 2000 includes Microsoft Proxy Server (MSP), which works with Microsoft Proxy Client


Last update on Thursday October 16, 2008 02:43:13 PM.
This document entitled « Proxy and reverse proxy servers » from Kioskea (en.kioskea.net) is made available under the Creative Commons license. You can copy, modify copies of this page, under the conditions stipulated by the licence, as this note appears clearly.
Encrypt a file through proxy server Hello, Using an online free proxy server, is there any of them that would encrypt the file i am downloading from another web site before it came to my pc? I.e. from website, to proxy server, gets encrypted, then to me Or even zip the file before... en.kioskea.net/forum/affich-15888-encrypt-a-file-through-proxy-server
[Ubuntu]Installing an HTTP proxy server (Squid) Installing an HTTP proxy server (Squid) 1.Installing the proxy 2.Configuring the proxy 2.1.Naming the proxy 2.2 Choosing the Port 2.3.Choosing the interface 2.4. Setting access rights and priorities 2.5. Authorizing access to group 2.6.... en.kioskea.net/faq/sujet-804-ubuntu-installing-an-http-proxy-server-squid
Installing an easy HTTP proxy-cache (polipo) Installing an easy HTTP proxy-cache (polipo) Intro Quick Installation Allowing hosts on the LAN to connect Changing the port Use a proxy server parent Using an alternative DNS server Disabling IPv6 More info Intro Installing an... en.kioskea.net/faq/sujet-805-installing-an-easy-http-proxy-cache-polipo
RCP Server not availableRCP Server not available RCP stands for Remote Procedure Call and if the computer displays “Operation could not be completed. The RPC server is unavailable” while trying to access the printers installed on the computer or trying to... en.kioskea.net/faq/sujet-356-rcp-server-not-available
Server Response: ERROR 554 - RELAY ACCESS DENIEDServer Response: ERROR 554 - RELAY ACCESS DENIED Your email client displays the following error: Error 554 - Relay Access Denied This is to the use of an outgoing server (SMTP) outside the provider field. Due to spam, SMTP... en.kioskea.net/faq/sujet-1200-server-response-error-554-relay-access-denied
[Linux]Having a daily report of servers by mail[Linux]Having a daily report of servers by mail The monitoring and administration of Linux systems is a very difficult task when there is large number of interconnected servers, system resources and updates to each of them it,must... en.kioskea.net/faq/sujet-789-linux-having-a-daily-report-of-servers-by-mail
Jana Server is a transparent proxy ?Hello, I am working as a student to complete a project on a wireless network, and that project comes accross an implementation within the network. we need to instal 3 access points around the site and i was wondering if anyone knows if Jana Server... en.kioskea.net/forum/affich-7407-jana-server-is-a-transparent-proxy
Firefox connection issuesHello, I have a problem with Firefox on my Mac. I had to change my network settings on my computer to use a proxy server to get onto the web at one hotel. Since I have done this (in the hotel everything worked fine) firefox cannot open any other pages... en.kioskea.net/forum/affich-24382-firefox-connection-issues
Facebook Server Times OutThrough searches, I see that Facebook servers have had issues with timing out... I am experiencing the following problems: 1. Facebook Login page will not load 2. If the login page loads, I enter my email and password, and the server times out 3. My... en.kioskea.net/forum/affich-19410-facebook-server-times-out
Download ProxeeDoes your company use the server Proxy? Do you travel with your laptop computer a lot and you are often connected to different networks? Do you want to sail anonymously? If answer is yes, then you must obtain Proxee fast. Proxee is an application... en.kioskea.net/telecharger/telecharger-794-proxee
Download AnalogX ProxyAnalogX Proxy is a waiter very light proxy (238 KB), who allows all machines of your network to have the access to Internet thanks to a machine exchange. It understands protocols HTTP (webs), HTTPS (secure Web), POP3 (accept from the mail), SMTP (Send... en.kioskea.net/telecharger/telecharger-163-analogx-proxy
Networking - Client/Server Architecture Numerous applications run in a client/server environment, this means that client computers (computers forming part of the network) contact a server, generally a very powerful computer in terms of input/output, which provides services to the client... en.kioskea.net/cs/csintro.php3
Networking - 3-Tier Client/Server Architecture 2-tier architecture is used to describe client/server systems where the client requests resources and the server responds directly to the request, using its own resources. This means that the server does not call on another application in order to... en.kioskea.net/cs/cs3tier.php3
Intranet - Installing a mail server The most commonly used e-mail server in Linux is Sendmail; however, as it is very hard to configure, we will use Qmail, an alternative e-mail server, instead. Qmail is made up of a group of programs that work with different UID/GIDs, in order to... en.kioskea.net/intranet/resmail.php3