Debian系统中的SFTP服务器通常是通过OpenSSH软件包提供的。配置文件主要位于/etc/ssh/sshd_config。以下是一些关键配置项的解析:
Port 22:指定SSH服务监听的端口号,默认为22。
Protocol 2:指定使用的SSH协议版本,通常使用版本2。
HostKey /etc/ssh/ssh_host_rsa_key:指定SSH服务的私钥文件路径。
HostKey /etc/ssh/ssh_host_dsa_key:指定SSH服务的DSA密钥文件路径(可选)。
HostKey /etc/ssh/ssh_host_ecdsa_key:指定SSH服务的ECDSA密钥文件路径(可选)。
HostKey /etc/ssh/ssh_host_ed25519_key:指定SSH服务的ED25519密钥文件路径(可选)。
SystemAuthModule pam:指定使用PAM(Pluggable Authentication Modules)进行身份验证。
PasswordAuthentication yes:允许使用密码进行身份验证。如果设置为no,则只允许使用密钥对进行身份验证。
ChallengeResponseAuthentication no:禁用挑战响应身份验证。
UsePAM yes:启用PAM支持。
Subsystem sftp /usr/lib/openssh/sftp-server:指定SFTP子系统的路径。
Match Group sftpusers:针对特定用户组(如sftpusers)应用以下配置。
ChrootDirectory %h:将用户的根目录限制在其主目录中。
ForceCommand internal-sftp:强制执行内部SFTP命令,禁止执行其他SSH命令。
AllowTcpForwarding no:禁止TCP端口转发。
X11Forwarding no:禁止X11转发。
要配置SFTP服务器,请编辑/etc/ssh/sshd_config文件,根据需要修改上述配置项。完成后,重启SSH服务以使更改生效:
sudo systemctl restart ssh
注意:在修改配置文件之前,请确保备份原始文件,以便在出现问题时可以恢复。