FTP
FTP (File Transfer Protocol) is one of the oldest internet protocols, used to transfer files between a client computer and a server. It lets you upload files to hosting, download copies, create directories and change permissions — usually through client programs such as FileZilla, WinSCP or Cyberduck.
How FTP works
FTP uses two separate communication channels. The control channel (port 21) carries commands and responses, while the data channel (port 20 or a dynamic port) transfers the actual file contents. Depending on how the data connection is established, there are two modes:
- Active mode — the server opens the return connection back to the client, which firewalls and NAT often block;
- Passive mode — the client initiates both connections, so it works reliably from behind a firewall and home routers.
The main weakness of classic FTP is the lack of encryption — the login, password and files all travel in clear text. In practice, safer variants are used instead: SFTP built on SSH, and FTPS, which wraps FTP in a TLS layer.
Practical application
The most common tasks are uploading website files to a server, updating CMS themes and plugins, moving backups and making bulk changes to a directory structure. Webmasters also use FTP to quickly edit a single configuration file when they prefer not to open a control panel.
On modern hosting, FTP credentials are created in a control panel such as DirectAdmin or cPanel, where you can also set up separate accounts restricted to a specific directory — handy when working with external contractors. For security reasons, however, it is best to choose SFTP over plain FTP wherever possible.
Powiązane pojęcia
Najczęstsze pytania
Is FTP secure?
Plain FTP sends data and passwords in clear text, so it is not secure over an open network. The recommended approach is to use an encrypted variant: SFTP (built on SSH) or FTPS (FTP with TLS), which protect the login, password and transferred files.
How does FTP differ from SFTP?
FTP is the original unencrypted protocol running on ports 20/21. SFTP is a completely different protocol tunnelled over SSH on port 22 that encrypts the whole session. Despite the similar name, they are not interchangeable.
