Introduction to the FTP Protocol (2024)

Modules | Directives | FAQ | Glossary | Sitemap

Apache HTTP Server Version 2.4

Introduction to the FTP Protocol (1)

Available Languages: en

The File Transfer Protocol (FTP) is a classicstandard for transfer of files and records over a TCP/IP network. Itwas defined by Jon Postel and Joyce Reynolds in RFC 959,which was released in 1985. This means that FTP precedes the HTTPprotocol that is usually associated with the Apache server by morethan half a decade. The mod_ftp module brings supportfor FTP to the Apache server and includes several updates to theoriginal protocol. Most notably, mod_ftp implements FTPover Transport Layer Security (TLS) as described in RFC4217.

On this manual page, a brief technical overview of the FTP protocolis provided, followed by a discussion of the FTP implementation bymod_ftp.

Overview of the FTP Protocol

The File Transfer Protocol (FTP) is designed to facilitatebi-directional transfer of files and records between hosts on a TCP/IPnetwork. Unlike HTTP, the FTP protocol is stateful: the clientestablishes a Control Connection for the duration of an FTPsession that typically spans multiple data transfers.

FTP uses a separate TCP connection for data transfer. Commands areissued and acknowledged over the Control Connection, a TCPconnection to well-known port 21. If the user issues a command thatrequires a response more elaborate than a one-line response code, aData Connection is established between the client and theserver. The response data—the contents of a file or adirectory listing—is sent over that data connection.

Historically, the data connection was established from the serverback to the client. The client would bind to an arbitrary port, andthen transmit its IP address and the port number to the server usingthe PORT command. The server then set up a data connectionto that port on the client host, whereupon the client issues the datatransfer command. This approach is referred to as Active FTP(since the server acts to set up the data connection). Unfortunately,active FTP does not work well with firewalls and Network AddressTranslation (NAT) because incoming connections are often blocked. Inthe case of NAT, the client only instructs the server to connect toits internal, non-routable IP address. Some firewalls and NAT routerssupport the FTP protocol, but this support is not universal. In caseswhere FTP is supported, these devices can rewrite the PORT command andestablish ad-hoc access rules for FTP data connections.

Because of these limitations, an alternative approach was developedin which the direction of the data connection is reversed. This isknown as Passive FTP. Before starting a data transfer, theclient issues a PASV command. The server binds to anarbitrary port number and transmits its IP address and that portnumber back to the client. The client then sets up a data connectionto this address and port on the server, and issues the data transfercommand. Passive FTP is more firewall-friendly than Active FTP,because client-side firewalls are typically more lenient on outgoingconnections than inbound ones.

While it is possible for FTP to support unauthenticated sessions,in practice all sessions are authenticated. Typically, FTP serversauthenticate against the user database of the server on which theyrun. To facilitate downloads by the general public, FTP serversgenerally support a special username (by convention "anonymous"or "ftp") to provide read-only access. Users are asked (butoften not required) to provide their e-mail address as response to thePassword prompt.

For more information on the basic functionality of the FTP protocolplease refer to RFC 959 or Wikipedia.

Comments

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our mailing lists.

Introduction to the FTP Protocol (2024)
Top Articles
16 Best Stock Photo Sites in 2024 [Free & Paid]
Is GPS Tracking Legal? - Private Investigator 360
Fernald Gun And Knife Show
Compare Foods Wilson Nc
Midflorida Overnight Payoff Address
Missing 2023 Showtimes Near Cinemark West Springfield 15 And Xd
Botanist Workbench Rs3
Aiken County government, school officials promote penny tax in North Augusta
Acbl Homeport
Our History | Lilly Grove Missionary Baptist Church - Houston, TX
Nexus Crossword Puzzle Solver
2024 Non-Homestead Millage - Clarkston Community Schools
Marion County Wv Tax Maps
Les Schwab Product Code Lookup
Tcgplayer Store
The Cure Average Setlist
Lazarillo De Tormes Summary and Study Guide | SuperSummary
Union Ironworkers Job Hotline
The best TV and film to watch this week - A Very Royal Scandal to Tulsa King
Bridge.trihealth
Craigslist Southern Oregon Coast
Hdmovie 2
Mail.zsthost Change Password
Jc Green Obits
Sadie Sink Reveals She Struggles With Imposter Syndrome
Asteroid City Showtimes Near Violet Crown Charlottesville
Wsbtv Fish And Game Report
Ficoforum
Jesus Revolution Showtimes Near Regal Stonecrest
No Limit Telegram Channel
Narragansett Bay Cruising - A Complete Guide: Explore Newport, Providence & More
Yale College Confidential 2027
Craigs List Jax Fl
Kleinerer: in Sinntal | markt.de
Bfri Forum
Smayperu
Where Do They Sell Menudo Near Me
Pitco Foods San Leandro
Craigslist West Seneca
The best Verizon phones for 2024
Enjoy4Fun Uno
Bernie Platt, former Cherry Hill mayor and funeral home magnate, has died at 90
Craigslist Jobs Brownsville Tx
Telugu Moviez Wap Org
Wait List Texas Roadhouse
Gopher Hockey Forum
The power of the NFL, its data, and the shift to CTV
Celsius Claims Agent
The Blackening Showtimes Near Ncg Cinema - Grand Blanc Trillium
6463896344
Shiftselect Carolinas
How Did Natalie Earnheart Lose Weight
Latest Posts
Article information

Author: Chrissy Homenick

Last Updated:

Views: 6168

Rating: 4.3 / 5 (74 voted)

Reviews: 89% of readers found this page helpful

Author information

Name: Chrissy Homenick

Birthday: 2001-10-22

Address: 611 Kuhn Oval, Feltonbury, NY 02783-3818

Phone: +96619177651654

Job: Mining Representative

Hobby: amateur radio, Sculling, Knife making, Gardening, Watching movies, Gunsmithing, Video gaming

Introduction: My name is Chrissy Homenick, I am a tender, funny, determined, tender, glorious, fancy, enthusiastic person who loves writing and wants to share my knowledge and understanding with you.