|
服务搭建
CentOS自带 SSH 服务,直接配置即可
SFTP 配置
1.创建用户组 sftp
2.创建用户
- useradd -g sftp -s /sbin/nologin -d /home/sftp/ftpuser1 ftpuser1
複製代碼
-g 加入到sftp组
-s 禁止登录
-d 指定用户的登入目录
3.设置密码
4.创建用户ftp文件目录
- mkdir /home/sftp/ftpuser1
複製代碼
5.修改文件夹 拥有者
- chown -R ftpuser1:sftp /home/sftp/ftpuser1
複製代碼
6.修改ssh的配置文件
修改sshd_config如下:
注释原来的Subsystem设置
#Subsystem sftp /usr/libexec/openssh/sftp-server
启用internal-sftp
- Subsystem sftp internal-sftp
複製代碼
限制用户SFTP访问的根目录
限制ftpuser1用户的根目录
- Match User ftpuser
- ChrootDirectory /home/sftp
- ForceCommand internal-sftp
複製代碼
7.重启SSH服务
注意事项(坑)
目录的权限设定有两个要点
由ChrootDirectory指定的目录开始一直往上到系统根目录为止的目录拥有者都只能是root
由ChrootDirectory指定的目录开始一直往上到系统根目录为止都不可以具有群组写入权限
修改文件权限
可使用类似一下代码修改目录的访问权限:
- chmod -R 544 /home/sftp/ftpuser1
複製代碼
如果FTP傳輸數率為100MB/s
那SFTP傳輸數率要除以3=33MB/s(4核8緒 CPU下測試)
因為SFTP是加密傳輸,所以會取決於CPU的處理能力
參考文章
https://blog.csdn.net/wo541075754/article/details/79474059
|
|