Getting started

Install, then copy.

Farwing is free for any use, including commercial use, up to 1 Gbit/s and two transfers at once. Two commands get you a first copy on a machine you can reach with SSH.

1. Install

Linux and macOS (save, then run with bash — Ubuntu’s sh cannot run this script):

curl -fsSL -o farwing-install.sh https://farwing.io/install.sh
bash ./farwing-install.sh

Windows (PowerShell):

Invoke-WebRequest -UseBasicParsing https://farwing.io/install.ps1 -OutFile farwing-install.ps1
powershell -File .\farwing-install.ps1

Installers and checksums are on farwing.io/download.

2. First copy

One side is a local path; the other is user@host:path. The client starts a short-lived helper on the remote host over SSH, then moves the bytes on the data port (default 47700).

farwing cp big.iso user@host:/data/

Pull the other way the same way:

farwing cp user@host:/data/big.iso .
Firewall: open UDP/TCP 47700 on the receiving host (or whichever side runs the remote helper). SSH alone is not enough for full speed.

3. Path test (optional)

Memory-to-memory, like iperf3 — useful before you blame the disk:

farwing bench user@host --size 5G

Ticket copy (Farwing Server)

When a Farwing Server issues a transfer ticket, you do not need SSH to that host. Install the client, then:

farwing cp --ticket 'TICKET_STRING' ./local-file.bin

Use a local file to send, or a local directory to receive. Override the host in the ticket with --ticket-host when you reach the server through a tunnel.

Next