How to transfer files via SSH

SFTP GUI

If SSH is running on a server or just a remote computer, then you do not need to install FTP or any other additional software to download and upload files with this computer.

SSH out of the box supports SCP and SFTP. Moreover, the ssh package provides scp and sftp utilities of the same name for file transfer. But these are utilities with a command line interface, which may not be convenient for everyone.

SFTP is supported by several cross-platform programs with a graphical interface. That is, you can upload and manage files on the server through a program with a graphical interface. Moreover, on the server, in addition to running SSH, nothing more is required.

SFTP in FileZilla

FileZilla is not only an FTP client, this program also supports FTP over TLS (FTPS) and, most importantly for us now, this program supports the same SFTP protocol. The program is free, it has open source code, it runs on Linux and Windows.

Using the program is elementary – you need to specify the host (IP), username and port. Suppose I want to connect to host 192.168.1.68 as root. As the port, you need to specify the port on which SSH runs on this remote server, by default it is 22.

You can simply enter the data in the fields, but I like to compose URIs that start with sftp://. It is a good idea, because I will use the URI along the whole article!

So, I composed the address:

sftp://root@192.168.1.68:22

I paste it into the ‘Host’ field and click the ‘Quick Connect’ button:

If you have ever worked with SSH, then you know that before every first connection to a new host, you must agree to add it to the list of known hosts:

This is not a big deal – this is done for additional protection (if someone changes the host, we will know about it right away when we try to connect).

Click ‘OK’ and get a list of files in the directory to which we are connected:

Now we can browse directories, download files from a remote computer and upload files from a local machine to there.

SFTP in Double Commander

Double Commander, like its prototype Total Commander, can work with SFTP using a plugin. But in Double Commander, the plug-in must be installed before this program begins to understand SFTP protocol.

I'll show you the example of Double Commander on Linux. If you have Windows and the method shown does not work, then write in the comments and we will try to find a solution together (probable ways are to try Total Commander plugins for SFTP, because Double Commander is compatible with them).

So, we need the gvfs plugin, download it.

Unpack the downloaded archive.

Now open Double Commander, in the menu go to “Settings” → “Optons” → “Plugins” tab → WFX Plugins.

Click the ‘Add’ button and point to the downloaded file:

Save, close the settings menu, just in case, restart Double Commander.

Now click on this button and then select Network:

You can click <Quick connection> and enter a URI that is already familiar to us (to be honest, I'm just too lazy to fullfill the data in all fields):

You can specify the target path, that is, the folder that will be opened on the server after connecting. By the way, because it could be specified directly in the URI (more on that below):

We already specified the username in the URI, so you can skip:

I have configured authentication without password for SSH (authentication with public key), so I’m not entering anything:

I get to a remote host, here I can navigate through folders, do various operations with files on a remote computer in a two-file manager:

Directly in the URI, you can specify the folder that should be opened after connection. Suppose I am interested in /var/www/html folder, then the URI will look like this:

sftp://root@192.168.1.68:22/var/www/html

In Double Commander and FileZilla, you can configure and save permanent connections so that the connection to the server occurs immediately when you click a correspondence button.

SFTP in the file manager: managing files on a remote host through a standard file manager

The SFTP protocol is supported by many graphical file managers that can be found on Linux distributions. Using both Nemo (Cinnamon), Nautilus (GNOME), and Konqueror (KDE), we can enter URIs (links) beginning with sftp:// in the jump line and work with files located on the remote system with the SSH server running.

For example, the user on the remote system is root, the IP address of the remote host is 192.168.1.68 and the SSH server is running on port 22 on it and I want to open the /root/bin/ folder. Then I open the standard Linux file manager and enter the address bar:

sftp://root@192.168.1.68:22/root/bin/

Now I can work with files as if they were on the local system: drag and drop, view their properties, upload to the local computer and so on.

By the way, the desired connection to the remote system can be added to the bookmarks of the standard file manager and opened with one click. And for several years now, as a standard file manager, Linux has supported an additional tab – in the settings you can enable the second panel for the Linux file manager.

Recommended for you:

Leave a Reply

Your email address will not be published. Required fields are marked *