Protocols

File transfer protocols

SFTP (SSH File Transfer Protocol) is a secure file transfer protocol that runs over the SSH (Secure Shell) protocol.

FTP (File Transfer Protocol) is an ancient yet ubiquitous network protocol used to transfer files between a client and a server over a network. FTP is not secure, as it transmits data, including login credentials, in plaintext. Also, it requires multiple ports to be operational, making it more complicated to set up on firewalls and proxy servers, as opposed to SFTP.

FTPS (FTP over TLS/SSL) is an extension of FTP that adds TLS (Transport Layer Security) or SSL (Secure Sockets Layer) encryption, ensuring secure authentication and data transfer, but still requires additional firewall configuration due to its multiple port usage.

SCP is a legacy file transfer protocol / program that relies on an SSH shell on the server with an existing SCP executable and a small set of bash/sh commands to function properly. The SCP protocol is superseded by more comprehensive and reliable SFTP protocol.

Other protocols

SSH shell is a secure remote command-line interface over the SSH protocol. It allows users to access and control a remote system securely, just as if they were working on a local terminal (e.g. PowerShell, cmd.exe or bash).

SSH is the secure communication channel used by SFTP, SSH Shell and SCP. SSH encrypts both the authentication and data transfer, ensuring confidentiality and integrity. It operates over a single connection (typically port 22) and does not require multiple ports or complex firewall configurations.