FTP Proxy - File Transfer Protocol Proxy ========================================= .. panels:: :container: container pb-4 :column: col-lg-12 p-2 :card: shadow .. panels:: :container: container pb-4 :column: col-lg-12 p-2 :card: shadow **What is FTP Proxy?** An FTP Proxy is a server that acts as an intermediary between a client and an FTP server. It forwards FTP requests from clients to external or internal FTP servers, often applying rules, logging, or authentication in the process. .. panels:: :container: container pb-4 :column: col-lg-12 p-2 :card: shadow **Why is FTP Proxy useful?** * Adds security by controlling and filtering FTP traffic. * Enables auditing and logging of FTP sessions. * Helps enforce network policies (e.g., access control). * Allows FTP traffic through firewalls that may block direct FTP communication. * Supports NAT traversal in restrictive network environments. .. panels:: :container: container pb-4 :column: col-lg-12 p-2 :card: shadow **How it works?** * The client sends an FTP request to the FTP proxy instead of directly to the FTP server. * The proxy analyzes, logs, and forwards the request to the target FTP server. * The proxy can rewrite commands, inspect data, or enforce authentication. * Responses from the server pass back through the proxy to the client. .. panels:: :container: container pb-4 :column: col-lg-12 p-2 :card: shadow **Where is FTP Proxy used?** * In corporate or enterprise networks to monitor and control file transfers. * In firewall-protected environments to facilitate FTP communication. * In secure zones where FTP access must be strictly controlled. * In ISPs or security appliances offering managed FTP access. .. panels:: :container: container pb-4 :column: col-lg-12 p-2 :card: shadow **Which OSI layer does this protocol belong to?** * FTP Proxy operates at the **Application Layer (Layer 7)** of the OSI model. * It understands and processes FTP commands and responses. .. panels:: :container: container pb-4 :column: col-lg-12 p-2 :card: shadow **IS FTP Proxy windows specific?** * No, FTP proxy is not Windows-specific. * It can be implemented on any operating system with compatible proxy software (e.g., Blue Coat, WinGate, or Squid with FTP support). .. panels:: :container: container pb-4 :column: col-lg-12 p-2 :card: shadow **IS FTP Proxy Linux Specific?** * No, FTP proxy is not Linux-specific. * It is commonly deployed on Linux servers but also runs on Windows, BSD, and other platforms. .. panels:: :container: container pb-4 :column: col-lg-12 p-2 :card: shadow **Which Transport Protocol is used by FTP Proxy?** * FTP Proxy uses **TCP**, just like the FTP protocol it supports. * It relays control and data connections via TCP streams. .. panels:: :container: container pb-4 :column: col-lg-12 p-2 :card: shadow **Which Port is used by FTP Proxy?** * By default, it handles connections on: * **Port 21** for FTP control. * **Port 20** (or dynamic ports) for data transfer. * The proxy itself might be configured to listen on custom ports depending on network setup. .. panels:: :container: container pb-4 :column: col-lg-12 p-2 :card: shadow **Is FTP Proxy using Client server model?** * Yes, FTP Proxy uses the **client-server model**. * The proxy acts as a server to the client and as a client to the actual FTP server. * It intermediates all communication between the two. .. panels:: :container: container pb-4 :column: col-lg-12 p-2 :card: shadow Topics in this section, * :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 ` .. _FTP_step1: .. tab-set:: .. tab-item:: Learnings in this section * In this section, you are going to learn .. _FTP_step2: .. tab-set:: .. tab-item:: Terminology * Terminology .. _FTP_step3: .. tab-set:: .. tab-item:: Version Info * Version Info .. _FTP_step5: .. tab-set:: .. tab-item:: FTP Version&RFC Details * rfc details .. _FTP_step18: .. tab-set:: .. tab-item:: FTP Basic Setup on Ubuntu using IPv4 * setup .. _FTP_step19: .. tab-set:: .. tab-item:: FTP Basic Setup on Ubuntu using IPv6 * setup .. _FTP_step6: .. tab-set:: .. tab-item:: FTP Protocol Packet Details * packet details .. _FTP_step7: .. tab-set:: .. tab-item:: FTP Usecases * usecases .. _FTP_step8: .. tab-set:: .. tab-item:: FTP Basic Features * features .. _FTP_step17: .. tab-set:: .. tab-item:: Reference links * Reference links