SFTP服务器搭建

时间:2022-11-26 13:42:21

Sftp搭建文档

1、  查看openssh的版本

# ssh  -V

Openssh版本必须大于4.8p1。

2、  创建用户并设置登录密码

#groupadd sftp

#useradd –d /data/sftp/mysftp  -g sftp  -s /sbin/false  mysftp

#echo “mysftp123” |passwd –stdin mysftp

3、  配置sshd_config

找到如下这行,用#符号注释掉,大致在文件末尾处。
# Subsystem      sftp  
 /usr/libexec/openssh/sftp-server

# vim /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/mysftp

#chmod 755 /data/sftp/mysftp

5、  建立SFTP用户登入后可写入的目录

照上面设置后,在重启sshd服务后,用户mysftp已经可以登录。但使用chroot指定根目录后,根应该是无法写入的,所以要新建一个目录供mysftp上传文件。这个目录所有者为mysftp,所有组为sftp,所有者有写入权限,而所有组无写入权限。命令如下:

#mkdir /data/sftp/mysftp/upload

#chown mysftp:sftp /data/sftp/mysftp/upload

#chmod 755 /data/sftp/mysftp/upload

6、  修改/etc/selinux/config

#vim /etc/selinux/config

SELINUX=disabled

7、  重启sshd服务

#systemctl  restart
sshd