sftp协议的服务器端程序
sftp-server命令 是一个"SFTP"协议的服务器端程序,它使用加密的方式进行文件传输。它是OpenSSH套件的一部分,通常在后台由sshd守护进程调用,作为SFTP子系统的后端实现。
sftp-server提供了比传统FTP更安全的文件传输方式,所有通信数据均经过SSH加密通道传输,包括认证信息和文件内容。
/usr/lib/openssh/sftp-server [选项]
-d 调试模式,将调试信息输出到系统日志
-f facility 指定syslog的设施类型(如DAEMON、USER等)
-l log_level 指定日志级别(QUIET、FATAL、ERROR、INFO、VERBOSE、DEBUG、DEBUG1、DEBUG2、DEBUG3)
-P pid_file 将进程PID写入指定文件
-t version SFTP协议版本(2-6)
-u umask 设置文件创建的umask值
sftp-server通常不需要手动直接调用,而是由sshd通过SFTP子系统自动启动。用户可以通过sftp客户端命令连接到服务器,服务端会自动加载sftp-server。
# 配置sshd以使用sftp-server
# 在 /etc/ssh/sshd_config 中添加或修改:
Subsystem sftp /usr/lib/openssh/sftp-server
# 使用sftp客户端连接远程服务器
sftp user@remote-host
# 通过sftp上传文件
sftp> put localfile.txt
# 通过sftp下载文件
sftp> get remotefile.txt
# 查看sftp-server的位置
which sftp-server
# 或
whereis sftp-server