CentOS7.6-搭建SFTP服务

1.需求
搭建多账号SFTP,不同的用户只能够查看自己所属的目录
禁止SFTP账号通过SSH连接
SFTP 用户zhangs、lisi,所属目录:/home/sftp/zhangs、/home/sftp/lisi
2.操作步骤
创建目录
mkdir /home/sftp/{zhangs,lisi} -p

创建用户组sftp
groupadd sftp

创建用户zhangs、lisi

useradd -G sftp -d /home/sftp/zhangs -m  -s /sbin/nologin zhangs
useradd -G sftp -d /home/sftp/lisi -m  -s /sbin/nologin lisi
-G sftp :加入sftp用户组
-s /sbin/nologin:禁止用户ssh登录
-d /home/sftp/zhangs:指定用户的根目录 !

修改密码

passwd zhangs
passwd lisi

修改配置文件sshd_config

cp /etc/ssh/sshd_config  /etc/ssh/sshd_config.bak
vim /etc/ssh/sshd_config
#下面这行注释掉#Subsystem sftp /usr/libexec/openssh/sftp-server##后面加入
Subsystem sftp internal-sftp
#注意,以下要 放在 本文件的最后行,否则 root用户无法登陆
Match Group sftp
X11Forwarding no
AllowTcpForwarding no
ChrootDirectory %h
ForceCommand internal-sftp
说明 :
  Match Group sftp 匹配sftp用户组中的用户
  ChrootDirectory %h 只能访问默认的用户目录(自己的目录),例如 /home/sftp/zhangs

重启ssh服务

systemctl restart sshd.service
设置目录权限

chown root:sftp /home/sftp/zhangs/
chown root:sftp /home/sftp/lisi/

chmod 755 /home/sftp/zhangs
chmod 755 /home/sftp/lisi

设置用户可以上传的目录upload

mkdir /home/sftp/zhangs/upload
mkdir /home/sftp/lisi/upload

chown -R zhangs:sftp /home/sftp/zhangs/upload/
chown -R lisi:sftp /home/sftp/lisi/upload/

3.测试连接

测试SFTP功能
#登录sftp
sftp zhangs@192.168.47.111
#进入upload目录
cd upload
#上传文件
put /root/nginx-1.15.12.tar.gz
#查看目录下的文件
ls
#下载文件
get nginx-1.15.12.tar.gz 
posted @ 2022-06-16 12:00  michaelni  阅读(193)  评论(0编辑  收藏  举报