SFTP File Transfer Guide

schedule Created: March 3, 2026 at 09:16 AM
update Last Updated: April 14, 2026 at 01:31 AM

SFTP File Transfer Guide

This guide explains how to transfer files between your local computer and your StreamGPU instance. We recommend using SFTP (SSH File Transfer Protocol) for secure and efficient transfers.

1. Using an SFTP Client (GUI)

If you prefer a graphical interface, several SFTP clients are available.

WinSCP (Recommended for Windows)

  1. Download and install from the WinSCP official site.
  2. Set up a New Session:
    • Protocol: SFTP
    • Host Name: Your server address from the dashboard
    • Port Number: Your assigned port number
    • User Name: The username shown in your dashboard or connection details
  3. Go to Advanced Settings -> SSH -> Authentication:
    • Private Key File: Select your .pem file. WinSCP will offer to convert it to .ppk format. Accept this conversion.

Cyberduck (Mac/Windows)

  1. Download and install from the Cyberduck official site.
  2. Click Open Connection and select SFTP.
  3. Enter your server address, port, and username. Specify your .pem file in the SSH Private Key field.

2. Transferring via Terminal (CLI)

Basic SFTP Commands

Connect from your terminal using this command:

sftp -i <path_to_key> -P <port_number> <ssh_username>@<server_ip>

Common SFTP Commands:

  • put <local_file>: Upload a file to the server
  • get <server_file>: Download a file from the server
  • ls: List files on the server
  • cd <directory>: Change directories on the server
  • exit: Close the connection

SCP Command (Single File Transfer)

Use SCP to copy files without maintaining an active session.

# Copy a local file to the server
scp -i <path_to_key> -P <port_number> <local_file> <ssh_username>@<server_ip>:<server_path>

# Copy a file from the server to your local machine
scp -i <path_to_key> -P <port_number> <ssh_username>@<server_ip>:<server_file> <local_path>

3. Large File Transfers (rsync)

For large datasets or many files, we recommend rsync. It can resume interrupted transfers.

rsync -avz --progress -e "ssh -i <path_to_key> -p <port_number>" <local_directory>/ <ssh_username>@<server_ip>:<server_path>/

4. Important Notes

  • Protocol Check: StreamGPU does not support standard FTP for security reasons. Always select SFTP.
  • Permission Errors: Ensure you have write permissions for the target directory on the server. It is safest to work inside your own home directory or another directory you control.
  • Port Numbers: Use the same port number as your SSH connection. Note that SFTP and SCP use the -P (capital) flag for the port.