/usr/lib/ssh/sftp-server [-f log_facility] [-l log_level]
sftp-server 实现了 IETF draft-ietf-secsh-filexfer 中定义的 SSH 文件传输协议的服务器端。
sftp-server 是 sshd(1M) 的子系统,不能直接运行。sftp-server 的命令行标志应在 Subsystem 声明中指定。有关更多信息,请参见 sshd_config(4)。
要启用 sshd 的 sftp-server 子系统,请将以下命令行添加到 /etc/ssh/sshd_config 中:
Subsystem sftp /usr/lib/ssh/sftp-server
要在 chroot 配置中运行 sftp-server,应使用 internal-sftp 而非 /usr/lib/ssh/sftp-server。否则,chroot 目录必须包含支持用户会话所必需的文件和目录。有关 sshd 和 sftp-server 如何与 chroot(2) 结合使用的详细信息,请参见 sshd_config(4) 中的 ChrootDirectory 和 Subsystem 选项。
有关该文件的格式和内容的说明,请参见 sshd_config(4)。
sftp-server 使用的协议与 in.ftpd 提供的 FTP 协议 (RFC 959) 之间没有关系。
要使日志记录正常运行,sftp-server 必须能够访问 /dev/log。因此,要在 chroot 配置中使用 sftp-server,需要 syslogd(1M) 在 chroot 目录内建立一个日志记录套接字。
下面列出了有效的选项。如上所述,这些选项(如果使用)应在 sshd_config 的 Subsystem 声明中指定。
指定记录来自 sftp-server 的消息时使用的工具代码。可能值包括:DAEMON、USER、AUTH、LOCAL0、LOCAL1、LOCAL2、LOCAL3、LOCAL4、LOCAL5、LOCAL6 和 LOCAL7。缺省值为 AUTH。
指定 sftp-server 将记录哪些消息。可能值包括:QUIET、FATAL、ERROR、INFO、VERBOSE、DEBUG、DEBUG1、DEBUG2 和 DEBUG3。INFO 和 VERBOSE 记录 sftp-server 代表客户机执行的事务。DEBUG 和 DEBUG1 是等效的。DEBUG2 和 DEBUG3 均指定较高级别的调试输出。缺省值为 ERROR。
设置要应用于新建的文件和目录的显式 umask(2),而不使用用户的缺省掩码。
将返回以下退出值:
成功完成。
出现错误。
服务器端二进制文件。
有关下列属性的说明,请参见 attributes(5):
|
sftp(1)、ssh(1)、ssh-add(1)、ssh-keygen(1)、sshd(1M)、syslogd(1M)、chroot(2)、umask(2)、sshd_config(4)、attributes(5)