1. 修改ssh配置ssh
# override default of no subsystems #Subsystem sftp /usr/libexec/openssh/sftp-server # 注释这一行 Subsystem sftp internal-sftp #ForceCommand internal-sftp AllowTcpForwarding no X11Forwarding no Match Group sftp ChrootDirectory /home/%u Match User ftpclient ChrootDirectory /home/sftp/ftpclient
2. 新建sftp组ide
# groupadd sftp
3. 新建ftpclient用户code
useradd -d /home/sftp/ftpclient -g sftp ftpclient
4. 目录权限设置server
目录权限设置上要遵循2点:class
a. ChrootDirectory设置的目录权限及其全部的上级文件夹权限,属主和属组必须是root;cli
b. ChrootDirectory设置的目录权限及其全部的上级文件夹权限,只有属主能拥有写权限,也就是说权限最大设置只能是755。ftp
# chown root:sftp /home/sftp/ftpclient #修改普通用户的根目录属组 # chmod 755 /home/sftp/ftpclient #修改普通用户的根目录权限 # chown root:root /home/sftp/ #修改组的根目录属组 # chmod 755 /home/sftp/
c. 设置可写的权限配置
# mkdir /home/sftp/ftpclient/share # chown ftpclient:sftp /home/sftp/ftpclient/share # chmod 755 /home/sftp/ftpclient/share