Linux "sftp-server" Command Line Options and Examples
SFTP server subsystem

sftp-server is a program that speaks the server side of SFTP protocol to stdout and expects client requests from stdin. sftp-server is not intended to be called directly, but from sshd(8) using the Subsystem option. Command-line flags to sftp-server should be specified in the Subsystem declaration.


Usage:

sftp-server [-ehR] [-d start_directory] [-f log_facility] [-l log_level] [-P blacklisted_requests]
         [-p whitelisted_requests] [-u umask]
   sftp-server -Q protocol_feature






Command Line Options:

-d
specifies an alternate starting directory for users. The pathname may contain the following tokens thatare expanded at runtime: %% is replaced by a literal '%', %d is replaced by the home directory of theuser being authenticated, and %u is replaced by the username of that user. The default is to use theuser's home directory. This option is useful in conjunction with the sshd_config(5) ChrootDirectoryoption.
sftp-server -d ...
-e
Causes sftp-server to print logging information to stderr instead of syslog for debugging.
sftp-server -e ...
-f
Specifies the facility code that is used when logging messages from sftp-server. The possible valuesare: DAEMON, USER, AUTH, LOCAL0, LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5, LOCAL6, LOCAL7. The default isAUTH.
sftp-server -f ...
-h
Displays sftp-server usage information.
sftp-server -h ...
-l
Specifies which messages will be logged by sftp-server. The possible values are: QUIET, FATAL, ERROR,INFO, VERBOSE, DEBUG, DEBUG1, DEBUG2, and DEBUG3. INFO and VERBOSE log transactions that sftp-serverperforms on behalf of the client. DEBUG and DEBUG1 are equivalent. DEBUG2 and DEBUG3 each specifyhigher levels of debugging output. The default is ERROR.
sftp-server -l ...
-P
Specify a comma-separated list of SFTP protocol requests that are banned by the server. sftp-serverwill reply to any blacklisted request with a failure. The -Q flag can be used to determine the sup‐ported request types. If both a blacklist and a whitelist are specified, then the blacklist is appliedbefore the whitelist.
sftp-server -P ...
-p
Specify a comma-separated list of SFTP protocol requests that are permitted by the server. All requesttypes that are not on the whitelist will be logged and replied to with a failure message.Care must be taken when using this feature to ensure that requests made implicitly by SFTP clients arepermitted.
sftp-server -p ...
-Q
Query protocol features supported by sftp-server. At present the only feature that may be queried is“requests”, which may be used for black or whitelisting (flags -P and -p respectively).
sftp-server -Q ...
-u
Sets an explicit umask(2) to be applied to newly-created files and directories, instead of the user'sdefault mask.On some systems, sftp-server must be able to access /dev/log for logging to work, and use of sftp-server in achroot configuration therefore requires that syslogd(8) establish a logging socket inside the chroot directory.
sftp-server -u ...