Home › Topics › Open Source vs Commercial › The OSS Case

What Open Source Transfer Tools Genuinely Do Well

"What does it do that sshd doesn't?" I have been asked that across a table by a Linux administrator with folded arms. It is the right question. For that administrator on that host, the honest answer is usually "nothing you need." This is the article a commercial vendor is not supposed to write, so let us be precise. We sell commercial transfer software for Windows, and we are not a neutral party. This piece argues the opposite case at full strength anyway. It is not a polite nod toward "open source has its place" before the pitch. It is the case that administrator would make, ending where buying anything would be a mistake.

Open source software is software whose code anyone may read, change, and share under a license that says so. The headline is not controversial among people who run servers for a living. The most widely deployed file transfer server in the world is open source. You are almost certainly running it already. Everything else follows from that fact and four others (transparency, ubiquity, no license meter, and freedom from lock-in), each taken seriously rather than as a slogan. If we cannot write that honestly, nothing else in our Open Source vs Commercial series deserves your trust. The checklist near the end turns it into a decision; read that first if you are in a hurry.

The Headline: You Already Run the World's Most Deployed Transfer Server

OpenSSH is the open source implementation of the SSH protocol. It ships with practically every Linux and BSD distribution and most network and storage appliances that offer a shell. It also ships with nearly every cloud machine image and, as an optional feature, modern Windows. Its server, sshd, includes an SFTP subsystem: the file transfer service that runs inside an SSH session, described in how SFTP works. If a machine accepts SSH logins, it is one configuration line away from being an SFTP server. On most systems that line is already present.

The code path that moves your partner's files is the same code path that guards remote login to a large fraction of the servers on the internet. When a flaw is found, the finding is public, the fix is public, and every distribution ships the patch through the update channel you already use. No commercial transfer product receives a fraction of that attention, because none is installed on a fraction of that many machines. Hence the folded arms.

Here is a complete server-side configuration for a locked-down partner drop: SFTP only, no shell, no port forwarding, keys only, each user jailed to a directory. It fits on an index card.

# /etc/ssh/sshd_config — an SFTP-only partner drop, in its entirety
Subsystem sftp internal-sftp

Match Group sftponly
    ChrootDirectory /srv/sftp/%u
    ForceCommand internal-sftp
    AllowTcpForwarding no
    X11Forwarding no
    PasswordAuthentication no

# Then, per partner:
#   useradd -g sftponly -s /usr/sbin/nologin partnerA
#   mkdir -p /srv/sftp/partnerA/inbox     (jail root owned by root, not writable)
#   chown partnerA:sftponly /srv/sftp/partnerA/inbox
#   install the partner's public key in the usual authorized_keys location

Every line is readable by anyone who has administered Linux. Every option has a manual page that has been stable for years. The whole thing can go under version control and be reviewed like code. The details (jail ownership rules, logging inside the jail, per-user overrides) are in SFTP server configuration. The point here is the shape: a production-grade partner transfer server is nine lines on software you already patch.

Transparency: Nothing Is Hidden, Including the Bugs

Transparency is usually pitched as "you can read the source." That is true and mostly irrelevant; few teams ever will. The transparency that matters day to day is more mundane.

  • The documentation is the truth. An open tool's manual page describes exactly what the running code does. That is because the same people maintain both and thousands of users file a bug the day they diverge. When a commercial product's documentation and behavior disagree, you find out from a support ticket.
  • Failures are diagnosable to the bottom. Run sshd in debug mode, or the client with verbose flags. You see every step of the negotiation: which key was offered, which was refused, why. There is no "an internal error occurred" wall with the real cause behind it. Our SFTP command-line guide shows how far that visibility goes.
  • Vulnerabilities are announced to you, not managed for you. A public advisory tells everyone at once what is affected and what fixes it. You decide urgency with full information rather than waiting on a vendor's disclosure schedule.
  • Nothing in the tool is working against you. No license check that can fail at two a.m., no usage telemetry, no feature that switches itself off when a subscription lapses. It does what the configuration says and nothing else.

For anyone who has spent a night debugging a black box, this is not a philosophical preference. It is the difference between a one-hour outage and a one-day one.

Ubiquity: The Same Tool on Every Machine, Every Partner, Every Cloud

When a partner says "we'll send it over SFTP," what they mean in practice is "we will test against OpenSSH." It is the de facto reference implementation. If your server works with the OpenSSH client and your client works with the OpenSSH server, you interoperate with nearly everything. That is because nearly everything was tested against the same code. Commercial servers earn compatibility by testing against OpenSSH; OpenSSH earns it by being what everyone tested against. (We test against it too. There is no other sensible choice.)

The client side is just as universal. The sftp and scp commands are on every Linux, BSD, and macOS machine and on modern Windows. rsync handles mirroring and delta transfer over the same SSH connection. curl speaks more transfer protocols than most people can list. lftp adds mirroring, queuing, and scripting for FTP-family servers. FileZilla and WinSCP give non-technical users a graphical client at no cost. Each is free, mature, documented, and familiar to anyone you might hire. Standardizing an organization's clients (our client standardization series) is dramatically easier when the standard costs nothing and installs anywhere.

Ubiquity has a hiring dimension too. Every Linux administrator you interview has configured sshd. Skills in an open, standard tool compound; skills in a proprietary console depreciate the day you switch products.

No License Meter: Scale and Experimentation Are Free

"Free" is the weakest word in the open source vocabulary, because it invites the obvious reply: somebody still has to run it. The hidden-costs article counts those hours. The strong version of the point is not that open source is free. It is that the cost does not scale with use, and that changes how you design.

With no license meter, architecture decisions stop being distorted by the pricing model. Want one isolated SFTP server per sensitive partner, each in its own container, so that a compromise of one cannot reach another? Nothing stops you. Want a throwaway server in the lab to reproduce a partner's problem exactly? Thirty seconds. Want a local SFTP endpoint on every developer's machine? Done, and nobody asks whether test instances count. Teams paying per server, per user, or per connection routinely make worse design choices to stay inside the meter. Teams with no meter make the choice the design calls for.

Kestrel Payroll had the distorted version. Their partner server was licensed per instance, so twelve clients of very different sensitivity shared one host. The isolation the security team wanted cost a purchase order each time it was raised, which is to say it was raised once. When the Linux side moved to OpenSSH, each sensitive client got its own jailed instance in an afternoon. Each instance was built from the nine lines above and a loop. The security team's only complaint was that it had taken three years to ask.

The other half of no-meter freedom is no renewal risk. There is no annual moment when someone in finance asks whether the transfer server is still needed and the answer decides whether partners can connect next month. There is no true-up audit and no letter asking you to prove installation counts. The tool exists as long as you are willing to run it.

Community Depth: More People Have Solved Your Problem Than Any Vendor Employs

Community support gets caricatured as "post a question and hope." For a tool as widely used as OpenSSH, rsync, or curl, the reality is different. Virtually every error message you will ever see has been seen, searched, explained, and fixed by someone before you. The manual pages are precise. And for the deep cases, the people who wrote the code participate in public.

The community also includes an actor most people forget to count: your operating system vendor. Distributions maintain open transfer tools as part of the system. Security fixes arrive through the package updates you already apply. They are tested against the rest of the platform and arrive on a cadence you already monitor. The mechanics are in update and patch strategy. That is a support arrangement many commercial products cannot match, and a paid distribution subscription adds a phone number.

Community support has a real ceiling, and the support realities article is honest about it. Nobody is obligated to answer, and the two a.m. problem is yours. But the floor is far higher than the caricature suggests, and the floor is where most problems live.

Remember: the strongest form of the open source case is not "it's free." It is "it's already installed, already patched by the operating system, already understood by everyone we would hire. And it's configured in nine lines we can put under version control." When all of that is true, adding a product is adding surface, cost, and a second thing to learn.

Freedom From Lock-in: Standard Protocols, Text Configs, Your Files in Your Filesystem

Lock-in is the accumulated cost of leaving a tool. Open source transfer tools keep that cost close to zero by design rather than by promise.

  • Configuration is plain text. It lives in version control, it diffs, it can be reviewed in a pull request and regenerated by a configuration-management tool. There is no proprietary database of settings to export.
  • Credentials are in standard formats. SSH keys are the same files everywhere (see SSH keys explained). A partner's public key moves to a new server by copying it. Host keys carry across so partners see no fingerprint warning.
  • Files are files. A partner's inbox is a directory. Backups, retention, scanning, and hand-off downstream are ordinary filesystem operations, not features you need the product to have.
  • Logs go to the system log, so whatever collector you already run picks them up. There is no proprietary log store to integrate with.
  • The protocol is the standard. Nothing about your partners' setup depends on the server being OpenSSH. Swap it for anything that speaks SFTP and they never know.

The practical consequence is that migration, the subject of our platform migration mechanics series, shrinks from a project to a copy. Even if you eventually buy a commercial server, starting on open source means you arrive with portable keys and portable directory layouts. You also arrive with partners who were only ever promised a protocol. Promise partners a protocol. Never a product, including ours.

Composability: It Plays With Everything Else on the Box

Composability is the property Linux administrators value most and explain worst, so here is a concrete version. Open source transfer tools are designed as pieces. The SFTP server authenticates through the system's own account and key machinery. rsync rides on SSH and inherits its authentication for free. A scheduled job is a cron entry or a service-manager timer. A watch folder is a filesystem notification hook. A post-processing step is any program on the machine. Because every piece speaks the operating system's conventions, a workflow assembles from parts you already know instead of from features a product had to anticipate.

That is also why the open source case and the case for scripts overlap so much. Our article what scripts do well covers the scripting side. And rsync and delta transfer shows what a single composable tool can do alone. A team fluent in this world can build a reliable, monitored, idempotent pipeline in an afternoon from components with decades of hardening behind each one. That team can understand every line of it. That last sentence is the part no product can sell you.

The Conditions Under Which Open Source Wins Outright

Everything above is a tendency. The checklist below turns it into a decision. Go through it honestly for the specific need in front of you, one server, one flow, and count the boxes. The logging line points at evidence auditors accept.

WHEN OPEN SOURCE TRANSFER TOOLING WINS OUTRIGHT — CHECKLIST

PLATFORM
[ ] The host is Linux, BSD, or another system where OpenSSH is native
[ ] Accounts can live in the OS, a directory the OS already trusts, or
    be created by automation (no manual per-partner GUI work expected)

PROTOCOLS
[ ] SFTP (plus scp/rsync where useful) satisfies every partner and job
[ ] No requirement to serve FTPS, HTTPS uploads, or legacy FTP from
    the same address

TEAM
[ ] The people on call are fluent with the shell, config files, and
    raw logs — today, not after training
[ ] At least two of them can explain the current setup unprompted
[ ] A named owner exists for patching and configuration

OPERATIONS
[ ] Patching arrives through the OS update channel you already run
[ ] Logs are collected centrally and the evidence auditors ask for
    can be produced from them (see the logging series)
[ ] Monitoring already covers the host; the transfer service is one
    more thing it watches, not a new system

ADMINISTRATION
[ ] Nobody outside the infrastructure team needs to create accounts,
    reset credentials, or read transfer history through a screen
[ ] Reports are not required in a form the business must read directly

SCORING
 All boxes:       buying a server here adds cost and surface. Don't.
 Most boxes:      stay open source; fill the gaps with scripts.
 Half or fewer:   the gaps are the product. Read the rest of the series.

Two lines on that list do most of the deciding: the team's fluency and the protocol requirement. If the on-call engineers are at home in sshd_config and every partner speaks SFTP, the open source answer is not merely acceptable. It is the correct engineering answer, and a purchase would need a justification the checklist did not surface.

Where the Case Is Honestly Thinner, and the Version to Tell Your Manager

An argument that admits no weakness is advertising, so here is where the case gets thinner, stated without exaggeration.

The first is platform. On Windows, OpenSSH is a port rather than a native citizen. It works well for SSH and SFTP. But its integration with Windows accounts, the event log, the service model, and Active Directory is thinner than on Linux. And administration is a text file on a platform that expects consoles. The second is breadth. When one address must serve SFTP, FTPS, and browser-based HTTPS uploads, open source means three separate servers to install, secure, and log. A commercial product bundles them. The third is people: help-desk account administration, dashboards for business owners, and audit reports in a form auditors accept are the polish volunteers rarely write. The commercial example we know best, Sysax Multi Server, exists for precisely those three situations. It is a Windows service that serves FTP, FTPS, SFTP, and HTTPS from one place. It authenticates against Windows or Active Directory as well as public keys, and logs to a file or a database. On a Linux host already running OpenSSH for SFTP-only partners, we would not tell you to buy it. We would think less of a vendor who did.

None of these thin spots is a defect in open source. They are the places where a different optimization, packaging for a buyer's whole problem as the opening article describes, happens to fit better. Most estates end up with both, and the mixing article shows what that looks like when done deliberately.

Gotcha: the failure mode of the open source case is not choosing it. It is choosing it and then not owning it. An SFTP server with no named owner stops getting its configuration reviewed, its keys rotated, and its patches applied. The transparency that made it excellent makes the neglect visible to the next auditor. Tick the ownership box or do not tick any of them.

The version to tell your manager: the transfer server you already run is the most deployed, most scrutinized, most interoperable one in existence. And it is open source. Its configuration is plain text. Its patches arrive with the operating system. Its clients are on every machine and known to everyone you would hire. Leaving it costs a copy operation. Where the host is Linux, the protocol is SFTP, and the team is fluent, that is the whole answer. Buy nothing. If the manager wants it on paper, the one-page business case has a column for exactly this outcome. And when a vendor cannot say what their product does that sshd doesn't, fold your arms.

Where the host is Windows, the protocols are several, or the administrators are not the infrastructure team, the case gets thinner. The rest of the series takes over. The article the hidden costs on both sides counts the hours the open source route really takes alongside the license growth the commercial route really brings. And support realities judges community support against a contract without flattering either.

Frequently Asked Questions

Is the SFTP subsystem in OpenSSH really a proper transfer server?
Yes. It supports per-user jails, key and password authentication, logging, and fine-grained restrictions through the Match block. It is what most of the world's SFTP partners test against. What it lacks is a graphical console, multi-protocol support from one process, and built-in reports. Those are the gaps a commercial product fills.
Is open source safe enough for a partner-facing production server?
OpenSSH guards remote login on a large share of the servers on the internet, so it is as battle-tested as software gets. Safety depends on how you configure it (SFTP-only, keys, jails) and how promptly you apply the patches your distribution ships, not on whether money changed hands.
Do we need a support contract to run OpenSSH in production?
Most organizations do not buy one specifically for it; the documentation, community, and distribution update channel cover the common cases. If your policy requires a contract for anything in production, paid operating-system subscriptions typically include the SSH server in their support scope.
Can we run the OpenSSH server on Windows instead of buying a product?
You can; it is an optional Windows feature and works for SSH and SFTP. Expect a thinner fit with Windows accounts, the event log, and Active Directory than on Linux. Expect text-file administration on a platform where most tools use consoles. For SFTP-only needs and a fluent team it is reasonable. Multi-protocol or help-desk-administered servers are where commercial products earn their place.
Which open source clients should we standardize on?
For scripts and administrators, the OpenSSH sftp and scp commands plus rsync and curl cover nearly everything. For non-technical users, FileZilla and WinSCP are the usual graphical choices on Windows. Pick one of each and distribute preconfigured profiles.

From the Sysax team: we build secure file transfer software for Windows. Sysax Multi Server is an FTP, FTPS, SFTP, and HTTPS server. Sysax FTP Automation handles scheduled, scripted transfers. Free trials are on the download page.