What is the difference between FTP and SFTP?

First, let us understand what File Transfer Protocol (FTP) is.


FTP represents File transfer protocol. FTP is a standard internet protocol supported by TCP/IP used for sharing the records from one host to another. FTP needs TCP as a transport protocol to help the reliable end-to-end connections and executes two types of connections in managing data transfers.

The FTP clients initiate the first connection, referred to as the control connection, to well-known port 21 (the client’s port is typically ephemeral). It is on this element that an FTP server listens for it and approaches new connections. The control connection is expressed for all of the control commands a client user uses to activate the server, manipulates files, and removes a session.

The second connection used by FTP is described as the data connection. Usually, the data connection is created on the server port 20. It is based on how the data connection is created; both the client and server can use ephemeral ports.

FTP opens a data connection when a user involves a command needing a data transfer, including a request to retrieve a document or to see a list of the files accessible. Hence, a whole FTP session can open and close without a data connection ever having been opened.

In other terms, when a client begins an FTP session, the control connections open while the control connection is open, and the data connection can be opened and closed multiple times if multiple files are shared.


SFTP is also known as SSH FTP. It can encrypt both control and data during transmission. All data and credentials are encrypted as they move through the web. SSH is a protocol that enables us to remotely link to other systems and execute commands from the command line.

SFTP was generated to share files through the secure channel (SSH). SFTP creates data transfers using the SFTP quicker than other secure FTP connections.


The major differences between FTP and SFTP are as follows −

FTPS stands for Secure File Transfer Protocol Secure.SFTP represents Secure File Transfer Protocol.
FTPS establishes a connection via SSL/TLS.SFTPS establishes a connection via the SSH channel.
FTPS will allow you to create custom commands.SFTP has better control of file permissions, ownership, and properties.
FTPS supports EBCDIC transfers.SFTP allows the creation of symbolic links
FTPS allows the use of Trusted x.509 certificates.SFTP server only needed an individual port to be accessible on the firewall.

Updated on: 18-Nov-2021


Kickstart Your Career

Get certified by completing the course

Get Started