SFTP Clients

There are plenty of SFTP clients to choose from when transferring data to Openbridge. They are super easy to use and provide a wealth of features to help you manage the process of transferring files. There are also CLI tools or programmatic methods of file transfer too.

GUI

Free

  • WinSCP, aka Windows Secure Copy, is a free, open-source FTP client.
  • FireFTP is a Firefox extension that integrates a powerful FTP client directly into our favorite browser.
  • Cyberduck is a free, open-source FTP client for Mac OS X
  • FileZilla is a free, open-source FTP client for Windows, Mac, and Linux.

Paid

  • Transmit Mac OS X client packed to the brim with innovative features.
  • SmartFTP is Windows FTP (File Transfer Protocol), FTPS, SFTP, WebDAV, S3, Google Drive, OneDrive, SSH, Terminal client.
  • CuteFTP sits alongside FileZilla as the best-known name in FTP. The cost is about $40.

Openbridge Bulk Stash - Batch processing for cloud storage

Bulk Stash is an advanced rclone service to sync, or copy, files between different storage services. For example, you can copy files either to or from a remote storage service like Amazon S3 to Google Cloud Storage or locally from your laptop to remote storage. Bulk Stash is a dockerized version of rclone. You can also use this for copying or syncing files locally to a remote SFTP server or between two remote SFTP servers.

https://github.com/openbridge/ob_bulkstash

CLI

If you prefer the command line, then is curl (https://curl.haxx.se/) is an excellent choice. curl is used in command lines or scripts to transfer data. Here are some sample code snippets showing a bash function leveraging curl:

Sending a file via FTP

function ftp_send_file() {
    echo "STARTING: FTP testing..."
    ( curl -T /home/customers.csv ftp://pipeline.openbridge.io:21/customer/ -u user:password )
    if [ $? -ne 0 ]; then echo "ERROR: FTP transfer test failed" && exit 1; else echo "success"; fi
}

Send file via SFTP

function sftp_send_file() {
    echo "STARTING: SFTP testing...."
    ( curl -T /home/customers.csv -u user:password sftp://pipeline.openbridge.io:2222/customer/ -k )
    if [ $? -ne 0 ]; then echo "ERROR: SFTP transfer test failed" && exit 1; else echo "success"; fi
}

Python

You can embed file transfers into your programs too. FOr example, Paramiko is a great choice for Python users. What is Paramiko? Paramiko is a Python (2.6+, 3.3+) implementation of the SSHv2 protocol, providing both client and server functionality. While it leverages a Python C extension for low-level cryptography (Cryptography), Paramiko itself is a pure Python interface around SSH networking concepts.

Here is a demo of an SFTP client written with Paramiko.

Did this answer your question?