Categories
Planning

How to securely transfer files to someone else with sftp

How to securely transfer files to someone else with sftp

We’ve previously written about hosting your own FTP server, but data is transferred in cleartext, making it unsuitable for confidential file transfers. In this guide we’ll go over the secure version of FTP – SFTP, and why it makes for an excellent way of transferring files to other people across the internet.

Why SFTP?

Geeks run into this problem all the time: You have a file that’s just too big to transfer over email or instant messenger. Sure, you could upload it to Dropbox or some other cloud service, but what if you don’t have/want an account with them, have enough storage freed up, or what if you just want to bypass the middle man altogether? Not to mention the security concerns with cloud services.

Instead of going through that hassle, you can save time by transferring files (big and small) to your friend by using SFTP. There’s no need to encrypt your files before transfer, because they are being tunneled through the very secure SSH protocol. Not only that, but now you can upload directly to your friend instead of the cloud, saving lots of time.

But wait, there’s more! If you want to share out more files with people, you can just drop them in a specified folder and your buddies can browse that section of your PC as if it were a part of their own. Sharing files can be a whole lot easier with this method, because the uploading will be initiated by your friend instead of you. All you have to do is drag and drop, and let them know they can now download the file(s).

Setting up SFTP

Setting up an SFTP server in Windows is going to require some third party software. Most software that has this functionality is going to cost you, but we will be using a free one called freeFTPd. Click that link to download and install the program. Be forewarned, the developers clearly aren’t native English speakers, and it shows in a lot of the text. Don’t be alarmed though, it’s a legitimate program that we’ve tested and everything checks out – you’ll be hard-pressed to find a better free alternative.

Go through installation as normal, and at the end there will two prompts, one asking if private keys should be created, and the other asking if it should run as a service; click Yes on both.

How to securely transfer files to someone else with sftp

When installation finishes, open freeFTPd via the new shortcut icon on your desktop. We ran into problems writing configuration changes, so make sure you right click on the icon and run the program as Administrator.

How to securely transfer files to someone else with sftp

To get started with the configuration, click on Users to the left.

How to securely transfer files to someone else with sftp

In this menu, click on Add and fill out the information for a new user account to access your server.

How to securely transfer files to someone else with sftp

Under Authorization, you can choose to use “NT authentication” or “Password stored as SHA1 hash.” NT authentication means that it uses a Windows username and password, so you’d need to create a new user on your computer for anyone who accesses the SFTP directory. In most cases, it will probably be best to just store the password as a SHA1 hash and keep the SFTP user separate from the Windows users.

After you’ve typed in the desired username and password, uncheck the “FTP server” box towards the bottom and then click Apply. Now that the user is setup, click on the SFTP tab.

How to securely transfer files to someone else with sftp

The only thing really worth changing on this tab is the SFTP root directory. This specifies where the files you want to share out will reside. For simplicity, we’re just going to change the already populated directory to a folder on the desktop.

Once you’re ready to begin hosting files, click the Start button in this tab. Windows Firewall will probably pop up and ask you if this is OK – click Allow access.

How to securely transfer files to someone else with sftp

Now you should be able to return to the Status tab and see that your SFTP server is running.

How to securely transfer files to someone else with sftp

Click on Apply & Save to keep these changes and then close the window.

freeFTPd will continue to run in the background. To access it, just open it up from the notification area.

Accessing the SFTP Directory

Put a couple of files in your SFTP directory so we can do some testing. If you left the home directory for the user at its default ($SERVERROOT\geek in our example), then you’ll need to create another directory within the SFTP root directory.

How to securely transfer files to someone else with sftp

As you can see in this screenshot, we put two test files into the ‘geek’ directory which is inside of the ‘SFTP server files’ (SFTP root directory) folder. Make sure that port 22 is forwarded to your PC on your router, and then you’re ready for someone to connect to your PC. See this guide if you need help with port forwarding.

Have your buddy download an FTP client that is able to access SFTP servers – our recommendation is FileZilla. They will just need to type in your IP address, the username and password that you configured earlier, and specify the port your server is running on (if you left it at the default, it will be port 22).

The first time they connect to your server, they will be prompted to save the host keys. They just need to check the “Always trust” box and click OK to never be prompted about this again (unless you change your host keys for some reason).

How to securely transfer files to someone else with sftp

Your friend should now be able to access the files you placed within the SFTP directory, and add files to it that they would like to share with you.

How to securely transfer files to someone else with sftp

Мы уже писали о размещение собственного FTP-сервера , но данные передаются в виде открытого текста, что делает его непригодным для конфиденциальной передачи файлов. В этом руководстве мы рассмотрим безопасную версию FTP – SFTP и выясним, почему она является отличным способом передачи файлов другим людям через Интернет.

Почему именно SFTP?

Компьютерщики постоянно сталкиваются с этой проблемой: у вас есть файл, который слишком велик для передачи по электронной почте или в мессенджере. Конечно, вы можете загрузить его в Dropbox или другой облачный сервис, но что, если у вас нет / вы не хотите иметь учетную запись с ними, у вас достаточно свободного места или что, если вы просто хотите полностью обойтись без посредников? Не говоря уже о проблемах безопасности облачных сервисов.

Вместо того, чтобы испытывать эти хлопоты, вы можете сэкономить время, передавая файлы (большие и маленькие) своему другу с помощью SFTP. Перед передачей файлы не нужно шифровать, так как они туннелируются по очень безопасному протоколу SSH. Более того, теперь вы можете загружать файлы напрямую другу, а не в облако, что позволяет сэкономить много времени.

Но подождите, это еще не все! Если вы хотите поделиться с людьми большим количеством файлов, вы можете просто перетащить их в указанную папку, и ваши друзья смогут просматривать этот раздел вашего ПК, как если бы он был частью их собственного. С помощью этого метода обмен файлами может быть намного проще, потому что загрузка будет инициирована вашим другом, а не вами. Все, что вам нужно сделать, это перетащить и дать им знать, что теперь они могут загрузить файл (ы).

Настройка SFTP

Для настройки SFTP-сервера в Windows потребуется стороннее программное обеспечение. Большая часть программного обеспечения с этой функцией будет стоить вам, но мы будем использовать бесплатное программное обеспечение под названием freeFTPd . Щелкните эту ссылку, чтобы загрузить и установить программу. Предупреждаем: разработчики явно не носители английского языка, и это видно во многих текстах. Не пугайтесь, это законная программа, которую мы протестировали, и все прошло проверку – вам будет сложно найти лучшую бесплатную альтернативу.

Пройдите установку как обычно, и в конце появятся два запроса: один спрашивает, следует ли создавать закрытые ключи, а другой спрашивает, следует ли запускать как службу; нажмите Да на обоих.

How to securely transfer files to someone else with sftp

По окончании установки откройте freeFTPd с помощью нового ярлыка на рабочем столе. У нас возникли проблемы с записью изменений конфигурации, поэтому убедитесь, что вы щелкаете правой кнопкой мыши значок и запускаете программу от имени администратора.

How to securely transfer files to someone else with sftp

Чтобы начать настройку, нажмите «Пользователи» слева.

How to securely transfer files to someone else with sftp

В этом меню нажмите «Добавить» и введите информацию о новой учетной записи пользователя для доступа к вашему серверу.

How to securely transfer files to someone else with sftp

В разделе «Авторизация» вы можете выбрать использование «NT-аутентификации» или «Пароль, сохраненный как хэш SHA1». Аутентификация NT означает, что она использует имя пользователя и пароль Windows, поэтому вам нужно будет создать нового пользователя на своем компьютере для всех, кто обращается к каталогу SFTP. В большинстве случаев, вероятно, будет лучше просто сохранить пароль в виде хэша SHA1 и держать пользователя SFTP отдельно от пользователей Windows.

После того, как вы ввели желаемое имя пользователя и пароль, снимите флажок «FTP-сервер» внизу и нажмите «Применить». Теперь, когда пользователь настроен, щелкните вкладку SFTP.

How to securely transfer files to someone else with sftp

Единственное, что действительно стоит изменить на этой вкладке, – это корневой каталог SFTP. Это указывает, где будут находиться файлы, которыми вы хотите поделиться. Для простоты мы просто заменим уже заполненный каталог на папку на рабочем столе.

Когда вы будете готовы начать размещать файлы, нажмите кнопку «Пуск» на этой вкладке. Скорее всего, появится всплывающий брандмауэр Windows и спросит, в порядке ли это – нажмите Разрешить доступ.

How to securely transfer files to someone else with sftp

Теперь вы сможете вернуться на вкладку «Статус» и увидеть, что ваш SFTP-сервер запущен.

How to securely transfer files to someone else with sftp

Нажмите «Применить и сохранить», чтобы сохранить эти изменения, а затем закройте окно.

freeFTPd продолжит работать в фоновом режиме. Чтобы получить к нему доступ, просто откройте его из области уведомлений.

Доступ к каталогу SFTP

Поместите пару файлов в каталог SFTP, чтобы мы могли провести некоторое тестирование. Если вы оставили для пользователя домашний каталог по умолчанию ($ SERVERROOT \ geek в нашем примере), вам нужно будет создать другой каталог в корневом каталоге SFTP.

How to securely transfer files to someone else with sftp

Как вы можете видеть на этом снимке экрана, мы поместили два тестовых файла в каталог «geek», который находится внутри папки «Файлы сервера SFTP» (корневой каталог SFTP). Убедитесь, что порт 22 перенаправлен на ваш компьютер на маршрутизаторе, и тогда вы готовы к тому, что кто-то подключится к вашему компьютеру. Видеть это руководство если вам нужна помощь с переадресацией портов.

Попросите вашего приятеля загрузить FTP-клиент, который может получить доступ к SFTP-серверам – наша рекомендация FileZilla . Им просто нужно будет ввести ваш IP-адрес, имя пользователя и пароль, которые вы настроили ранее, и указать порт, на котором работает ваш сервер (если вы оставили его по умолчанию, это будет порт 22).

При первом подключении к вашему серверу им будет предложено сохранить ключи хоста. Им просто нужно поставить галочку в поле «Всегда доверять» и нажать «ОК», чтобы больше никогда об этом не спрашивали (если вы по какой-то причине не измените ключи хоста).

How to securely transfer files to someone else with sftp

Теперь ваш друг должен иметь доступ к файлам, которые вы разместили в каталоге SFTP, и добавлять в него файлы, которыми они хотели бы поделиться с вами.

How to securely transfer files to someone else with sftp

1.1. Abstract¶

Collaborating teams at two or more organizations often need to transfer and share data files. There are a number of ways to share files, all with various degrees of ease and usability. The particular information security risk management (ISRM) protocols at the sending and receiving institutions need to be considered when one chooses and optimizes file-transfer solutions. One common method for transferring files is SFTP or scp (secure copy). [final sentence missing]

1.2. Background info¶

SFTP: Secure or SSH File Transfer protocol is a standard way to transfer files securely using a remote server.

SFTP is not to be confused with FTP or FTPS. While FTP does not use encryption at all and therefore can be considered insecure, FTPS adds a layer of encryption on top of FTP but it still comes with a number of drawbacks from the FTP protocol, e.g. requiring a range of open ports. SFTP uses an entirely different protocol based on SSH (secure shell) and uses strong encryption for authentication information as well as the data transferred.

In order to upload and download files, the client needs to communicate with the server over port 22 (which is the default port for SFTP) and the network configurations on the sender as well as the recipient side need to allow this traffic. If network restrictions block this communication, one might try to run the SFTP server on a different port (e.g. 443).

In this scenario, a SFTP server is a pure file transfer server, i.e. it lives outside of any sensitive network area and both parties (the sender and recipient) need to use a SFTP client to upload from and download to their internal storage systems. After transfer and integrity check, files would be typically removed by the receiver.

1.3. Requirements¶

For client (receiver/sender):

Basic understanding of SFTP client configurations

(optional) Basic programming skills to automate upload or download process

For server (system administrator):

Compliance with company IT-security policies

Understanding firewall configurations

Ability to use terminal (bash)

1.4. Recipe instructions¶

(1) Setting up SFTP server

1.b. Security considerations

(2) Data upload/download

(3) Correctness and completeness of transfer

1.4.1. Setting up a SFTP server¶

You can run an SFTP server in a Windows environment, e.g. using the open source software FileZilla Server. A Linux server can be set-up after installing the required libraries (libssh2, OpenSSH). Following is a step-by-step summary for a CentOS server:

a. Create a dedicated group for all future SFTP users:

b. First create a folder on a volume with sufficient free space:

c. Set permissions:

d. Create one or more SFTP users, assigning them to the previously created group:

e. Set the password for the new user:

f. Edit the SSHD configuration at /etc/ssh/sshd_config (e.g. using vi or nano) by adding the following lines:

g. Restart the SSH services

h. Now you have to make sure you open port 22 in your network to the outside world under a specific domain name or static IP address.

1.4.2. Data upload and download¶

1.4.2.1. Manual, i.e. drag’n’drop¶

Data could be transferred to/from SFTP server using multiple clients. Here there are some examples:

OS: Windows, Mac OS, Linux

License: Free Software (GPL)

portable version available (no installation, i.e. administrator rights, required)

By default installs adware

License: Free Software (GPL)

portable version available (no installation, i.e. administrator rights, required)

No x64 version (as of 07.07.2020)

Other SFTP clients: Cyberduck, MonstaFTP (Free and paid) and many others

1.4.2.2. Automatic¶

Libraries implementing SFTP are available for different programming languages.

Bash – sftp (similar to scp)

1.4.3. Correctness and completeness of transfer¶

It is a good practice to ensure that file transfer is correct and complete.

Sender should calculate checksum (md5, sha512, etc) for every file:

Windows: CertUtil -hashfile FILENAME MD5 Recipient compares checksums:

The sender can use the sender organization’s HPC node to

(1) set up a shell which runs in the background,

(2) launch the FTP session in the same local network as the server and directory of files to be transferred.

(3) Transfer the files via the filesystem on both the local and remote system

For example, an IMI collaboration project requires transfer and sharing of a number of image data folders, each approximately

300-500 GB. The process involved copying the files over to a secure FTP server, the receiving institution copies to their server, then the sender deletes the files on the FTP server.

Double copy process with an intermediate space

Works for mid size data (Gigabyte range)

It works in most cases, especially if the file transfer is “one-time” batch of files.

It can be considered a good short term or “one-off” solution.

This common process is described in a number of publically available resources, examples in the Further Reading section below.

1.5. Possible improvements from the state of this recipe:¶

One could provide for increased automation by writing a small script to iterate through each directory when one is transferring a set of directories, each containing a number of data files.

1.6. Conclusion¶

This content is a simple guideline for using a well known secure file transfer protocol. More modern solutions and tools exist for fast transfer or mounting of remote drive. For example Rclone is one such tool, allowing interaction with cloud storage solutions from a wide array of providers.

Overview

The SSH File Transfer Protocol (SFTP), also known as the Secure File Transfer Protocol, enables secure file transfer capabilities between networked hosts. Unlike the Secure Copy Protocol (SCP), SFTP additionally provides remote file system management functionality, allowing applications to resume interrupted file transfers, list the contents of remote directories, and delete remote files.

The command-line secure file transfer program ( sftp ) and graphical SFTP clients, such as WinSCP and Fetch, use SSH2 encryption to authenticate and establish secure channels between networked hosts. Although SFTP clients are functionally similar to FTP clients, they employ different protocols; consequently, you cannot use a standard FTP client to connect to an SFTP server.

IU hostnames

At Indiana University, specify the following hostnames for SFTP file transfers involving these UITS resources (authenticate using your IU username and passphrase):

System Hostname
Big Red 3 bigred3.uits.iu.edu
Carbonate carbonate.uits.iu.edu
Research Database Complex rdc.uits.iu.edu
Scholarly Data Archive sftp.sdarchive.iu.edu
Sitehost ssh.sitehost.iu.edu
Pages ssh-pages.iu.edu

Graphical SFTP clients

Graphical SFTP clients simplify file transfers by allowing you to drag and drop icons from one window to another. Each icon represents a file or directory, and each window represents a computer’s file system. When you open the program, you specify the name of the remote host to which you want to connect, and then authenticate with your username and password for that host.

For IU, students, faculty, and staff, two graphical SFTP clients, CyberDuck (for macOS) and WinSCP (for Windows), are available for free download from IUware. Both applications also are available for use on the computers in the IU Bloomington and IUPUI Student Technology Centers (STCs). Additionally, WinSCP is available for use on personal Windows workstations via IUanyWare.

Command-line SFTP

You can use command-line SFTP on systems running Linux, or from the macOS Terminal. To start an SFTP session, at the shell prompt, enter:

For example, if your username is darvader , to connect to your account on the host deathstar.empire.gov , enter:

Enter your password when prompted.

Some standard command-line SFTP commands include:

SFTP (SSH File Transfer Protocol) is a secure file transfer protocol. It runs over the SSH protocol . It supports the full security and authentication functionality of SSH.

SFTP has pretty much replaced legacy FTP as a file transfer protocol, and is quickly replacing FTP/S . It provides all the functionality offered by these protocols, but more securely and more reliably, with easier configuration. There is basically no reason to use the legacy protocols any more.

SFTP also protects against password sniffing and man-in-the-middle attacks . It protects the integrity of the data using encryption and cryptographic hash functions, and autenticates both the server and the user.

Contents

SFTP Port Number

SFTP port number is the SSH port 22 (follow the link to see how it got that number). It is basically just an SSH server. Only once the user has logged in to the server using SSH can the SFTP protocol be initiated. There is no separate SFTP port exposed on servers. No need to configure another hole into firewalls.

SFTP Client for Windows and Mac

Many SFTP client implementations are available. Many SSH clients support SFTP.

SFTP Server for Linux, Windows, and Mac

SFTP server usually comes as part of an SSH implementation. Most organizations use either Tectia SSH or OpenSSH as the server; both come with SFTP server implementations out-of-the-box.

OpenSSH – open source server for Linux & Unix

FileZilla – a free sftp server for Windows

SCP Command on Linux

The scp command is a file transfer program for SFTP in Linux. The scp command line interface was designed after the old rcp command in BSD Unix. The scp also usually comes with the OpenSSH package.

Its typical use is:

Basically, this copies one or more files to the given host. If user is given, then they are copied to that account on the host. If no user is supplied, then the same user name as on the client side is assumed. If path is given, then the files are copied to that directory (relative to the given user’s home directory). If no path is given, the files are copied to the user’s home directory. If the -r option is supplied, then files may be directories, and the given directory and all its subdirectories and files in them (recursively) are copied.

One can also copy in the reverse direction:

Commonly, the path would be . , i.e., the current directory.

SFTP Command on Linux

The sftp command in Linux is a client program for SFTP. The sftp command line interface was designed to be similar to the ftp command. The sftp command is typically part of the OpenSSH package.

SSHFS & Using SFTP for File Sharing

SFTP can furthermore be used for file sharing, similar to Windows file sharing and Linux NFS . The main difference is that SFTP is secure, and can be used reliably over Network Address Translation (NAT) and the public Internet.

Sshfs is a network file system for Linux that runs over the SFTP protocol. It can use any SSH server as a server, and use remote files over the network as if they were local files. The remote file system can be mounted and unmounted as desired. It is the most convenient way to mount remote files ad hoc, without the need for any configuration by the server administrator. SSH keys can even fully automate establishing the connection to the server. Basically, anyone who is able to log into the server can mount its file system, with access to those files the user has access to.

Other file sharing implementations using SFTP include:

Interactive and Automated Secure File Transfers

Like SSH itself, SFTP is a client-server protocol. SFTP clients are included in quality SSH clients and complete enterprise grade SSH implementations provide both SFTP client and server functionality. Some SSH clients, such as Tectia SSH , also provide graphical file manager views into remote filesystems.

On Linux, SFTP is often used as a command-line utility that supports both interactive and automated file transfers. Public key authentication can be used to fully automate logins for automated file transfers. However, proper lifecycle management of SSH keys is important to keep access under control.

Common use cases for automated file transfers include nightly system backups, copying data to disaster recovery systems, distributing configuration data, and moving transaction logs to archival systems. Many organizations have thousands of daily SSH transfers. In come cases, we have seen over 5 million daily automated SSH logins.

Commercial File Transfer Solutions using SFTP

Some commercial file transfer products supporting SFTP include the following. Nothing on this page should be taken as an endorsement of any product or solution.

Someone else is giving me a dataset that is too large to send via email, Dropbox, etc., so I’m thinking we can use sftp or scp. But how will she be able to do this without my giving her the password to my machine? This is a one-time transfer of data, so I’d rather not go through a lot of trouble — if it’s too much work I’ll just give her my password and then change it when she’s done transferring the files.

4 Answers 4

Is your machine accessible over the Internet?

The first hurdle is that your machine may not be accessible over the Internet at all!

Most client machines cannot be accessed directly over the Internet because they don’t have a public IP address. It’s like having a phone that can call out, but can’t be called. This came about mainly because there’s a limited supply of IP addresses; unless your ISP supports IPv6 or you have a very atypical configuration, you have a single IP address at home, and that’s the address of your home router. Your computers can make outgoing connections because the home router provides NAT functionality.

Most home routers can be configured to allow incoming connections to be routed to a particular machine on the local network. To allow incoming SSH connections, route port 22 to your computer. See your router’s documentation for how to do this.

If you’re unlucky and your ISP doesn’t give a public IP address, you won’t be able to make incoming connections. To check whether you have a public IP address, connect to your router’s administrative interface and check whether its external address is in the private range (internal addresses are in the private range except in atypical configurations).

Giving shell or file access to your machine

The (relatively) easy way to give someone access to your machine is to create a user account for them. With an ordinary user account, they’ll be able to see a lot of things, but they won’t be able to modify your files (unless you went out of your way to make them world-writable), and they won’t be able to see the files that are in a private directory ( drwx—— permissions).

For better security, configure the account to be usable only to manipulate files in a particular directory over SFTP. This is a bit more difficult (I kind of expected OSX to provide an easy-to-use GUI for that, but apparently not); see Create a remote only user in OS X? or How to set up an SFTP server on a Mac & then enable a friend to upload files to it from their iPhone, iPad, or other iDevice for instructions.

You’ll need to enable remote access. There is an OSX knowledge base entry for that. Enable only the one user who is supposed to have remote access. Do not enable remote access for an account that may have a weak password!

Set a random password on the account and tell them to copy-paste it and save it in a file. Don’t expose a machine with weak, human-chosen passwords to the Internet. You can use the following command to generate the password:

Transfering files piece by piece

So yeah, sending files over the Internet is still difficult.

How to securely transfer files to someone else with sftp

The low-tech solution is to use one of the many file sharing websites. They make their money through ads, so don’t even think of visiting one without an ad blocker, and be very careful where you click because they’re likely to try to serve you malware. After downloading a file, check that it’s the right file: calculate its SHA-2 checksum with

Resources

Secure file transfer poses a constant challenge to individuals in many industries. The delivery of good service—be it care or counsel—requires coordination among a number of different entities, but the sensitive nature of much business and customer information means that any method has to be secure, and in some cases, compliant. More often than not, security comes at the expense of convenience—even when SFTP is concerned.

SFTP stands for SSH File Transfer Protocol, and SFTP refers to the popular—and more secure—method of transferring files between two systems. SFTP is vastly preferable to the run-of-the-mill FTP, because it encrypts both commands and data to protect passwords and sensitive information. You might already know that FTP is insecure and should only be used in limited cases or on networks you trust. With FTP, all data—including your username, password, and file data—shared between the computer and server is unencrypted. But SFTP is quickly catching up to its older cousin in terms of lack of reliability.

Once upon a time, SFTP was the preferred method for sending and receiving large files. That time predated the dawn of the cloud, but followed the similarly low-tech but HIPAA compliant fax, which has continued to show remarkable staying power. But SFTP has fallen out of favor among many because it can’t compete with the convenience of the cloud. What’s more, while it might be technically HIPAA-compliant, it’s not terribly secure. Additionally, SFTP doesn’t integrate into other elements of the workflow, like document storage or collaboration. Yet you’ll continue to see it in healthcare organizations sharing information among providers and patients, practices and labs, offices and billing and insurance companies, and in financial institutions working with sensitive customer information.

With SFTP, data is transferred through SSH, a network protocol that allows data to be exchanged using a secure channel. SFTP therefore requires authentication of the client by the server. But this security, too, is only minimal, because it can compromise both your data’s confidentiality and integrity. (A quick note: SFTP isn’t the same as FTPS, another FTP extension that supports TLS and SSL protocols.)

The solution to protecting and transferring sensitive data securely is Sookasa. Let’s unpack how and why the combination of Sookasa plus Dropbox is a substitute for SFTP—and a superior one at that.

What are the issues with SFTP?

  • SFTP Security.
    • Files are protected in transit, and mostly protected from unauthorized access by the recipient, but the files aren’t encrypted at rest.
    • It’s not great for accessing files from personal devices. It’s also incompatible with certain operating systems.
    • The SSH keys used by SFTP are harder to manage and validate, and SFTP doesn’t take advantage of modern security standards and methodology like SSL encryption
    • Especially important for those with compliance needs, there is no easy audit process built in to the SFTP options.
  • SFTP Data Integrity.
    • SFTP can have some issues with file corruption. For example, users might open a file to discover certain characters have been replaced, which looks like gibberish. It usually occurs with text files, which SFTP can have a hard time handling. If you need to work with files other than PDFs, as most organizations do, then SFTP might not be for you.
  • SFTP Convenience.
    • People have to be invited to use the system
    • SFTP is often slow, or doesn’t successfully go through. Even in such cases, though, there isn’t an adequate feedback system to alert you of message failures, requiring communication between senders and recipients to piece together what went wrong.

If SFTP is so bad, why is it so common?

SFTP has benefited from a general inertia among many entities, especially in healthcare, to embrace new technologies. It’s also long been a challenge to send large files, and many are slowly awakening to the use of the cloud for this type of workflow.

So what’s different about Sookasa?

Sookasa provides a transparent layer of encryption to Dropbox, making the cloud safer than ever. Sookasa even brings HIPAA compliance to Dropbox. The advantages to the cloud are manifold: First, it integrates your data storage and collaboration solutions, making work as convenient as it should be. Second, Sookasa provides three key ways to exchange and collaborate on information. Sookasa preserves Dropbox’s shared folders feature, whereby users can collaborate on and share information saved in a Dropbox folder. With our proprietary File Delivery platform, Sookasa also enables users to send and receive information securely from people who don’t have either service, without requiring non-users to download or register for a thing. With Sookasa, sharing is simple—just as it should be.

  • FERPA Compliance
  • Debunking myths about HIPAA compliant cloud storage
  • Truecrypt Dropbox alternatives
  • All about SFTP
  • Encrypt Dropbox folder
  • HIPAA encryption best practices
  • How to: Android file encryption
  • How to: Password protect a Dropbox folder
  • EMR Software Replacement
  • PCI DSS Compliance basics
  • PCI DSS Compliance Checklist
  • Encrypted cloud storage
  • A secure SFTP server alternative
  • File encryption software
  • Boxcryptor alternative
  • Secure file exchange made simple
  • Google Drive security basics
  • All about Google Drive encryption
  • Google Drive HIPAA compliance 101
  • Why do I need a CASB?
  • HIPAA Compliance Checklist
  • All you need to know about HIPAA compliance
  • HIPAA fax alternatives
Sookasa’s Seamless Security Solution Protects Your Files

How to securely transfer files to someone else with sftp

Whether they’re stored on the cloud or synced to your devices, you can use Dropbox and Google Drive in a compliant way.

The SSH File Transfer Protocol allows you to transfer files from the command line via SSH between a local computer and a specified remote computer. Like SSH, SFTP can be run natively from the shell. This is true of macOS and Linux machines, and is also true of any up-to-date Windows 10 PC (SSH support was added in the Win10 April 2018 update) via PowerShell.

Instantiating an SFTP Connection with a Remote Host

When you are at the command line, the command used to start an SFTP connection with a remote host is:

sftp username @ hostname

For example, a user with the username user connecting to the remote host ada would use the following command:

SFTP will then ask for the password to the account you’re trying to log into. After inputting it, the SFTP connection will be instantiated. An SFTP prompt will appear, looking like the following:

From here, you can use a few basic linux-like commands to navigate both your directory of your local computer and the remote directory you’re connected to. To end your SFTP session, use the exit command. For a full list of SFTP commands, including those outside the scope of this guide, use the help command.

Remote Directory Navigation

The pwd command will print your current remote directory path.

The ls command will print the contents of current directory. It can be used with the -l flag to display directory content as a list, or with the -a flag to display hidden files and directories. These flags may be used in conjunction to display all files in a list.

The cd command can be used to change to a different directory. For example, cd Documents would move your working directory to Documents, assuming it existed as a sub-directory within the directory from which you ran the command.

Use cd .. in order to move to the parent directory, e.g. from /home/Documents/ to /home/.

Local Directory Navigation

The aforementioned commands are within the context of the remote directory . In order to navigate your local directory , preface any of the above commands ( ls , cd , pwd ) with the letter l , like so:

This indicates the command is to take place in the local directory.

Transferring Files

In order to copy a file from the remote directory to the local directory, use the command get . Get expects at least one argument, which specifies the name of the file. This can either be just the filename if it’s in your current working directory, or an absolute file path. If a destination path isn’t specified as a second argument, the get command will default to your local working directory.

To send files to the remote directory, use the put command. This works basically the same as the get command. You must specify the file to be sent to the remote directory, either by name (only if within the current working directory) or absolute file path. If a destination path isn’t specified as a second argument, the put command will default to the remote working directory.

Copying a directory via SFTP is slightly more complicated. This is because most command line implementations of SFTP cannot directly copy a directory, instead you can only copy the contents of a directory. In practice, this means the outermost layer (i.e., the directory itself) will not be copied. You will usually have to make it yourself.

To copy a directory, follow these steps:

  1. Create a local directory of your choice using the command lmkdir directoryname.
  2. Use lcd directoryname to navigate your working directory into the empty directory you’ve just created.
  3. Move inside the remote directory you want to copy.
  4. From within the remote directory, copy all the files using the command get -r *.

This will copy all files and sub-directories contained within the directory. This process works same way for transferring a directory to the remote host, but uses the put command.

Another option is to simply compress the directory you’re trying to move, at which point the compressed folder can be transferred like any other file.

Using SFTP to Transfer Files to/from Stashes

From within your SFTP session, type cd /stash/yourstashname. Please be aware that your stash will not show up in the stash directory if you look for it using ls – it can only be accessed directly.

Connecting to your Windows N: drive

To access your N: drive via SFTP, connect to

Note: SFTP uses the SSH protocol, which means that it works natively with any SSH keys you may have configured.

  • Linux
    • Administrivia >
    • Linux User Environment >
    • Remote Access
      • Connecting to PSU SECURE (Wi-FI)
      • Using OpenVPN on Linux
      • Using SSH for Remote Connections in MCECS
      • Using SSH from Linux
      • SSH Port Forwarding
      • Dealing with SSH Host Key Changes
      • Using SFTP for Remote File Transfer from the Command Line
      • Keeping your shell sessions persistent with Screen
      • Mosh (Mobile Shell) for Intermittent Connectivity
      • Connecting to your Stash from Linux
      • VNC in MCECS
      • VNC from Linux to Linux
      • Running X11 Applications Remotely
      • Using RDP to Connect to a Windows Computer from Linux
      • File Sharing through RDP from Linux
      • Printing Over SSH Using LPR
    • Linux Reference >
    • Linux How To’s and FAQs >

CONTACT THE CAT

Front Desk: Closed during COVID-19
Use online methods to communicate

Categories

Businesses who send data in payment files must do so securely in order to ensure that all important cash flow is in optimum health. SFTP helps to do just this and is becoming an increasingly popular tool, favoured by organisations big and small. Today, we tackle the big questions surrounding SFTP, answering the what, how and why behind Secure File Transfer Protocol.

What is SFTP (Secure File Transfer Protocol)?

SFTP, otherwise known as Secure File Transfer Protocol or SSH (Secure Shell) File Transfer Protocol is an IT network term that is used to describe the secure version of the File Transfer Protocol, or FTP.

FTP is used to transfer sensitive and private data through a network, and SFTP does the same thing but in a secure manner, using security features like encryption to make sure that your financial data can not be seen by potentially prying eyes (hackers and the like).

How does SFTP work?

SFTP uses what, in the IT and Telecommunications world, is called a Secure Shell. Picture it like a tunnel, with traffic (cars) going in at one point and coming out at another – the destination. The thing is, anyone in the tunnel can see the cars and the passengers inside them. SFTP negates this by obfuscating the cars and their passengers (the data) by, for our example, tinting the windows so that passers by can not see who is inside the car.

This kind of obfuscation is achieved by using methods like encrypting the data that is sent so that nobody can see it without the relevant access. Encryption uses complex algorithms to jumble up the information, and the recipient gets what is called a “key”, a solution to the algorithm that allows them to unjumble the data and read it.

Benefits of using SFTP when transferring financial data

1. Security

As its name states, the biggest benefit to using SFTP when transferring financial data is security. You can be sure that the sensitive financial information that you are sending is safe and secure and that nobody can view it besides the intended recipient.

2. Flexibility

Another great benefit is that SFTP allows for flexibility and adaptability. For example, it enables people who are working from home to privately share the sensitive data that they need to do their jobs, an especially useful aspect in today’s current climate.

3. Simplicity

Because SFTP is already such a widely used technology, it is very easy and simple to use. The likelihood is that you already use it without even knowing. Most financial software has SFTP functionality built-in, but it’s worth checking with your IT department if you have any doubts or concerns.

4. Convenience

SFTP allows for great convenience, as an SFTP server allows you to securely store all of your sensitive data such as financials, customer details and others in one central location. This is especially useful for things like finance departments when they need to collaborate with colleagues both in and outside of finance.

Why using SFTP is crucial in finance

Using SFTP is important for the secure transmission of all sensitive information, but it’s especially critical when dealing with financial data. Hackers tend to target financial departments specifically because they know that, if they’re successful, there is going to be a huge payoff for them as they will have access to the bank details of potentially thousands of people.

Not only would such a breach cause a significant loss in revenue, face and credibility, it will also net you huge fines of up to £17.5 million for breaching GDPR regulations (or 4% of annual global turnover). So, be smart and don’t skimp on investing in the right security for your business.

Consult FastPay today

Want to learn more about how to securely manage your finances via Direct Debit?

Productivity. Security. Confidence.
VanDyke Software helps you achieve the right balance between strong security and easy access to the network from anywhere… at any time.

  • Secure remote access for IT and end users
  • Maintain and configure your servers, routers, and network services
  • Secure file transfer with fine-tuned control
  • Route critical data through a secure tunnel

How to securely transfer files to someone else with sftp

VShell ® Server

  • Transfer files securely
  • Automate file processing
  • Set up and configure easily
  • Learn More
  • Try It
  • Buy It

How to securely transfer files to someone else with sftp

SecureCRT ®

  • Rock-solid terminal emulation
  • Advanced session management
  • Multi-protocol support
  • Learn More
  • Try It
  • Buy It

How to securely transfer files to someone else with sftp

SecureFX ®

  • Secure file transfer client
  • Site synchronization
  • FTP, SFTP, SCP, and FTPS (FTP/TLS)
  • Learn More
  • Try It
  • Buy It

Try Before You Buy

Every release can be evaluated free of charge.

I need to…

Not finding what you need?

Visit the VanDyke Software YouTube Channel

How-to videos highlight time-saving features of VanDyke Software products.

Customer Testimonials

“Thanks for the new feature and for the notification that it had been added — I don’t really know of any other developer that notifies people who have given feedback like you guys do. That makes for very happy customers.”

—Burt Heymanson, SecureCRT Customer

“I would like to thank you for the amazing quality of service and SecureCRT support you give to us.”

—Anton Starovoytov, Solarix Networks, SecureCRT Customer

“Thank you for a great release! I’ve been actively using SecureCRT for many, many years and it’s simply the best SSH client in existence!”

—Rich Tricoche, SecureCRT Customer

VanDyke Software uses cookies to give you the best online experience. Before continuing to use this site, please confirm that you agree to our use of cookies. Please see our Cookie Usage for details.

Manage our use of cookies

Here you can control cookies using the checkboxes below. Some cookies are essential for the use of our website and cannot be disabled. Others provide a convenience to the user and, if disabled, may reduce the ease of use of our site. Finally, some cookies provide anonymous analytic tracking data that help us provide the user with a richer browsing experience. You can elect to disable these cookies as well.

File transfers shouldn’t be so hard

FTP servers are perfectly easy to use… if you’re an IT manager. But for the rest of us, figuring out FTP client software and servers can be frustrating, time-consuming and ultimately fruitless. And, even if you can figure it out, there are plenty of issues that make an FTP program for hosting a less-than-optimal solution. Slow transfers and complicated access controls, along with the need for FTP clients or other special software is just a headache waiting to happen.

With Dropbox, it’s easier

Dropbox lets anyone back up, access and transfer files easily. No need to manually log in to a server and wait for files to upload one by one, like with FTP connections. Dropbox makes transferring files from anywhere simple:

Windows and Mac operating systems: Just copy or save files to the Dropbox folder, and they’ll be uploaded automatically.

Web: Drag and drop files from your desktop right into your web browser with an uncomplicated user interface.

iOS and Android: Upload files with just a few taps in the Dropbox mobile app. Or set up automatic camera uploads to copy photos and videos to Dropbox in the background.

(Not all features are available on all Dropbox plans; compare our plans to find the version right for you.)

With Dropbox, it’s faster

FTP servers require live, uninterrupted connections to upload and download files. But Dropbox picks up even when your internet goes out. We’ll automatically resume interrupted transfers when your connection’s back up – no more wasting an entire afternoon the next time you need to upload a large file.

Also, a trio of advanced technologies ensures that you and your recipients go from “syncing” to “synced” as fast as possible:

Delta sync: We only transfer the portion of the file that’s changed since you last synced – not the whole thing.

LAN sync: If someone else who’s running Dropbox on your local network has a file you need, we’ll transfer it from them instead of hogging your internet bandwidth.

Streaming sync: Even if a large file hasn’t finished uploading to Dropbox, we’ll start downloading it to other linked devices instead of waiting for the file transfer to complete.

With Dropbox, sharing is simple

Sharing a sensitive document through an FTP or SFTP server? Get ready to set up a new login – for each person you’re sending it to. Dropbox, though, lets anyone send files or folders simply and securely:

Shared links: Create a link to any file or folder in your Dropbox to paste into emails or chats to send to anyone. On the other end, recipients won’t even need special software to preview and add comments to your files. You can even password-protect your link and add an expiry date to help make sure only the right people can see what you’re sending.

Shared folders: Working on a whole set of files with other people? Shared folders give editing access to the people you choose – and get files to recipients faster by automatically syncing to their devices.

Access control: Don’t waste time creating separate logins for each recipient. With Dropbox, all you need to do is enter email addresses, and you’ll have full control over who sees what. Control whether shared link recipients can download or preview only, and whether shared folder collaborators can view or edit, with user-friendly settings. It’s a world away from FTP’s complicated, UNIX-based read-write-execute permissions.

With Dropbox, it’s secure

It shouldn’t come as a surprise, but securing an FTP server is every bit as complicated as transferring files. The FTP hosting standard was developed long before anyone could have imagined the brute force attacks, packet captures and spoofing attacks it’s now vulnerable to. But right out of the box, Dropbox gives you the security you need to keep data safe:

Encrypted transfers: No need to purchase and configure SSL certificates, or set SSH and VPN tunnels. Dropbox encrypts network traffic with SSL/TLS and uses 256-bit AES encryption at rest to make sure prying eyes stay blind.

Account protection: Dropbox offers advanced security tools to protect user accounts. Two-step verification, SSO provider integration and remote data wipe ensure you – and only you – can get into your Dropbox.

Detailed auditing: Dropbox Business admins can access extensive sharing activity for their teams, to track how data is shared inside and outside your company.

FTP with Dropbox

We get it – when you’ve been using a tool for so long, it can be hard to let go. Especially if you’ve built business processes around FTP. So, if you’re looking to use Dropbox and FTP together, our partner integrations can make it happen:

FTP syncing: Connect your FTP server and your Dropbox account to copy files back and forth automatically. Enterprise content migration platforms let you easily streamline this process.

Automation: A number of best-in-class workflow tools let you automatically take actions on files to integrate Dropbox with existing, FTP-dependent processes.

Custom-built workflows: If you’re looking for deeper integration, the DBX Platform gives you the development tools you need to bridge Dropbox and your FTP deployment.

What is FTP or File Transfer Protocol?

FTP – which stands File Transfer Protocol – is a set of rules that networked computers follow to transfer files between the requester (also called a “client”) and a server. In a standard transfer, the client requests the files and the server transfers them to a designated folder or directory.

What’s the difference between FTP and Dropbox?

File transfers with Dropbox are faster and more secure than FTP servers. Dropbox simplifies transfers by allowing anyone with the web or desktop app to access the files you share with them – and they don’t even need a Dropbox account.

How do I control access to files and folders I’ve shared with Dropbox?

There are several ways to control access to files and folders shared with Dropbox, depending on how the files or folders were originally shared. If you created a shared link, you can disable the link to prevent access to the files or folders. If you’re on Dropbox Professional or Business plans, you can disable downloads so files will only be viewable on dropbox.com. Or, you can remove collaborators from a shared folder, with the option to delete the file or folder from their devices the next time they connect to the internet.

How long does it take for Dropbox to sync?

Sync with Dropbox depends on bandwidth available, file sizes and internet speed. You can check the progress of syncing files by monitoring the transfer speed, number of files remaining and the estimated time of completion.

Dropbox optimises bandwidth usage so file sync won’t interfere with your normal internet usage. It‘s possible to customise your bandwidth-usage settings to adjust the upload rate, or even remove automatic throttling.

Can interrupted transfers to Dropbox be resumed?

Upload and download large files easily, even if your internet connection is interrupted. Dropbox automatically resumes interrupted transfers when your connection is available again, unlike FTP servers that need an uninterrupted connection to complete file transfers.

Below we describe a variety of ways of securely transferring files to and from the SCF using variations on SFTP/SCP.

Other options include:

  • You can also have your SCF home directory represented on your personal computer as a local drive.
  • You can use the Globus data transfer service.
  • You can use rclone to transfer files to and from bDrive (Google Drive), Box, and Dropbox, among other resources.
  • And you can of course use Git, with local copies of your repository on your personal computer and in your SCF home directory.

SFTP has replaced FTP as the standard way of copying user files. Since FTP transmits passwords without encryption, it can only be used for anonymous uploads and downloads.

Mac or Windows: Cyberduck

Cyberduck is a cross-platform application with SFTP support. When configuring a new connection (on a Mac: File > Open Connection):

  1. Specify “SFTP (SSH File Transfer Protocol)” as the protocol.
  2. Enter your favorite SCF machine in “Server”.
  3. Enter your SCF credentials under Username/Password.
  4. “Path” is the location on the SCF you want to transfer files to/from. This may be your home directory (/accounts/something/you), your web area (/accounts/web/public/you), or another location. If you leave this blank it will automatically use your home directory.

Mac or Linux: SFTP

You can start sftp from a UNIX terminal (on either a Mac or Linux machine) in much the same way you start ssh, e.g. ‘ sftp [email protected] ‘. Once you are connected, the environment functions like traditional ftp:

Mac or Linux: SCP

SCP is useful for non-interactive file copying, once again from a UNIX terminal on either a Mac or Linux machine. The following will copy file into the user’s home direcory on the remote side:

The following will copy the remote directory dir/ to the local directory dir2/ via the ‘-r’ (recursive) command-line switch:

Firefox/Seamonkey

A Firefox and Seamonkey add-on called FireFTP supports SFTP. Follow the directions to install it and then choose Tools > Web Developer > FireFTP. When creating a new connection, go to Connection > Security and select SFTP as the protocol. This should work on Mac OS X, Linux, and Windows.

Windows: WinSCP

Windows users can use WinSCP to transfer files securely.

You will be able to directly work with your site files by using SFTP. This guide covers some basic information about SFTP if you are unfamiliar with it and helps you to navigate how to use it for your CodeRed Cloud website.

Let’s start with some of the basics.

What is SFTP? SFTP refers to Secure File Transfer Protocol. You use SFTP to download and upload files to your site via a secure method called Secure Shell (SSH). The protocol encrypts the transfer of files between your computer and the server that hosts your website.

How can you connect via SFTP? To use SFTP, you need an SFTP client, and the hostname, username, and password to your website’s SFTP server.

Download an SFTP Client¶

First you need an FTP client application. There are three that we recommend:

SFTP command line

This tutorial will cover FileZilla and command line clients; however, the general process is the same for any other application that you might use.

Obtain Your SFTP Server Info¶

On CodeRed Cloud, your SFTP server info can be obtained by clicking the Deployment tab of a website in the CodeRed Cloud dashboard, as in the image below.

If you do not know your SFTP password, click Reset Password to get a new one.

How to securely transfer files to someone else with sftp

Connect Using FileZilla¶

At the top of the application you should see a bar that is labeled Quickconnect. This is where you will put your hostname, username, and password. In FileZilla, prefix your hostname with sftp:// (e.g. sftp://mysite.codered.cloud ).

Next, enter the port. The default port for SFTP is 22.

Click Quickconnect in FileZilla. A warning will pop up. The first time you connect, it won’t recognize the host key. Select that you trust it (OK), and add it to your cache if you want.

If you were successful, you will see something like this:

How to securely transfer files to someone else with sftp

The right-hand side will show the files for your website, while the left-hand side still shows your local files.

To copy files from your computer to the server, drag them from the left side to the right side. Likewise, to copy files from the server to your computer, drag them from the right side to the left side.

Connect Using the Command Line¶

The sftp command line tool is included in most Linux distributions, macOS, and even Windows 10. Read here to enable SSH client in Windows 10.

Open a command line and connect with the sftp using your server info. You will be prompted for your password

After entering the password, you will be dropped into the interactive SFTP shell. Here you can type help to get a list of commands.

To recursively copy a local directory (named local ) to the /www directory on the server:

To recursively copy a server directory ( /www ) to a local directory ( local )

When finished, type exit to exit the SFTP client.

  • Bell User Guide
  • Weber User Guide
  • Gilbreth User Guide
  • Scholar User Guide
  • Data Workbench User Guide
  • Brown User Guide
  • Halstead User Guide
  • Hammer User Guide
  • Anvil User Guide
  • Data Depot User Guide
    • Data Depot Overview
    • File Storage and Transfer
      • Archive and Compression
      • Sharing
      • File Transfer
        • SCP
        • Globus
        • Windows Network Drive / SMB
        • FTP / SFTP
    • Lost File Recovery
    • Access Permissions & Directories
    • Frequently Asked Questions
  • Fortress User Guide
  • REED Folder User Guide
  • Box Research Lab Folder User Guide
  • Scratch User Guide
  • Home Directory User Guide
  • Services Guides
  • High-Performance Computing
  • Geddes User Guide
  • Environment Management with the Module Command

FTP / SFTP

ITaP does not support FTP on any ITaP research systems because it does not allow for secure transmission of data. Use SFTP instead, as described below.

SFTP (Secure File Transfer Protocol) is a reliable way of transferring files between two machines. SFTP is available as a protocol choice in some graphical file transfer programs and also as a command-line program on most Linux, Unix, and Mac OS X systems. SFTP has more features than SCP and allows for other operations on remote files, remote directory listing, and resuming interrupted transfers. Command-line SFTP cannot recursively copy directory contents; to do so, try using SCP or graphical SFTP client.

  • -B: optional, specify buffer size for transfer; larger may increase speed, but costs memory
  • -P: optional, preserve file attributes and permissions

Linux / Solaris / AIX / HP-UX / Unix:

  • The “sftp” command-line program should already be installed.
  • MobaXterm
    Free, full-featured, graphical Windows SSH, SCP, and SFTP client.
  • The “sftp” command-line program should already be installed. You may start a local terminal window from “Applications->Utilities”.
  • Cyberduck is a full-featured and free graphical SFTP and SCP client.

The free FTP solution.

FileZilla

FileZilla Server

Community

General

Development

Other projects

Welcome to the homepage of FileZilla®, the free FTP solution. The FileZilla Client not only supports FTP, but also FTP over TLS (FTPS) and SFTP. It is open source software distributed free of charge under the terms of the GNU General Public License.

We are also offering FileZilla Pro, with additional protocol support for WebDAV, Amazon S3, Backblaze B2, Dropbox, Microsoft OneDrive, Google Drive, Microsoft Azure Blob and File Storage, and Google Cloud Storage.

Last but not least, FileZilla Server is a free open source FTP and FTPS Server.

Support is available through our forums, the wiki and the bug and feature request trackers.

In addition, you will find documentation on how to compile FileZilla and nightly builds for multiple platforms in the development section.

Quick download links

Pick the client if you want to transfer files. Get the server if you want to make files available for others.

News

2021-12-25 – FileZilla Server 1.2.0 released

Bugfixes and minor changes:

  • Small usability changes to setting up Let’s Encrypt certificates

2021-12-17 – FileZilla Server 1.2.0-rc1 released

New features:

  • Created Debian and macOS packages
  • Introduced more finegrained access controls for the mountpoints

Bugfixes and minor changes:

  • MSW: Disallow files and directories ending on space or dot
  • If a user gets disabled, corresponding sessions are now kicked
  • Let’s Encrypt certificates are now only renewed if in use.
  • The UI now lets you edit users info even if they’re disabled.
  • Fixed support for UNC pathames on Windows
  • Fixed a few regressions
  • Autoban now shares state across login sessions, which makes it work as intended.
  • The UI now clearly shows in the log whenever it has connected with the FileZilla FTP server.

2021-12-10 – FileZilla Client 3.57.0 released

Bugfixes and minor changes:

  • Fixed incorrect default settings for file editing
  • Fixed a crash looking up data in file lists
  • Fixed a crash if a HTTPS connection gets canceled during the TLS handshake
  • Updated to libfilezilla 0.35.0

2020-07-16 – FileZilla Pro Adds Support for Keystone V3, OneDrive Sharing, and Amazon STS

By adding support for the OpenStack Swift Keystone v3 identity service, OneDrive Sharing, and Amazon Secure Token Service (STS). FileZilla Pro is making it possible for its users to store and share files with greater versatility and security. Read the full news.

2019-11-07 – FileZilla Pro to continue work with bug bounty program

Building on success of participation in EU security project, FileZilla will continue participating and investing project resources in bug bounty program. Read the full news.

2019-07-29 – FileZilla refocuses on security after participation in EU bug bounty program

European Union-sponsored “bug bounty” program found some security issues which have promptly been fixed.

2019-07-09 – FileZilla Pro to add new features after recent customer survey

The user interface mentioned in the article will also be available for users of the free FileZilla.

These service is used for transferring large data between external collaborators and CHOP.

Aspera

Aspera is a High Speed File Transfer System. It requires an Aspers Server on the CHOP side and an Aspera client on the outside user end. The client starts a file transfer connection to our Aspera Server. Based on the credentials we deposit the data in a predetermined location for the receiver.

  • Access is requested through Service Now.
  • Best for very large file transfers into CHOP.
  • Sending/Sharing Files

AdHoc

Email like interface that allows secure file transfer of multi-gigabyte files to outside users. Sender access requires a CHOP account but receiver accounts are generated dynamically. To retrieve data from outside user there are options in the interface to “Send me a blind carbon copy” and “Allow recipient to send me back files”. Checking these options gives the requestor access to the temporary storage location and the dynamic user and password required to open it.

  • Note: the user, password and data are deleted in 7 days. You must retrieve the data in that time or have it resent.
  • Access is requested through Service Now.
  • Best for infrequent sharing of small or medium size data sets.

ShareFile

Useful for sharing data with others inside and outside CHOP. Limited to

50GB of data total storage. Find additional information on the service and how to request access on @CHOP.

  • Best for regular shared access to relatively small data sets.

SFTP

Secure File Transfer uses a web interface, SFTP command line interface, or programs like WinSFTP to transfer files from outside collaborators. Data can be deposited into an internal file share for access but multiple internal users.

  • Access is requested through Service Now.
  • Best for regular transfers of medium to large size data sets.

For additional assistance, please contact the CHOP IS Support Center at ext. 4-HELP (4-4357), 215-590-4357, or visit the CHOP IS Support Center Portal.

How to securely transfer files to someone else with sftp

Photo by Anete Lusina from Pexels

The process of moving files from place to place is almost forgotten in today’s world due to how commonplace it has become in the modern IT environment. Much like breathing, moving files is such a part of your daily routine that you can almost forget that you’re doing it.

But what happens when one stops to think about this menial task? Are you going about this correctly? What about efficiency? Then there is always the looming question of, “Is the data safe?” This article takes a moment to think about these questions and introduces you to a couple of mainstays in the file transfer space.

File Transfer Protocol (FTP) and SSH File Transfer Protocol (SFTP), sometimes referred to as Secure File Transfer Protocol, do many of the same things, but there are some key differences and considerations to be made for each.

If you want to know which is best for you, in short, SFTP is a more secure option. However, in certain situations with unusual constraints, FTP may still be the more viable choice. Stick around, and take a deeper dive on this topic.

More Linux resources

  • Basic Linux commands cheat sheet
  • Advanced Linux commands cheat sheet
  • Linux system administration skills assessment
  • Free course: RHEL technical overview

Comparables

First, have a look at the things that both of these protocols allow. For one, they enable you to use an FTP client to connect to your servers. Many businesses have an (S)FTP client configured for routine use. You can also use a visual client, such as FileZilla, with either of these protocols. Secondly, you can always connect to your server, browse files (including hidden files), upload or download from your local machine to the server, and vice versa.

Differences

The differences between the two are where things get a little more interesting. These two protocols accomplish the same goal, but they go about it in very different ways. Take a look at how FTP operates, and then examine SFTP.

FTP in (a bit more) detail

The standard File Transfer Protocol (FTP) uses a client-to-server model. It does this by using two separate channels to move data between the client and server. These two channels are the command channel and the data channel. These channels are unencrypted (by default), meaning that if someone could gather data between the server and client (MITM attack), it would be easily read. This is due to FTP data being sent as plain text, making it very easy to gather information from the captured data.

Behind the scenes with SFTP

Unlike traditional FTP, Secure Shell FTP (SFTP) only uses a single channel to move the data. This channel is encrypted and is protected by a username/password combination or by the use of SSH cryptographic keys. Anyone who intercepts the transmission between the client and server would be unable to read the data due to the encryption.

In the cloud

  • Understanding cloud computing
  • What is hybrid cloud?
  • Free course: Red Hat OpenStack technical overview
  • Hybrid cloud strategy for dummies eBook
  • O’Reilly: Accelerating cloud adoption

Which should you choose?

There isn’t a ‘one size fits all’ choice, so you’ll need to consider the file transfer in question. Does the data contain sensitive information? If keeping your data secure is important (and it almost always is), SFTP is probably the right answer. But sometimes, that’s not the main issue to consider.

SFTP is generally slower than FTP due to the security built into the protocol. The data is encrypted, which takes time, but perhaps more importantly the protocol itself functions differently; it’s not “streamed” like FTP.

One limitation of SFTP is that, being reliant on SSH, it requires authentication. This means if you want users to be able to connect anonymously (for example, with a public file server), FTP is the way to go.

In the coming weeks, I explore some of the basic SFTP commands, so be sure to keep an eye out for those here on Enable Sysadmin.

Use the SSH and SFTP protocols to access other devices, efficiently and securely transfer files, and more.

How to securely transfer files to someone else with sftp

Subscribe now

Get the highlights in your inbox every week.

Years ago, I decided to set up an extra computer (I always have extra computers) so that I could access it from work to transfer files I might need. To do this, the basic first step is to have your ISP assign a fixed IP address.

The not-so-basic but much more important next step is to set up your accessible system safely. In this particular case, I was planning to access it only from work, so I could restrict access to that IP address. Even so, you want to use all possible security features. What is amazing—and scary—is that as soon as you set this up, people from all over the world will immediately attempt to access your system. You can discover this by checking the logs. I presume there are bots constantly searching for open doors wherever they can find them.

Not long after I set up my computer, I decided my access was more a toy than a need, so I turned it off and gave myself one less thing to worry about. Nonetheless, there is another use for SSH and SFTP inside your home network, and it is more or less already set up for you.

One requirement, of course, is that the other computer in your home must be turned on, although it doesn’t matter whether someone is logged on or not. You also need to know its IP address. There are two ways to find this out. One is to get access to the router, which you can do through a browser. Typically, its address is something like 192.168.1.254. With some searching, it should be easy enough to find out what is currently on and hooked up to the system by eth0 or WiFi. What can be challenging is recognizing the computer you’re interested in.

I find it easier to go to the computer in question, bring up a shell, and type:

This spits out a lot of information, but the bit you want is right after inet and might look something like 192.168.1.234. After you find that, go back to the client computer you want to access this host, and on the command line, type:

For this to work, gregp must be a valid user on that system. You will then be asked for his password, and if you enter it correctly, you will be connected to that other computer in a shell environment. I confess that I don’t use SSH in this way very often. I have used it at times so I can run dnf to upgrade some other computer than the one I’m sitting at. Usually, I use SFTP:

because I have a greater need for an easy method of transferring files from one computer to another. It’s certainly more convenient and less time-consuming than using a USB stick or an external drive.

  • Linux commands cheat sheet
  • Advanced Linux commands cheat sheet
  • Free online course: RHEL Technical Overview
  • Linux networking cheat sheet
  • SELinux cheat sheet
  • Linux common commands cheat sheet
  • What are Linux containers?
  • Our latest Linux articles

If you need to change the working directory on your client, use the command lcd (as in local change directory). Similarly, use lls to show the working directory contents on your client system.

What if the host doesn’t have a directory with the name you would like? Use mkdir to make a new directory on it. Or you might copy a whole directory of files to the host with this:

which creates the directory and then copies all of its files and subdirectories to the host. These transfers are extremely fast, as fast as your hardware allows, and have none of the bottlenecks you might encounter on the internet. To see a list of commands you can use in an SFTP session, check:

I have also been able to put SFTP to use on a Windows VM on my computer, yet another advantage of setting up a VM rather than a dual-boot system. This lets me move files to or from the Linux part of the system. So far I have only done this using a client in Windows.

You can also use SSH and SFTP to access any devices connected to your router by wire or WiFi. For a while, I used an app called SSHDroid, which runs SSH in a passive mode. In other words, you use your computer to access the Android device that is the host. Recently I found another app, Admin Hands, where the tablet or phone is the client and can be used for either SSH or SFTP operations. This app is great for backing up or sharing photos from your phone.

How to securely transfer files to someone else with sftp

Secure File Transfer Protocol (SFTP) and its Advantages

Read time: 7 minutes

What is SFTP and its Working

Some of the information a system needs to configure for SFTP Client:

Server Hostname

Provide the server’s hostname or IP address.

Port Name

The client’s TCP port of choice when connecting

Ex: Port no – 22 or other

Security Protocol

Choose the protocol you wish to use to create a secure connection.

Ex: SFTP, FTP, SCP, or other

Username

Username by which the client wants to connect to the server

Ex: Username: Admin

Password

The password assigned to the user.

Uses of SFTP

SFTP Encryption:

Advantages of SFTP

There are various advantages of SFTP as a service

  • Data Security : As dealing with sensitive and personal data, data security is a big question nowadays. You want your files to be fully secured, SFTP provides various ways of Secure Data Transfer. SSH File Transfer requires the use of keys or usernames and passwords so that no intruder can get access to it.
  • No Hardware Needed : Using SFTP doesn’t require any extra utilities like servers or infrastructure; once you enter into SFTP services, all facilities are immediately available for use.
  • Accessibility : From an Accessibility point of view, SFTP provides a single location to store all of its business files and gives you complete control and flexibility over it.
  • Speed and efficient
  • Reduce Costs

File Transfer Protocol is an easy way of accessing and transferring files or programs over a network. Better known as FTP, this protocol allows users to access various types of data from a remote computer or server. Although clients can sometimes connect anonymously to a host using FTP, the connection is generally not considered to be entirely safe. That’s where SFTP comes in.

SFTP is another type of protocol that works just like the standard FTP but comes with the additional benefit of offering a secure connection. This is thanks to the fact that SFTP comes bundled with another network protocol known as Secure Shell or simply SSH. SFTP was designed specifically to provide a secure channel for services using an unsecured network and should be used instead of the regular FTP whenever possible.

A Couple of Things to Note About SFTP Connections

Making use of this secure protocol on Linux is very easy thanks to the sftp command. For obvious reasons, you’re going to need write permission from the remote system you want to access before you can transfer any files using this command.

Another thing to note is that you should run the command inside a tmux or GNU Screen terminal whenever you’re transferring large files. Using one of these utilities will allow you to easily resume your session should your connection drop during the transfer.

SFTP makes use of the SSH protocol for creating a connection, which means that it also uses the same authentication methods. By default, users can use passwords to connect to the remote server, however, this method is not recommended. Using traditional passwords means that your connection is not entirely secure even when using SFTP.

Instead, it is strongly recommended that you set up SSH keys when connecting via SFTP. Your public key will first need to be transferred to the remote system before you can connect to it. However, doing so will allow you to set up an SFTP login that doesn’t require any passwords. Not only is this method more secure but it also saves you some time in the future as you will no longer need to input a password every time you establish a connection.

How to Establish an SFTP Connection

In order to establish an SFTP connection start by typing the sftp command in the terminal followed by your remote username and the IP address or domain name you want to connect to. The command will look something like this:

If you decided against creating SSH keys and you’re using a traditional password, you will now be prompted to input said password in order to connect. If the password is correct, the remote system will confirm that the connection has been established and the standard prompt will change to sftp>.

If you’re not using the standard port 22 or if the remote system is not listening to it, you can specify a different port by typing in the following command:

Useful Commands

You should be familiar with many of the commands recognized by the SFTP prompt as they are identical to the ones you can use in the regular Linux shell prompt. This includes help, which is by far one of the most useful commands you should be aware of. Calling this command in the SFTP prompt is as easy as typing help or ?.

Upon doing so, you will be presented with a list of other available commands along with their purpose. For example, bye or exit can be used to quit the SFTP prompt while cd path will change the remote directory to ‘path’.

Navigating Using SFTP

Once a remote connection has been established, you will initially find yourself in the root directory of the server you just accessed. The exact name of said directory can be checked by typing in the following command:

The prompt output will then return:

Viewing the files and folders contained inside the working directory requires the use of another command you might be familiar with:

To move to a different directory you can use the following command:

If you would like to print the contents of the directory you are currently in you can use:

Meanwhile, if you just want to list the contents of the directory you can use the command:

Downloading Files Using SFTP

The primary reason for using a protocol like SFTP is to transfer and download files from a remote host to your local machine. In many situations, you can use a desktop client like Filezilla to make things easier but that might not always be an option. There are scenarios when you’re working with a server that doesn’t feature a graphical user interface. This is when the sftp command will come in handy.

In order to download a particular file from the remote server to your local system you’re going to need to use the following command:

Upon typing this command you may notice that the remote file will be downloaded on your local system under its original name. So exampleFile will remain exampleFIle once the transfer is complete. However, you can change that and rename the transferred file to something else using the following command:

If instead of a single file you would like to download an entire directory you’ll need to use the recursive flag –r alongside the get command. For example:

If your connection drops or the file transfer is interrupted for any other reason, you can resume it by simply using the reget command. In this case, simply replace get with reget while typing the command:

Uploading Files Using SFTP

SFTP can be used for uploading files just as easily as it can be used for downloading them. If the file you want to transfer is found in your local working directory, use the following command:

The flag mentioned earlier works just as well for instances when you want to upload an entire directory instead of a single file. For example:

Meanwhile, resuming an interrupted upload also works similarly and the command will look something like this:

File Manipulations Using SFTP

Being able to check how much disk space is left on the remote server is very useful when uploading and downloading files, especially large ones. To check the remaining disk space as well as display other useful statistics you can use the command:

If you want to change the owner of a particular file you can do so with the following command:

Meanwhile, if you only want to change the permissions of a file you can use:

You can create a new directory on the remote server with the command:

And you can delete a directory from the remote server with:

To delete a file use the following command:

Or if you want to simply rename a file on the remote server use the following:

Once you’re done uploading, downloading, or manipulating all the files you wanted you can close the connection to the remote server by typing exit or bye.

Final Thoughts

Learning how to efficiently use SFTP in Linux will make your job a lot easier when transferring files to or from a remote server. Regular FTP is also a viable option as it uses very similar commands to the ones discussed above, however, it might not be the best solution in many situations.

The primary reason why you would want to use SFTP is security, which is something other protocols lack. Another benefit of SFTP is the ease of use because by setting up SSH keys you can connect to a remote server without having to type in any passwords. Therefore, you avoid exposing yourself to unnecessary security risks in the process.

Follow MUO

Want to share files to and from a remote server? Use the sftp command in Linux to transfer data securely over the internet.

This guide will explore how to use sftp (SSH File Transfer Protocol), a command-line program for securely transferring files between two Linux computers over a network.

What Is SFTP?

Before defining SFTP, it is important to take a step back and understand FTP (File Transfer Protocol), the predecessor of SFTP.

FTP is a network communication protocol used for transferring files between two computers on a network, typically between a server and a client.

SFTP is a more secure version of FTP. It maintains security by encrypting the data exchanged between two computers by utilizing the SSH (Secure Shell) protocol. FTP, on the other hand, transmits the data as plain text over a network.

SFTP can also help you and your organization achieve certain compliance regulations such as GDPR or CCPA, which require confidential data to be transferred in the most secure way possible.

Accessing a Remote PC

Linux mainly allows you to transfer files with SFTP through the sftp program. Sftp is a robust command-line software that allows you to transfer files over SSH securely and interactively.

You can connect to a remote server through sftp using the following command. Remember to replace the placeholders “username” and “ip-address-of-remote-pc” with the correct username and IP address of the server accordingly.

Enter the server password if prompted. If the terminal greets you with the Connected status, it means that you’ve succeeded in establishing a connection. The blinking cursor simply shows that sftp is in interactive mode.

Note: If you do not have a remote server to interact with, you can try out sftp locally by running the following command:

Interactive sftp Commands

Once you are in the interactive mode, there are several commands that you can use to interact with the remote PC. Some of the most important commands are outlined below. Note that, unlike most Linux commands, sftp commands are not case-sensitive.

Listing Files on a Remote Server

One of the most important tasks is to list files in a directory so that you have an idea of what you want to transfer. You can also get file and folder information of the remote PC, including the size and permissions of the stored files.

To list files on your remote PC, you can use the following command:

You can use most of the ls command flags such as -a, -l, etc. and they will work just fine.

To list files on your local working PC, you can use the following command:

Listing the Current Working Directory

You can also output the path of the current working directory on the remote PC with pwd. The pwd command stands for Present Working Directory.

To list the present working directory on your local PC:

Use the Ctrl + L keyboard shortcut to clear the interactive terminal output.

Uploading Files to a Server

Use the put command to transfer files from your local PC to a remote server. For example, to transfer a Linux Manjaro ISO image from your home folder, use the command below. You can use the -R flag to copy a directory recursively.

The output will be similar to the one shown below. Sftp will display the progress of the file transfer in real-time.

Also, since the file path to the remote server has not been specified, sftp will put the file in a similar path as that of the local PC.

If you wish to copy multiple files, use the mput command instead. For example, to copy all Excel spreadsheets (XLS) files in a directory:

To interrupt or stop the transfer of a file to the server, you can use the keyboard shortcut Ctrl + C.

Downloading Files From a Server

Use the get command to download files from the server onto your local PC. For example, to copy an HTML file named index.html from the server, simply run the following command:

To get multiple files from the server, use the mget command. For example, to copy all HTML files from the server’s present working directory to your local system:

Changing File Permissions

You can also change the permissions of a file on the remote server within the interactive terminal using the chmod command. For example, to grant all access permissions to the index.html file, run the following command:

Exit the sftp Session

To quit the sftp interactive terminal, you can simply type the command bye. Alternatively, you can use the exit or quit commands as well.

Getting Command-Line Help

Instead of memorizing commands, it is best that you learn how to get help from the command line whenever you need it.

Sftp comes with good documentation. Simply type either of the following commands to get help within the interactive terminal window.

Practical Applications of SFTP

This guide has shown you how to transfer data securely and interactively between Linux computers using the sftp command. If you happen to be a Raspberry Pi user, you might also be interested in learning different ways to transfer data from your Raspberry Pi to a PC.

At some point you’re going to want an easy way to get the data off the Pi’s SD card and onto your PC’s HDD. This can be tricky.

How to securely transfer files to someone else with sftp

Mwiza develops software by profession and writes extensively on Linux and front-end programming. Some of his interests include history, economics, politics & enterprise-architecture.

Subscribe to our newsletter

Join our newsletter for tech tips, reviews, free ebooks, and exclusive deals!

Is a file transferred via SFTP any less secure than the same data transferred via SOAP into a database?

How to securely transfer files to someone else with sftp

1 Answer 1

SFTP is very secure. The “S” in “SFTP” even stands for secure. That doesn’t mean that a file transferred via SFTP is necessarily secure, of course — just that if something goes wrong with the security, you probably have something else to blame other than SFTP. SFTP won’t be the weak link. You could still have a weak password, lose your certificate, have the secret service raid your data center, etc.

However, SOAP has nothing to do with security. A SOAP request is a thing which can be secure or insecure depending on how it’s sent. If you send SOAP over HTTP, it is incredibly insecure. If you send it over HTTPS, it can be relatively secure depending on how much you trust your CA. Using SOAP over HTTP is like leaving your UPS package on the doorstep. It’s convenient but someone could walk by and take it.

Think about it this way: SOAP is the money, HTTPS is the armored car. Except sometimes the armored car is driven by the Chinese government to a completely different location, unless you have a rule in place to prevent that from happening. (Google Chrome, for example, uses a whitelist for CAs on specific domains.)

Summary:

  • SFTP is secure, if you get your certificates right.
  • SOAP over HTTPS is secure, if you get your certificates right.
  • SOAP over HTTP or SMTP is insecure.

Getting your certificates right is the only hard part about this.

SFTP (Secure File Transfer Protocol) was introduced as a part of SSH version 2.0 to provide a secure way to transfer files between systems. It uses SSH to encrypt and protect the data it transfers.

In this tutorial, we will go over how SFTP works, how it compares to other file transfer protocols, and when you should use it.

How to securely transfer files to someone else with sftp

How SFTP Works

When a client system requests a file transfer, SFTP creates a secure connection between the client and the SFTP server. This connection usually goes through port 22.

How to securely transfer files to someone else with sftp

SFTP then uses the SSH protocol to encrypt the requested file and transfer it to the client. The client can decrypt and access the file using one of several authentication methods SSH offers.

These methods include a combination of user ID and password or a pair of SSH keys. Unlike FTP, the user ID and password are encrypted in SFTP.

Users can also set up the SFTP server in a way that does not require authentication, though this option is far less secure.

Transferring a file using SFTP consists of the following steps:

  1. Before transferring a file, the client and the server initiate a connection using an SSH authentication method.
  2. Once the connection starts, the client tests the SSH access to the server.
  3. If the test is successful, the client and the server establish an SFTP connection.
  4. The SFTP client switches over to the SFTP interface.
  5. The client opens an SFTP session using port 22.
  6. The client initiates the file transfer.

How Does SFTP Compare to FTP?

SFTP offers a more secure alternative to FTP when it comes to transferring files over the Internet. It is important to note that SFTP is not a different version of FTP but rather a completely different protocol.

How to securely transfer files to someone else with sftp

Unlike FTP, which does not use any form of encryption, SFTP uses SSH to encrypt the data it sends. This protects data and ensures it complies with safety regulations, such as PCI-DSS, HIPAA, GDPR and CCPA.

When establishing a connection, FTP uses two ports. One serves to establish and maintain a connection to the client, while the other transmits the data from the FTP server.

On the other hand, SFTP only uses one port to connect and send data. This method minimizes the risk of data being intercepted during transfer by reducing the number of potential targets.

Note: Check out our posts How to Use SFTP Commands and Options and How to Use the Linux ftp Command to learn everything about using SFTP and FTP.

Why Use SFTP?

The most obvious reason to use SFTP is that it provides more security than other file transfer protocols. This is especially important for clients that need to comply with security regulations when transferring files.

SFTP offers more advanced features, such as pausing and resuming file transfer. It also allows users to perform basic administrative tasks on remote systems, like creating, viewing, and managing files and directories and changing file permissions. Additionally, SFTP increases speed and efficiency since it supports transferring large and bulk files faster than other similar protocols, such as FTP.

In its earlier versions, SFTP had problems with speed and scalability compared to protocols such as SCP. This was because every file transfer needed to be separately authenticated. However, newer solutions like cloud SFTP help improve scalability.

Finally, SFTP helps users access file meta-data, like size, date and time, or permissions. Other transfer protocols have workarounds to enable meta-data, but with SFTP, this option is fully supported.

While FTP, SCP and similar protocols offer a reliable way to transfer data over the Internet, SFTP improves on this by adding a layer of encryption and increasing security. If you are looking for a secure way to transfer files, SFTP is the way to go.

Do you need to transfer a file, but you’re unsure of the best way to share it with the intended recipient? While you may have an understanding of the difference between FTP and SFTP, it can be tricky to apply that knowledge to your real-world file transfers and choosing a file transfer solution.

You might be asking yourself when to use FTP, when to use SFTP, or if there’s really a difference at all. Continue reading to learn when to use SFTP and how using this option helps your business.

When You Need to Protect Your Data

When it comes to protecting data, it’s hard to beat a SFTP solution. To put it simply, FTP is the most basic form of file transfers, and while it’s a common option, it doesn’t provide the security that your business probably needs. So, if your business has any data that needs to be protected, like healthcare records or card payment data, turn to an SFTP solution to keep that data out of unauthorized hands.

SFTP solutions provide a number of data protections so transferred data stays secure. Unlike regular FTP data transfers, SFTP solutions transfer data using a SSH (secure shell) connection. While a file transfer via FTP leaves the data easily readable by anyone who accesses it, data transferred by SFTP is scrambled and cannot be intercepted while in transit between the sender, the SFTP server and the recipient.

File transfers using SFTP run on the secure shell protocol, which defaults to port 22. SSH encryption the data itself, usernames, passwords and all the commands being issued, all of which are vulnerable if you use the FTP protocol to send data. Why does this matter? While other file sharing protocols like FTP use many different ports for file transfers, SFTP only uses the single, encrypted port. Keeping all traffic on port 22 makes SFTP far more firewall friendly than FTP or FTPS.

So, if you’re wondering when to use SFTP over FTP, the answer is simple – whenever you need to keep data secure.

How can you be sure to choose the right file sharing software?

Compare the top 7 file sharing software solutions!

When You Need to Protect Your Business

When you transfer files using FTP, there’s more than just your data at risk. Today, a single data breach can cost millions of dollars and an untold amount of damage to your company. One study found that the average cost of a data breach is $3.62 million, a number that can skyrocket depending on amount of data that is stolen. So, to protect your business against the high costs of a data breach, using SFTP is the best choice.

You should also remember that the cost of a data breach can drastically increase if your company fails to meet the applicable compliance standards. So, if you’re a company that deals with healthcare records, a data breach could violate HIPAA compliance standards, leading to fines, lose of business, or even jail time. Make sure you’re choosing a SFTP solution that offers features meets to your compliance requirements, so you don’t have to face the consequences of noncompliance.

Many companies can’t afford to shell out thousands or millions of dollars in noncompliance fines or lost business. Ultimately, SFTP solutions protect more than your data; they protect your business, as well.

When You Need Enhanced Scalability

It’s hard to predict what your data needs will entail from one quarter or year to the next, which is why scalability is such an important feature to look for in a SFTP solution. Fortunately, you don’t have to sacrifice security for convenience. With a cloud SFTP solution, you get the best of both worlds.

Many companies make the mistake of biting off more than they can chew by building their own file sharing solution. While this might seem like a good idea upfront, you incur a lot of ongoing costs to keep your solution running and to ensure you meets your company’s growing or diminishing needs. For example, if your company grows exponentially in a single quarter, you’ll need to invest in more hardware, faster software, and faster internet so your in-house SFTP can keep up with the growth. When you use a cloud SFTP solution, all of those increases are managed by the provider.

With a cloud SFTP, you’re able to scale your solution in the following ways.

  • Unlimited Bandwidth – Bandwidth limitations prevent you from doing your job with uninterrupted efficiency. Choosing a SFTP provider with unlimited bandwidth means you can transfer an unlimited number of files each month via an unthrottled connection. So, if you’re in hurry to conduct a transfer, you won’t be slowed down because your bandwidth is limited.
  • Unlimited Simultaneous Connections – Have you ever been logged into a shared software account, only to be booted off when someone else needs to log on? Look for a top cloud SFTP provider that offers an unlimited number of simultaneous connections, so everyone that needs to be logged in and sharing files can do so at the same time. And, because you don’t know if you employee numbers will double in the next year, unlimited means you won’t face impediments as you grow.
  • Unlimited File Sizes – Some companies work with massive amounts of data. Even if you aren’t transferring huge files now, you might in the future. And, being stopped mid-transfer because the file size isn’t supported can seriously impact productivity. Find a SFTP cloud solution without limits to the size of files you can transfer.
  • Instant Scalability – If you need to increase your number of user accounts, a top SFTP solution can add them instantly. This helps you manage your productivity (there’s no wait for new users to get started) and you can manage your costs (you can decrease accounts as needed, too.) That way you only pay for what you actually use.

Using SFTP is the best way to protect your data and your business. And a cloud SFTP solution ensures your future file sharing and storage scalability needs will be met. When it comes to using SFTP, it’s better safe than sorry. To be frank, the only time you shouldn’t use SFTP is when it’s fine for your data to be accessible by parties other than the intended recipient.

There’s no downside to increasing your security and ensuring your solution is scalable to fit your needs. As you search for a cloud SFTP solution, keep these security and scalability features in mind.

When you’re looking for an file sharing solution, it’s hard to choose between numerous options. Use this free comparison guide to make your choice easier.

How to securely transfer files to someone else with sftp

About Martin Horan

Founder of FTP Today and an expert in secure file transfer and Internet protocols. A software and IT geek since a young age, Martin has successfully led his companies through the digital age by spotting market niches and filling them with quality IT services.

SSH or Secure Shell is a protocol that allows secure access to remote computers. SSH implementation also comes with scp utility for remote file transfer that uses SSH protocol. Other applications such as sftp and rsync also utilize SSH for file transfer to secure their network transaction.

These applications allow us to copy our files from local to remote servers and copy files from remote servers to our local machine. Below are examples of how to use these applications for files transfers based on this setup:

How to securely transfer files to someone else with sftp

Make sure you have access right to the remote server and correct permission to the remote files and folders

Methods for remote file transfer using SSH:

Transfer file using scp

The easiest of these are scp or secure copy. While cp is for copying local files, scp is for remote file transfer where both use almost the same syntax. The main difference is that with scp, you’ll have to specify the remote host’s DNS name or IP address and provide a login credential for the command to work. You can both scp files from local to remote and local to remote.

If the target folder (/remote/folder/) is not specified, it will copy the file to the remote user’s home directory.

Using . as the copy target (replacing localfile.txt will copy the remote file to the current working directory using the same filename (remotefile.txt)

remoteuser need to exist and have write permission to /remote/folder/ in the remote system.

GUI programs such WinSCP can also be used to transfer files between local and remote host using scp methods.

Transfer file using sftp

Related: WinSCP can also be used to for file transfer usiing SFTP. The other popular tool is FileZilla.

Transfer file using rsync

You can also use ssh to secure your rsync session. To do this, use –rsh=ssh or -e “ssh” with your normal rsync commands. The following 2 commands will work exactly the same;

If these options are not specified, rsync will first try to connect to rsyncd but will automatically fallback to SSH if rsyncd is not running in the remote system.

Mount remote filesystem locally

Remote filesystems could be mounted to the local host and accessed as a local filesystem. Mounting remote filesystem requires SSH access to the remote host and with the use of sshfs.

How to securely transfer files to someone else with sftp

Comment anonymously. Login not required.