Chapter 1

Curt Warfield
Mastering FTP
Published in
2 min readMar 10, 2021

--

Introduction

FTP or File Transport Protocol is a network protocol that is used to transfer data between multiple computer systems using the client server architecture.

Abhay Bhushan is credited for it’s development while he was a student at MIT Sloan School of Management in 1971. Initially FTP used the ARPANET Network Control Program (NCP) protocol but was later replaced by a version of the TCP/IP protocol in 1980.

FTP has continued to grow and evolve over the years and is still a relevant tool.

At it’s most basic level, FTP is an easy way to transfer files between two computer systems over a network connection. This can be done over a local connection or remotely via an internet connection.

Because FTP uses the client-server architecture, one computer is designated as the server and the other one is designated as the client.

The FTP server stores the files and data that will be offered to the client when a request is made.

When an FTP client makes a request to the server, it identifies itself to the server and the authentication process is completed using the client’s user-name and password.

Typically the FTP session uses port 21 for the command channel and port 20 for the data channel.

The command channel handles the delivery of the commands and responses and the data channel handles the actual transfer of the files.

FTP can use two connection modes for communication. The server can be configured to use active or passive modes. The difference between active and passive FTP connections lies in whether the server or the client initiates the data connection.

In active mode, the server initiates the data connection with the client after the client has established a connection on the command channel. In passive mode it is the other way round, the client initiates the data connection with the server. Both connection methods have their own pros and cons.

Active Mode

  • Active mode is more secure for the server as it does not require un- secured ports to be open at the server end, because it is the server that initiates the data connection to the client.
  • Active mode can fail in cases where the client is behind a firewall and protected by NAT(masquerading). This is because the firewall will not know which client behind the firewall should receive the return connection.

Passive Mode

  • Passive mode requires the client to initiate the connection which means it works better for clients that are behind a firewall.
  • Passive mode is not considered as secure as active mode.

Summary

Now that we’ve discussed a brief history of FTP and what it does, it’s time to move and start configuring our FTP servers.

--

--