How to Securely Transfer Files Using SFTP

Secure file transfer protocol (SFTP) is a secure and encrypted method of transferring files over a network. It uses secure shell (SSH) connections to keep sensitive data safe during transfer, making it a top choice for businesses and IT professionals. With the average data breach now costing more than $4.45 million, a 15 percent rise over three years, SFTP’s role in protecting data is more important than ever.


SFTP Explained

Secure file transfer protocol (SFTP) is an encrypted method of transferring files over a network. It uses SSH connection to encrypt both the commands and the data being transferred, making it a safer option than traditional file transfer methods.


By understanding how to establish and maintain SFTP connections, you can ensure your data is transferred securely and efficiently, safeguarding against potential security threats.

What Is Secure File Transfer Protocol (SFTP)?

Unlike traditional file transfer methods, which can expose your data to potential risks, SFTP uses SSH connections to offer a higher level of security. This function encrypts both the commands and the data being transferred, ensuring that sensitive information remains protected from being intercepted during transit. 

In addition to security, SFTP offers reliability and performance efficiency, making it a preferred choice for organizations that require a secure and efficient way to transfer files across networks.

How to Establish an SFTP Session 

Establishing an SFTP session requires an SSH client, which is typically pre-installed on most operating systems, including Windows, macOS and Linux. This availability makes it convenient for users across different platforms to initiate secure file transfers without the need for additional software installations.

There are two primary methods of establishing an SFTP connection:

SFTP clients: Tools like Cyberduck, Filezilla and Transmit 5 provide user-friendly interfaces that simplify the process of secure file transfers. These clients require users to input authentication information and relevant file transfer data, streamlining the process for end-users.

Command line: For more advanced users, the command line interface offers a powerful and flexible way to establish SFTP connections. This method is favored by software engineers and system administrators who prefer not to rely on third-party clients. While it may seem more complex, it provides greater control and is considered safer by some users.

Here’s how you can initiate secure file transfers via a command line interface. If you choose to use a third-party SFTP client, you can view their instructions by going to the client’s website.

Steps to Initiate Secure File Transfer With SFTP 

To initiate a secure file transfer using SFTP through the command line, first set up your connection. 

1. Connecting to a Remote Server

Open your terminal or command prompt.

Connect to the remote server or device, which is similar to connecting a remote machine via SSH. Instead of entering SSH username@host_name, enter SFTP username@host_name.

2. Transferring Files

Upon establishing the connection, you can now start transferring files. The following commands will enable you to copy and transfer files to and from both machines.

To download a file from the remote server to your local machine, enter: ‘get remote_path local_path’

To upload a file from your local machine to the remote server, use: ‘put local_path remote_path’

3. Set Your Security Settings

Always ensure you connect to a remote server via a VPN connection and enable only the necessary network ports. Since SFTP uses port TCP 22, you must ensure this port is open on both machines. 

Port 22 should never be open to the public for security purposes. If you must open Port 22, you must do so within a virtual private network (VPN), ensuring that only your own device and the remote machine you’re connecting to have access to Port 22.

These steps provide a straightforward method for initiating secure file transfers using SFTP, ensuring your data remains protected during transit.

Basic File Maintenance Using SFTP 

Regular file maintenance is crucial for keeping your system organized, ensuring data integrity and optimizing performance. Proper file management helps prevent data loss, reduces clutter and makes locating and managing your files easier. Neglecting file maintenance can lead to inefficient storage use, increased security risks and potential data corruption. You can maintain a clean, efficient and secure file system by routinely performing basic file maintenance tasks.

Once you’re connected to an SFTP server, maintaining and managing files becomes straightforward with a set of basic commands:

put: Copy a file from the local machine to the remote machine.

get: Copy a file from the remote machine to the local machine.

ls: List the contents of a directory on the remote machine.

cd: Change the current working directory on the remote machine.

lls: List the contents of a directory on the local machine.

lcd: Change the current working directory on the local machine.

These commands facilitate efficient file management, making it simple to navigate and organize files on both local and remote systems.

Other Useful SFTP Commands to Know 

In addition to basic file transfer commands, SFTP provides several other commands that enhance file management capabilities. These commands are essential for performing more advanced tasks, granting users greater control over their file systems. However, improper use of the commands can lead to unintended changes or security vulnerabilities, so it’s crucial to understand their functions and use them cautiously.

Beyond the basic file transfer and maintenance commands, SFTP offers additional functionalities to enhance your file management capabilities:

chmod: Change file permissions on the remote host.

chown: Change file ownership on the remote host.

mkdir: Create a directory on the remote host.

rm: Delete a file on the remote host.

rmdir: Remove a directory on the remote host.

rename: Rename a file on the remote host.

lpwd: Show the present working directory on the local computer.

pwd: Show the present working directory on the remote host.

These commands offer comprehensive control over file operations, ensuring that you can manage your files securely and efficiently.

Frequently Asked Questions

What is the difference between FTP, FTPS and SFTP? 

Understanding the differences between various file transfer protocols is crucial for choosing the right tool for secure file transfers. Here’s a brief comparison:

FTP: Traditional file transfer protocol that transmits data without encryption, making it vulnerable to interception.

FTPS: An extension of FTP that adds SSL/TLS encryption for secure transmissions. While more secure than FTP, it doesn’t offer the comprehensive security of SFTP.

SFTP: Integrates SSH to encrypt both the commands and data, providing the highest level of security among these protocols.

Is SFTP still relevant today? 

SFTP remains highly relevant in today’s digital landscape. It is a reliable and cost-effective method for transferring files securely between servers. System administrators and software engineers commonly use SFTP due to its robust security features and ease of integration into existing systems.

Despite the emergence of newer file transfer technologies, SFTP’s encryption and secure transmission capabilities make it a preferred choice for maintaining server databases and internal file transfers. Its continued use in various organizations underscores its importance and reliability in ensuring data security.


You can read the original article posted in Built In by Rhymetec CISO, Metin Kortak.


About Rhymetec

Our mission is to make cutting-edge cybersecurity available to SaaS companies and startups. We’ve worked with hundreds of companies to provide practical security solutions tailored to their needs, enabling them to be secure and compliant while balancing security with budget. We enable our clients to outsource the complexity of security and focus on what really matters – their business. Contact us today to get started.


Interested in reading more? Check out more content on our blog: