Linux下SFTP用户权限设置条件及实现命令

 更新时间:2013年02月27日 15:24:55   作者:  
SFTP账号是基于SSH账号的,其拥有的权限是比较大的,今天主要教大家如何进行SFTP用户权限设置,感兴趣的你可不要错过了哈,希望本文知识可以帮助到你
众所周知SFTP账号是基于SSH账号的,所以在默认情况下访问服务器的权限是非常大的,今天的教程就是教大家进行SFTP用户权限设置。

必要条件
你的openssh-server版本至少得失4.8p1, 因为配置权限需要版本添加的新配置项ChrootDirectory来完成。
如何查看自己服务器上的ssh版本?大家可以尝试以下命令:
$ ssh -V
具体实施步骤:
1. 我们需要创建一个用户组,专门用于sftp用户
$ groupadd sftpusers
2. 我们创建一个用户test
$ useradd -s /bin/false -G sftpuser test
注意这里我们将test用户的shell设置为/bin/false使他没有登陆shell的权限
3. 编辑 /etc/ssh/sshd_config
找到Subsystem这个配置项,将其修改为
Subsystem sftp internal-sftp
然后再到文件最尾处增加配置设定属于用户组sftpusers的用户都只能访问他们自己的home文件夹
Match Group sftpusers
ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
保存并关闭文件
4. 修改test用户home文件夹的权限,让其属于root用户
chown root ~test
5. 重启sshd服务
$ service sshd restart
6. 测试用户账号
$ ssh test@localhost
连接会被拒绝或者无法登陆
$ sftp tesst@localhost
登陆后你会发现你的账号无法切换到除自己home目录之外的地方的
常见问题:
如果你链接服务器的时候出现下面的提示:
Write failed: Broken pipe
Couldn't read packet: Connection reset by peer
这个问题的原因是ChrootDirectory的权限问题,你设定的目录必须是root用户所有,否则就会出现问题。所以请确保sftp用户根目录的所有人是root, 权限是 750 或者 755。

相关文章

  • apache2.2 支持.net 3.5的设置方法

    apache2.2 支持.net 3.5的设置方法

    一直在为asp.net程序的打包发布头疼,甚至想过把程序装好放到vware里!但为什么一直没有想到apache这位大哥呢?!以至今天才google apache+asp.net。
    2009-10-10
  • Linux下用C获取当前时间

    Linux下用C获取当前时间

    本篇文章主要介绍了Linux获取当前时间的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-01-01
  • Linux文本查找命令find的用法详解

    Linux文本查找命令find的用法详解

    今天小编就为大家分享一篇关于Linux文本查找命令find的用法详解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03
  • 在linux系统下部署selenium爬虫程序介绍

    在linux系统下部署selenium爬虫程序介绍

    大家好,本篇文章主要讲的是在linux系统下部署selenium爬虫程序介绍,感兴趣的同学速来围观哦,记得收藏本篇文章方便下次浏览
    2021-11-11
  • apche 多端口配置及网站指向非apche默认的网站文件夹设置方法

    apche 多端口配置及网站指向非apche默认的网站文件夹设置方法

    apche 多端口配置及网站指向非apche默认的网站文件夹设置,使用apache做服务器的朋友可以参考下。
    2010-04-04
  • apache time_wait连接数太多问题解决方法

    apache time_wait连接数太多问题解决方法

    这篇文章主要介绍了apache time_wait连接数太多问题解决方法,本文使用调整内核参数来解决,需要的朋友可以参考下
    2014-11-11
  • linux 基础命令大全

    linux 基础命令大全

    学过Linux的人都会知道,Linux中的命令的确是非常多,但是玩过Linux的人也从来不会因为Linux的命令如此之多而烦恼,本文介绍了linux 基础命令,有兴趣的可以了解一下。
    2016-10-10
  • Linux命令之mkdir 和 touch详解

    Linux命令之mkdir 和 touch详解

    这篇文章要讲的是两个命令,mkdir 和 touch 命令。前一个命令是操作目录的,后一个命令是操作文件的,文中介绍的非常详细,需要的朋友可以参考下
    2023-06-06
  • 通过案例深入解析linux NFS机制

    通过案例深入解析linux NFS机制

    这篇文章主要介绍了通过案例深入解析linux NFS机制,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-09-09
  • Linux中如何查看已挂载的文件系统类型详解

    Linux中如何查看已挂载的文件系统类型详解

    这篇文章主要给大家介绍了关于在Linux中如何查看已挂载的文件系统类型的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-11-11

最新评论