ubuntu基于openssh实现的sftp服务器

目标:

    给客户分配账号能在特定ip下使用sftp协议连接服务器下载指定文件夹下的所有文件。客户除了下载文件没有其他任何权限。

步骤:

  1.新建用户组

   groupadd sftpGroup #新建了sftpGroup为名字的用户组

  2.新建某个客户的账户

   useradd -g sftpGroup -s /bin/false test #在group sftpGroup 下新建了一个无法使用shell的用户test
   passwd test
   123456


  3.给该用户分配一个用户目录 

   mkdir -p /data/sftp/test #新建目录
   usermod -d /data/sftp/test test #给该用户分配一个用户目录
   cd /data/sftp
   chmod 755 test #test这个用户属于其他用户只有在test下执行加读、执行权限必须这么配
   1-x-执行 2-w-写 4-r-读 


  4.sshd_config配置文件配置sftp服务


    4.1使用internal-sftp实现sftp 
       # Subsystem      sftp    /usr/libexec/openssh/sftp-server
       Subsystem       sftp    internal-sftp
       #openssh默认使用sftp-server实现sftp这里改成了internal-sftp
    4.2其他配置
       Match Group sftpGroup  #限制sftpGroup用户组(1新建的sftpGroup用户组)
       ChrootDirectory /data/sftp/%u #用户允许访问的目录被限制为用户的用户名命名的文件夹
       ForceCommand internal-sftp #强制执行 internal-sftp 不能执行别的命令
       AllowTcpForwarding no #不允许tcp转发
       X11Forwarding no #不允许X11转发
       AllowUsers test@xx.xxx.xxx.xx #允许test用户在xx.xxx.xxx.xx的ip内登陆,多用户空格分开


   5.重启服务


     service sshd restart


   6.参考地址


     https://blog.csdn.net/wc1695040842/article/details/84937722
     https://blog.csdn.net/a351945755/article/details/22661411

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值