sftp-server(8) on Solnix vs Linux and the BSDs
On Solnix, sftp-server is the OpenSSH sftp-server from pkgs.solnix.openssh, the same program as on Linux and the BSDs. The flags, defaults and synopsis match across all five systems. The only text differences are a missing -P example on Solnix, FreeBSD and NetBSD, and a Solnix log_facility sentence that is missing a program name.
The manual pages
- Solnix: sftp-server(8) from
pkgs.solnix.openssh - Linux: sftp-server(8) openssh-10.5p1
- FreeBSD: sftp-server(8) 15.1-RELEASE
- OpenBSD: sftp-server(8) 8.0
- NetBSD: sftp-server(8) 11.0
What Solnix runs
A default Solnix system runs the OpenSSH sftp-server, published by pkgs.solnix.openssh and part of the base system packages. No other variants are shipped. The page says sftp-server is not meant to be run directly. sshd(8) starts it through the Subsystem option in sshd_config(5).
Differences
| Compared with | Topic | What differs |
|---|---|---|
| all four | same program | The Solnix page has the same synopsis and the same options as the Linux, FreeBSD, OpenBSD and NetBSD pages: -d, -e, -f, -h, -l, -P, -p, -Q, -R and -u. Defaults also match: log facility AUTH, log level ERROR, and the user's home directory as start directory.Source: Solnix sftp-server(8) SYNOPSIS and OPTIONS; Linux, FreeBSD, OpenBSD and NetBSD sftp-server(8) SYNOPSIS and OPTIONS |
| Linux, OpenBSD | -P example | The Linux and OpenBSD pages add a sentence to -P saying -P and -p can disable unwanted operations, for example "copy-data" or "users-groups-by-id" for untrusted clients. The Solnix, FreeBSD and NetBSD -P text does not include it. The flag is documented the same way otherwise.Source: Linux sftp-server(8) -P; OpenBSD sftp-server(8) -P; Solnix sftp-server(8) -P |
| FreeBSD, NetBSD | -P wording matches Solnix | FreeBSD and NetBSD -P text ends at the sentence that the denied list is applied before the allowed list. It matches the Solnix text. Neither page mentions "copy-data" or "users-groups-by-id".Source: FreeBSD sftp-server(8) -P; NetBSD sftp-server(8) -P; Solnix sftp-server(8) -P |
| all four | page text defect | The Solnix page has a missing program name in the -f, -l and -Q descriptions ("messages from .", "logged by .", "supported by ."). The other four pages name sftp-server there. This is a documentation defect and the options behave as described.Source: Solnix sftp-server(8) -f, -l, -Q; Linux sftp-server(8) -f, -l, -Q |
| all four | chroot and logging | All five pages say that on some systems sftp-server needs /dev/log to log, so a chroot setup needs syslogd(8) to create a logging socket inside the chroot directory. The Solnix page does not say whether this applies to Solnix. Source: Solnix sftp-server(8) final paragraph of OPTIONS; Linux, FreeBSD, OpenBSD and NetBSD sftp-server(8) same paragraph |
| all four | SEE ALSO reference author order | The Solnix page lists the SFTP draft authors as S. Lehtinen and T. Ylonen. The other four pages list T. Ylonen and S. Lehtinen. The draft named is the same, draft-ietf-secsh-filexfer-02.txt, October 2001. Source: Solnix sftp-server(8) SEE ALSO; Linux, FreeBSD, OpenBSD and NetBSD sftp-server(8) SEE ALSO |
Standards
- POSIX: sftp-server is not a POSIX.1-2024 utility.
- Solnix: The page cites S. Lehtinen and T. Ylonen, SSH File Transfer Protocol, draft-ietf-secsh-filexfer-02.txt, October 2001, work in progress material. It says sftp-server first appeared in OpenBSD 2.8.
- Linux: Cites the same draft, draft-ietf-secsh-filexfer-02.txt, October 2001, work in progress material. It has no STANDARDS section.
- FreeBSD: Cites the same draft, draft-ietf-secsh-filexfer-02.txt. It has no STANDARDS section.
- OpenBSD: Cites the same draft, draft-ietf-secsh-filexfer-02.txt. It has no STANDARDS section.
- NetBSD: Cites the same draft, draft-ietf-secsh-filexfer-02.txt. It has no STANDARDS section.
Writing portable scripts
- Put sftp-server flags in the sshd_config(5) Subsystem line, not in scripts. The flags are the same on all five systems, but the binary path is not given in these pages, so check the path on each host.
- Run sftp-server
-Qrequests on each host to get the request names supported before writing-Por-plists.
Every difference here is taken from the manual pages linked above: Solnix's published page, Linux (man-pages and the GNU and util-linux manuals), FreeBSD, OpenBSD and NetBSD. Each row names its source. Where a manual is silent, this page is too. Compiled 2026-10-26. Found a mistake? Mail hackers@lists.solnix.io.