Centos7搭建sftp服务

目录

创建sftp传输文件位置,添加sftp群组

修改sshd配置

用户目录授权

使用CMD终端进行传输测试


创建sftp传输文件位置,并添加sftp群组


mkdir -p /data/sftp               ##sftp的数据目录

chmod 755 -R /data/sftp           ##给ftp用户进入目录

chown root:root -R /data/sftp     ##需要使用chroot

groupadd sftp                     ##配置sftp群组

useradd -d /data/sftp/test -m -g sftp -s /sbin/nologin test ##创建用户并加入sftp组,指定家目录和不允许正常登录

echo '123456' | passwd --stdin test ##为test用户设置密码123456自行修改

修改sshd的配置

        切记:如果你还想使用ssh连接,那么下面这个配置ForceCommand internal-sftp可以不写,如果你不需要建立远程ssh,那么建议注释。如果后面有ssh需求忘了哪里的问题,可以回来看一下这句。       

修改了进行ssh还是被reject看下面这个配置是否注释了。

修改sshd配置文件:

vi /etc/ssh/sshd_config

 配置文件内容修改如下,每个配置信息都加了相应的注释信息:

#Subsystem  sftp  /usr/libexec/openssh/sftp-server #这行注释掉
GSSAPIAuthentication no #更改为no
UseDNS no #更改为no
X11Forwarding no #更改为no

#直接在文件最后面复制进去-> 添加
Subsystem sftp internal-sftp      ##sftp服务使用ssh服务提供的
ForceCommand internal-sftp        ##如果ssh 登录不了,请注释它
Match Group sftp                  ##匹配sftp组
ChrootDirectory  /data/sftp/%u    ##限制用户在自己家目录

修改完毕后重启sshd服务 切记!切记!切记!

systemctl  restart sshd

对用户目录进行授权

这样更加安全,使得用户只对某个目录进行读写而不污染其他目录

mkdir /data/sftp/test/upload  -p
chown root:root /data/sftp/test
chmod 755 /data/sftp/test
chown test:sftp /data/sftp/test/upload -R  #只允许自己操作upload目录

使用CMD终端进行传输测试

先进入cmd 输入命令连接到sftp服务

sftp 用户名@ip  #用户名替换为你创建的用户的用户名,例如我上面是test

提示你输入密码,正常输入就行了,隐码形式,例如我上面密码是123456,输完回车

连接成功如下:

测试上传:

put 对应文件路径 /upload

测试下载:

get /upload/文件 #执行完毕后你cmd所在目录会拉取到这个文件

如果你也可以看到上面的类似信息,那么恭喜你,已经完成了sftp服务的搭建,可以指定用户对指定目录进行文件的读写操作了。

注意:这里你如果想拉取到制定文件目录下,可以提前cd切换到你想要的的目录。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

那山川

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值