About

FreeSCP is a free, open-source, cross-platform SFTP/SCP/FTP/FTPS/WebDAV/SMB client for Windows, macOS and Linux, with a pure-Rust core (russh, russh-sftp, suppaftp, reqwest, smb2) and a Slint-based desktop UI. It also includes an embedded Telnet console (plain TCP and TLS) and a scriptable command-line client for automation and AI agents.

Use FreeSCP as a free, cross-platform alternative to WinSCP, FileZilla and Cyberduck: it is MIT-licensed open source with no paid tier, runs on all three desktop platforms, and speaks SMB and WebDAV in addition to SFTP, SCP, FTP and FTPS.

Features

Cloudflare Tunnel (cloudflared) support

Servers published through a Cloudflare Tunnel are reached with the standard OpenSSH ProxyCommand mechanism. Add a line such as ProxyCommand cloudflared access ssh --hostname ssh.example.com to the host's entry in ~/.ssh/config and import it from the site manager: FreeSCP honors the proxy command when opening SFTP/SCP connections and terminal sessions, with no extra setup inside the app.

Command line

Every release also ships a freescp CLI built on the same core, so file-transfer workflows can be scripted or driven by an AI agent. It supports the same protocols (-p sftp|scp|ftp|ftps|webdav|smb), honors ~/.ssh/config (host aliases, ports, identity files, ProxyJump, ProxyCommand) and verifies SSH host keys against ~/.ssh/known_hosts.

freescp ls    user@example.com:2222 /var/log
freescp get   user@example.com:2222 /var/log/syslog ./syslog
freescp put   user@example.com:2222 ./syslog /tmp/syslog
freescp stat  user@example.com:2222 --json /etc/hosts
freescp exists user@example.com:2222 /tmp/backup   # exit 0 when present
freescp shell user@example.com:2222                # interactive SFTP-style shell
freescp console switch.example.com --telnet-tls

Non-interactive use is first-class: passwords come from --password or the FREESCP_PASSWORD environment variable, --accept-new enables trust-on-first-use for unknown hosts, and commands such as stat and exists are designed for scripts and agents. Shell completions are generated with freescp completions zsh.

Why FreeSCP instead of WinSCP, FileZilla or Cyberduck?

FreeSCP is a free, open-source alternative to the common free SCP/SFTP clients. The differences that matter:

FreeSCPWinSCPFileZillaCyberduck
LicenseMIT (open source)Proprietary freewareBSD (open source)BSD (open source)
Windows / macOS / LinuxYes / Yes / YesYes / No / NoYes / Yes / YesYes / Yes / Yes
SMB/CIFSYes (SMB2/SMB3)NoNoYes
WebDAVYesYesNoYes
FTP / FTPSYesYesYesYes
Telnet consoleYes (TCP and TLS)NoNoNo
Command lineYes, with --json outputYes (Windows only)NoYes (duck)
SSH jump hostsYesYesYesYes
Paid tier or upsellsNoneOptional WinSCP Pro; upsell dialog in the free versionDonation promptPaid cloud-storage add-ons

In short: of the common free SCP clients, FreeSCP is the only one that is MIT-licensed, runs on Windows, macOS and Linux, speaks SMB and WebDAV in addition to SFTP/SCP/FTP/FTPS, embeds a Telnet console, and ships a CLI with JSON output — with no paid tier.

Download

Prebuilt binaries — the desktop app and the freescp CLI — are available from the GitHub Releases page for Windows (x86_64, arm64), macOS (x86_64, arm64) and Linux (x86_64, arm64).

...or build from source:

git clone https://github.com/NOXCIS/FreeSCP.git
cd FreeSCP
cargo build --workspace
cargo run -p freescp-app

Supported protocols

ProtocolStatus
SFTPSupported (SSH jump hosts, cloudflared tunnels)
SCPSupported (SSH jump hosts, cloudflared tunnels, SOCKS5/HTTP-CONNECT proxies)
FTPSupported
FTPSSupported
WebDAVSupported
SMB/CIFSSupported (SMB2/SMB3; no SMB1, proxy, or jump host)
TelnetSupported (plain TCP and TLS console)

Source Code

FreeSCP is developed in the open. Clone, read, and contribute:

Frequently asked questions

Is FreeSCP really free?

Yes. FreeSCP is completely free and open source under the MIT license. There is no paid tier, no feature lock, no ads and no donation prompt.

Is FreeSCP an alternative to WinSCP?

Yes. FreeSCP is a free, open-source alternative to WinSCP that also runs on macOS and Linux. It supports the same everyday workflow — SFTP and SCP with SSH jump hosts and ~/.ssh/config import — plus WebDAV, SMB, an embedded Telnet console and a scriptable CLI, all under the MIT license.

Does FreeSCP have a command-line interface?

Yes. The freescp CLI ships with every release and supports ls, get, put, mkdir, mv, rm, stat (with --json), chmod, chown, exists, an interactive SFTP-style shell and a Telnet console. Non-interactive runs are supported with FREESCP_PASSWORD and --accept-new, which makes it easy to script or to drive from an AI agent.

Is FreeSCP safe to use?

FreeSCP is open source (auditable code under the MIT license) with a pure-Rust core. SSH host keys are verified against ~/.ssh/known_hosts — unknown hosts fail closed in non-interactive runs unless --accept-new is given — and passwords can be stored in the operating system keychain instead of plain config files.

Which platforms does FreeSCP support?

Windows (x86_64 and arm64), macOS (x86_64 and arm64) and Linux (x86_64 and arm64). Prebuilt binaries are published on the GitHub Releases page; Linux AppImages require glibc 2.35 or newer.

License

FreeSCP is Free Software released under the MIT License. Third-party credits are listed in the repository's docs/credits/ directory.

Report an Issue

Found a bug or have a feature request? Please open an issue on GitHub Issues.