Forward Proxy Protocols ======================== This section introduces various proxy types used to route web traffic through intermediate servers for purposes such as security, anonymity, or access control. .. toctree:: :maxdepth: 1 :hidden: :includehidden: HTTP HTTPS SOCKS5 FTP CGI Transparent Anonymous Distorting High_Anonymity .. list-table:: :widths: 20 60 20 :header-rows: 1 * - Proxy Type - Description - Use Case * - HTTP Proxy - Intercepts and forwards HTTP requests between clients and servers. *Supports caching and content filtering.* - Web traffic routing and access control. * - HTTPS Proxy - Similar to HTTP proxy but supports encrypted traffic (via `CONNECT` method). *Ensures secure proxying for HTTPS traffic.* - Encrypted web access and secure inspection. * - SOCKS5 Proxy - General-purpose proxy that operates at Layer 5. *Supports TCP/UDP and authentication.* - Torrenting, gaming, or bypassing restrictions. * - FTP Proxy - Proxies FTP control and data commands to manage authentication and access. *Relays FTP sessions with command filtering and user controls.* - Controlled FTP access and logging. * - CGI Proxy - Web‑based proxy that fetches content via HTTP forms without configuring client settings. *Enables proxying through constrained environments.* - Quick access on restrictive networks; anonymization via browser. * - Transparent Proxy - Intercepts traffic without requiring client configuration. *Ideal for network-wide caching, filtering, or monitoring.* - Enterprise or ISP-level traffic optimization and policy enforcement. * - Anonymous Proxy - Reveals it's a proxy but hides the client's IP address. *Provides moderate anonymity without complete obfuscation.* - Privacy-conscious browsing and limited tracing. * - Distorting Proxy - Identifies as a proxy and supplies a fake client IP. *Misleads destination servers about the user's origin.* - Circumventing IP-based blocks with obfuscation. * - High Anonymity (Elite) Proxy - Neither reveals that it's a proxy nor discloses client IP. *Offers maximum anonymity—appears as a direct request.* - Maximum privacy browsing with minimal detection. .. tab-set:: .. tab-item:: HTTP Proxy **RFC:** Based on HTTP/1.1 (RFC 7230) **Main Features:** - Forwards only HTTP traffic - Supports caching, content filtering, and access control - Easy to configure for web clients **Use Cases:** - Caching and logging web access - Restricting access to specific websites **Alternative Proxies:** - HTTPS – For secure connections - SOCKS5 – For general-purpose proxying .. panels:: :container: container pb-4 :column: col-lg-12 p-2 :card: What You Will Learn in This Section **Let us learn more about HTTP Proxy:** * :ref:`Learnings in this section ` * :ref:`Terminology ` * :ref:`Version Info ` * :ref:`High Level Protocol Setup ` * :ref:`Experimental Setup ` * :ref:`SW Info ` * :ref:`Application ` * :ref:`Libraries ` * :ref:`Setup HTTP Proxy server on ubuntu ` * :ref:`Configure HTTP Proxy Server details on client using firefox ` * :ref:`Configure HTTP Proxy Server details on client using chrome ` * :ref:`Configure HTTP Proxy Server details on client using system settings ` * :ref:`Check Connection to Proxy Server ` * :ref:`Use case curl ` * :ref:`Use case wget ` * :ref:`Reference links ` .. button-link:: ./HTTP.html :color: primary :shadow: :expand: Jump to "HTTP Proxy" .. tab-set:: .. tab-item:: HTTPS Proxy **RFC:** Uses HTTP `CONNECT` method (RFC 2817) **Main Features:** - Proxies encrypted HTTPS traffic - Enables SSL/TLS tunneling - Useful for secure inspection in enterprises **Use Cases:** - Secure browsing with access control - Logging encrypted sessions in corporate networks **Alternative Proxies:** - HTTP – For plain web traffic - SOCKS5 – For more flexible tunneling .. panels:: :container: container pb-4 :column: col-lg-12 p-2 :card: What You Will Learn in This Section **Let us learn more about HTTPS Proxy:** * :ref:`Learnings in this section ` * :ref:`Terminology ` * :ref:`Version Info ` * :ref:`High Level Protocol Setup ` * :ref:`Experimental Setup ` * :ref:`SW Info ` * :ref:`Application ` * :ref:`Libraries ` * :ref:`Setup HTTPS Proxy server on ubuntu ` * :ref:`Configure HTTPS Proxy server details on client using certificates ` * :ref:`Configure HTTPS Proxy server details on client using firefox ` * :ref:`Configure HTTPS Proxy server details on client using chrome ` * :ref:`Check connection to the Proxy server ` * :ref:`Use case curl ` * :ref:`Setup custom webserver on ubuntu ` * :ref:`Configure custom webserver details on both sides(server and client side) using certificates ` * :ref:`Decrypting HTTPS traffic in wireshark between proxyserver to webserver and webserver to proxyserver ` * :ref:`Decrypting HTTPS traffic in wireshark between client to proxyserver and proxyserver to client ` * :ref:`Meaning of cert filenames ` * :ref:`Reference links ` .. button-link:: ./HTTPS.html :color: primary :shadow: :expand: Jump to "HTTPS Proxy" .. tab-set:: .. tab-item:: SOCKS5 Proxy **RFC:** RFC 1928 **Main Features:** - Layer 5 proxy that supports both TCP and UDP - Authentication and flexible protocol support - No protocol-specific logic (unlike HTTP) **Use Cases:** - Torrenting, gaming, bypassing geo-blocks - Generic proxy support in many applications **Alternative Proxies:** - HTTP/HTTPS – Simpler for browsers - VPN – Encrypts and tunnels all traffic .. panels:: :container: container pb-4 :column: col-lg-12 p-2 :card: What You Will Learn in This Section **Let us learn more about SOCKS5 Proxy:** * :ref:`Learnings in this section ` * :ref:`Terminology ` * :ref:`Version Info ` * :ref:`High Level Protocol Setup ` * :ref:`Experimental Setup ` * :ref:`SW Info ` * :ref:`Application ` * :ref:`Libraries ` * :ref:`Setup SOCKS5 Proxy server on Ubuntu ` * :ref:`Configure SOCKS5 Proxy server details on client using firefox ` * :ref:`Configure SOCKS5 Proxy server details on client using chrome ` * :ref:`Configure SOCKS5 Proxy server details on client using system settings ` * :ref:`Check connection to SOCKS5 Proxy server ` * :ref:`Use case curl with HTTPS ` * :ref:`Use case wget with HTTPS` * :ref:`Use case curl with HTTP ` * :ref:`Use case wget with HTTP` * :ref:`Setup custom webserver on ubuntu ` * :ref:`Configure custom webserver details on ubuntu machine using certificates ` * :ref:`Decrypting HTTPS traffic in wireshark using curl ` * :ref:`Meaning of cert filenames` * :ref:`Reference links ` .. button-link:: ./SOCKS5.html :color: primary :shadow: :expand: Jump to "SOCKS5 Proxy" .. tab-set:: .. tab-item:: FTP Proxy **Concept:** Application-level FTP relay proxy (application-layer gateway) :contentReference[oaicite:0]{index=0} **Main Features:** - Relays FTP control and data sessions, enabling policy enforcement and authentication :contentReference[oaicite:1]{index=1} - Filters FTP commands (e.g., restricts `put`, `get`) and logs operations for auditing :contentReference[oaicite:2]{index=2} - Manages NAT traversal for FTP by rewriting control/data channel addresses :contentReference[oaicite:3]{index=3} **Use Cases:** - Controlled FTP access in corporate or academic environments - Enforcing file transfer security and logging activity - Handling FTP sessions through NAT/firewalls transparently **Alternative Proxies:** - SOCKS5 – Wider application support but lacks FTP‑specific command awareness - HTTP – Limited support via CONNECT, not native to FTP .. panels:: :container: container pb-4 :column: col-lg-12 p-2 :card: What You Will Learn in This Section **Let us learn more about FTP Proxy:** * :ref:`Learnings in this section ` * :ref:`Terminology ` * :ref:`Version Info ` * :ref:`FTP Version&IEEE Details ` * :ref:`FTP Basic Setup on Ubuntu using IPv4 ` * :ref:`FTP Basic Setup on Ubuntu using IPv6 ` * :ref:`FTP Protocol Packet Details ` * :ref:`FTP Usecases ` * :ref:`FTP Basic Features ` * :ref:`Reference links ` .. button-link:: ./FTP.html :color: primary :shadow: :expand: Jump to "FTP Proxy" .. tab-set:: .. tab-item:: CGI Proxy **Concept:** Web-based proxy accessed via a simple CGI interface :contentReference[oaicite:4]{index=4} **Main Features:** - Users enter a URL via a web form; the server fetches and returns content - No client-side configuration needed - Good for bypassing proxy restrictions and enabling anonymity **Use Cases:** - Accessing blocked sites from restrictive networks - Quick proxying when client settings cannot be changed **Alternative Proxies:** - HTTP Proxy – Requires client configuration - VPN – Higher overhead for cross-network tunneling .. panels:: :container: container pb-4 :column: col-lg-12 p-2 :card: What You Will Learn in This Section **Let us learn more about CGI Proxy:** * :ref:`Learnings in this section ` * :ref:`Terminology ` * :ref:`Version Info ` * :ref:`CGI Version&IEEE Details ` * :ref:`CGI Basic Setup on Ubuntu using IPv4 ` * :ref:`CGI Basic Setup on Ubuntu using IPv6 ` * :ref:`CGI Protocol Packet Details ` * :ref:`CGI Usecases ` * :ref:`CGI Basic Features ` * :ref:`Reference links ` .. button-link:: ./CGI.html :color: primary :shadow: :expand: Jump to "CGI Proxy" .. tab-set:: .. tab-item:: Transparent Proxy **Definition:** Intercepts client traffic without needing client configuration :contentReference[oaicite:5]{index=5} **Main Features:** - Operates invisibly on the network (no setup on client) - Enables caching, content filtering, or monitoring at scale - Often implemented at layer 3/4 or via inline network appliances **Use Cases:** - ISP or enterprise-level traffic optimization - Policy enforcement and content caching at the gateway **Alternative Proxies:** - HTTP Proxy – Requires explicit client configuration - Reverse Proxy – Serves content from back-end servers .. panels:: :container: container pb-4 :column: col-lg-12 p-2 :card: What You Will Learn in This Section **Let us learn more about Transparent Proxy:** * :ref:`Learnings in this section ` * :ref:`Terminology ` * :ref:`Version Info ` * :ref:`Transparent Version&IEEE Details ` * :ref:`Transparent Basic Setup on Ubuntu using IPv4 ` * :ref:`Transparent Basic Setup on Ubuntu using IPv6 ` * :ref:`Transparent Protocol Packet Details ` * :ref:`Transparent Usecases ` * :ref:`Transparent Basic Features ` * :ref:`Reference links ` .. button-link:: ./Transparent.html :color: primary :shadow: :expand: Jump to "Transparent Proxy" .. tab-set:: .. tab-item:: Anonymous Proxy **Definition:** Identifies as a proxy but hides the client's IP :contentReference[oaicite:6]{index=6} **Main Features:** - Masks user’s IP while revealing proxy use - Useful when some anonymity is needed but proxies are allowed **Use Cases:** - Privacy protection in restricted networks - Moderate anonymity for browsing and testing **Alternative Proxies:** - Distorting Proxy – Adds false client IPs for obfuscation - High Anonymity Proxy – Removes all proxy footprints .. panels:: :container: container pb-4 :column: col-lg-12 p-2 :card: What You Will Learn in This Section **Let us learn more about Anonymous Proxy:** * :ref:`Learnings in this section ` * :ref:`Terminology ` * :ref:`Version Info ` * :ref:`Anonymous Version&IEEE Details ` * :ref:`Anonymous Basic Setup on Ubuntu using IPv4 ` * :ref:`Anonymous Basic Setup on Ubuntu using IPv6 ` * :ref:`Anonymous Protocol Packet Details ` * :ref:`Anonymous Usecases ` * :ref:`Anonymous Basic Features ` * :ref:`Reference links ` .. button-link:: ./Anonymous.html :color: primary :shadow: :expand: Jump to "Anonymous Proxy" .. tab-set:: .. tab-item:: Distorting Proxy **Definition:** Identifies as a proxy and supplies a fake client IP :contentReference[oaicite:7]{index=7} **Main Features:** - Adds misleading client IP in requests - Masks real origin creatively **Use Cases:** - Evading basic IP filters or geo-blocks - False origin attribution in moderate anonymity setups **Alternative Proxies:** - Anonymous Proxy – Masks, but does not mislead - High Anonymity Proxy – No proxy trace at all .. panels:: :container: container pb-4 :column: col-lg-12 p-2 :card: What You Will Learn in This Section **Let us learn more about Distorting Proxy:** * :ref:`Learnings in this section ` * :ref:`Terminology ` * :ref:`Version Info ` * :ref:`Distorting Version&IEEE Details ` * :ref:`Distorting Basic Setup on Ubuntu using IPv4 ` * :ref:`Distorting Basic Setup on Ubuntu using IPv6 ` * :ref:`Distorting Protocol Packet Details ` * :ref:`Distorting Usecases ` * :ref:`Distorting Basic Features ` * :ref:`Reference links ` .. button-link:: ./Distorting.html :color: primary :shadow: :expand: Jump to "Distorting Proxy" .. tab-set:: .. tab-item:: High Anonymity (Elite) Proxy **Definition:** Hides the proxy’s existence and user’s IP :contentReference[oaicite:8]{index=8} **Main Features:** - Appears as a direct client request - Provides maximum anonymity and resists detection **Use Cases:** - Privacy-sensitive browsing situations - Avoiding detection by target servers or surveillance **Alternative Proxies:** - Anonymous Proxy – Discloses proxy identity only - VPN – Encrypts but may reveal proxy endpoint .. panels:: :container: container pb-4 :column: col-lg-12 p-2 :card: What You Will Learn in This Section **Let us learn more about High Anonymity Proxy:** * :ref:`Learnings in this section ` * :ref:`Terminology ` * :ref:`Version Info ` * :ref:`High_Anonymity Version&IEEE Details ` * :ref:`High_Anonymity Basic Setup on Ubuntu using IPv4 ` * :ref:`High_Anonymity Basic Setup on Ubuntu using IPv6 ` * :ref:`High_Anonymity Protocol Packet Details ` * :ref:`High_Anonymity Usecases ` * :ref:`High_Anonymity Basic Features ` * :ref:`Reference links ` .. button-link:: ./High_Anonymity.html :color: primary :shadow: :expand: Jump to "High Anonymity Proxy"