1.创建一个组 groupadd 组名
groupadd sftp
2.组下创建一个用户 useradd -g 组名 -s /bin/false 用户名
useradd -g sftp -s /bin/false sftpuser
3.给上述步骤创建的用户设置密码 passwd 用户名
passwd sftpuser
然后按照 提示输入密码 ,输入两遍。组及组名创建完成。
4.修改配置文件
vim /etc/ssh/sshd_config 打开配置文件,找到如下行 ,并注释掉
#Subsystem sftp /usr/libexec/openssh/sftp-server #注释掉该行
添加如下行
Subsystem sftp internal-sftp #使用系统自带的internal-sftp
Match User sftpuser #匹配用户名
ChrootDirectory /datas/www #匹配用户的根目录,限制用户活动范围
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
保存退出。
5.设置目录权限
chown -R root:root /datas/www
chmod 755 /datas/www
6.创建sftp用户登陆后上传目录,并授权
mkdir /datas/www/upload
chown -R sftpuser:sftp /datas/www/upload/
chmod 755 /datas/www/upload/
7.重启sshd服务
service sshd restart
8.关闭SElinux
vim /etc/sysconfig/selinux
#找到如下这行
SELINUX=enforcing
#修改为
SELINUX=disabled
保存退出。
9.重启Linux系统
10.登录sshd服务
sftp sftpuser@127.0.0.1
出现下图表明搭建成功
或者用工具测试: