CentOS配置sftp服务器
1、查看openssh的版本
ssh -V
版本必须大于4.8p1,低于的这个版本需要升级。
2、创建sftp组
groupadd sftp
2、创建2个sftp用户,用户名为test1和test2,密码为同用户名
mkdir -p /data/sftp/{test1,test2}
useradd -g sftp -s /sbin/nologin -d /data/sftp/test1 test1 //用户名
passwd test1 //密码
3、配置sshd_config
vi /etc/ssh/sshd_config
找到如下这行,用#符号注释掉
#Subsystem sftp /usr/libexec/openssh/sftp-server
在文件最后面添加如下几行内容,然后保存
---------------------------------------------------------
Subsystem sftp internal-sftp
Match Group sftp
ChrootDirectory /data/sftp/%u
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
---------------------------------------------------------
4、设定Chroot目录权限
chown root:sftp /data/sftp/test1
chmod 755 /data/sftp/test1
5、建立SFTP用户登入后可写入的目录
照上面设置后,在重启sshd服务后,用户test1已经可以登录。
但使用chroot指定根目录后,根应该是无法写入的,
所以要新建一个目录供test1上传文件。命令如下:
mkdir /data/sftp/test1/upload1
chown test1:sftp /data/sftp/test1/upload1
chmod 755 /data/sftp/test1/upload1
6、重启sshd服务
service sshd restart
7、验证sftp环境
用test1用户名登录
sftp test1@127.0.0.1
显示 sftp> 则sftp搭建成功
转载于:https://blog.51cto.com/fuvip/2043788