sftp传输实现

1.1 创建用户
groupadd sftp
useradd -s /sbin/nologin -g sftp -M user1
passwd user1
1.2 创建目录
mkdir /sftpdir #目录的最上级所有者必须是root
setfacl -m u:user1:rwx -R /sftpdir #加个acl控制用户
1.3 配置服务
#sftp是依托于ssh服务实现,需要配置ssh参数
vim /etc/ssh/sshd_config
#
#Subsystem sftp /usr/libexec/openssh/sftp-server
Subsystem  sftp  internal-sftp
UseDNS no           #把前面的拿到下面来
#Match Group sftp   #限制的用户组,用不上,注释即可
Match User user1    #sftp用户
ChrootDirectory /sftpdir  #sftp目录,对用户而言是"/"
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
systemctl restart sshd  #重启成功后,通过 winscp 工具连接即可,使用上面创建的用户认证