A Short History of FTP With Resources
You may have heard the word “FTP” many times. But, do you know what does it mean? FTP is an abbreviation of File Transfer Protocol. As its name indicates, it is an internet protocol that is used to transmit files to and from the server and a client computer that are present over the network.
FTP was created by a student at MIT in the 1970s. The name of that student was Abhay Bhushan. The initial purpose of FTP was to transmit files to and from the server and the client computer that were present over the ARPANet However, due to continuous development and the advancement in technology, FTP also evolved and gone through multiple changes.
The advancement in the technology and the development of the internet has also created many security concerns. The modern Internet is full of security concerns and due to these concerns, FTP is now supported by FTPS and SFTP. However, the purpose of the FTP remained same through all the revisions and changes and it is still used as an internet protocol to transfer files from a client to the server or from the server to the client.
An Overview of FTP
As we already know, that FTP is used to transmit files to and from the server and the client that are present over the network. The relation between the client and the server is known as a client-server relationship. In this relationship, one computer acts as a client and the other computer acts as a server. Both computers are connected to each other with the help of a network. The server stores files and data for the client.
When a client computer needs some information or data, it sends the request to the server, the server then processes this request and responds by providing the necessary information and data to the client. This transfer of files and data between both computers takes place with the help of the FTP protocol. The initial contact that is made between a client and a server is done over an open port that is typically known as port 21. This process is commonly known as the “command channel” or “control connection”.
Before transferring data or files, it is important that the server knows the client. For this reason, the client must introduce itself first. This process is usually done with the help of a username and the password of a client computer. Once the server identifies the client, then they both open a new common port with the help of negotiation. This is known as the data connection and the files or data will be transferred using this data connection. The original connection that was established between the client and the server will remain idle until the process of file transmission is completed.
Security Concerns Regarding FTP
When the FTP was originally created in the 1970s, it had some loopholes but at that time, the security was not a big concern. However, with the development of internet and advancement of technology, security concerns have also increased.
There are still some security concerns regarding FTP. First concern is about the transparency of data. The channels through which data is transmitted are not encrypted. Due to this issue, the data that is transmitted is always vulnerable to attacks on its way from one place to another.
The data is transferred from one place to another in the plain text form which makes it easy for a hacker to access sensitive and personal information of the user. Due to these security concerns, FTP is augmented and in some cases, it is also replaced by its alternative transfer protocols such as SFTP and FTPS.
SFTP is an alternative to FTP. It is a file transfer protocol and the purpose of SFTP is to transfer files and data from client to the server and vice versa. The difference between FTP and SFTP is that SFTP uses a secure connection to transfer files from the client to the server. The connection between a client and a server is secured with the help of Secure Shell (SSH) protocols.
By using this secure shell, there is no need of opening a separate port to transfer files. The data and files are transmitted from one place to another in the packet-based form which makes it different from FTP and FTPS. Due to this, files can be transmitted more easily and the process is faster as compared to other protocols.
FTPS is also a transfer protocol that is used to transfer files from one computer to another over an internet. Basically, FTPS is a secure version of FTP. The methodology to transfer files in FTPS is same as the old FTP. However, FTPS uses SSL encryption to add a layer of protection while transferring data between the client and the server.
In FTPS, before the client provides its personal information to the server for identification, it requests that a connection encrypted by SSL be established. Once this connection is established, only then the client sends the information to identify itself and then the files is transferred from the server to the client.
If the client tries to connect to the server without SSL encryption, the server denies its request and terminate the connection. FTPS is widely used as a secure alternative to basic FTP. But, some people say that it is also being replaced by SFTP.
Though FTP, FTPS, and SFTP are used to transfer files and data from the server to the client. Webmasters also use FTP client that help them to upload and download files between the client and the server more conveniently. Some of the popular FTP clients that are being used by the webmasters are as follows:
- FileZilla: FileZilla is an open source software used by the webmasters. It is an easy to use software and a solution of FTP/FTPS/SFTP.
- WinSCP: WinSCP is also a free and easy to use software. It is an FTP and SFTP client that is specifically used by the Windows users. It not only acts as an SFTP and FTP client but, it also
provides file managing and basic scripting functions to its users.
- Cyberduck: Cyberduck is an open source and free software that is used by Windows and Mac users. It supports all three FTP, SFTP, and FTPS protocols.
- gFTP: This FTP client is an open source software used by the Linux operating systems. It supports FTPS, FTP, HTTPS and SSH file transfer protocols.
Though FTP is continuously evolved and its alternatives are also used on a big scale. But still, it is an important part of the internet and computer networks. Here are a few resources from which you can learn more about history, development, and use of the file transfer protocols:
Following are the links to some online tutorials from which you can learn more about FTP, FTPS, and SFTP:
- FTP for Beginners: This online tutorial offered by the Webmonkey will provide you information about basic FTP and its practical applications for the users of Mac, Windows and Linux operating systems.
- Peeling the Onion: FTP, A Tutorial: This tutorial is produced by Software Diversified Services. It provides information about secure file transfer including SFTP, FTPS, and SSH protocols.
- Tutorial: FTP Made Simple: This tutorial from UC Berkeley Graduate School of Journalism provides information about FTP protocol and its applications in the real world.
- An Introduction to FTP (PDF): This tutorial that is written by Conrad Chung provides information about the history and development of file transfer protocols.
Here are a few books that provide useful information about the file transfer protocols. These books are equally useful for a person who does not have extensive knowledge about this field as well as for experienced webmasters and programmers.
- All About Internet FTP Plus: Learning and Teaching to Transfer Files on the Internet by David F W Robinson: This book is specifically written for the experienced programmers and educators. It provides detailed information about file transfer protocols.
- FTP Fundamentals by A Waleed: This is a short eBook that provides the basic information about
the file transfer protocols and how they are related to web hosting. This book is specifically written for the people who are new in this field and who want to learn the basics of web hosting and file transfer protocols.
- Web Hosting for Dummies by Peter Pollock: This book is available in both digital and printed form. This is a very useful book that provides in-depth information about the web hosting, built-in databases and FTP clients for beginners.
- The Big Book of Internet File Transfer RFCs by Peter Loshin: This book has useful information about FTP, security issues, mechanics of file transfer and modern internet. This book is also available in both forms i.e. printed and digital.
Though FTP (File transfer protocol) is many years old but it is still as relevant and important as it was in 1971. Though growing security concerns pushed us to make changes in the FTP and find its alternatives but still, FTP work as the basis for all this advancement.
- Wikipedia – https://en.wikipedia.org/wiki/File_Transfer_Protocol
- Webopedia – http://www.webopedia.com/TERM/F/ftp.html
- PHP.net – http://php.net/manual/en/book.ftp.php