Proxies

A proxy server is a server that sits between clients and other servers to mediate requests. The client connects to the proxy, requesting a connection to (say) an FTP server. As long as the proxy server determines that the client is permitted to do so, the proxy server connects to the requested server on behalf of the client. The client's connection to the proxy server then acts as a connection to the requested server, and the client can then communicate with the server as though the proxy isn't there.

There are numerous types of proxy servers available, but the primary ones used for FTP and related protocols are HTTP proxies and SOCKS proxies.

graphic

A proxy connection is made as follows:

  1. The client connects to the proxy server.
  2. The client requests that the proxy server should form a connection to the remote server.
  3. The proxy server connects to the remote server.

Once the connection has been established communications proceed as though the client were connected directly to the server; the proxy simply relays every byte of information sent to and from the server.