一,openssh 版本要4.81以上

不是这个版本的话,要升级。

二,我们的客户网站全部放在/home目录下,建立网站目录文件夹并且每个网站文件夹命令为www.a.com www.b.com

三,以2个网站例,首先添加2个普通用户

[root@localhost ~]# useradd -d /www.a.com -s /sbin/nologin -M usera

[root@localhost ~]# passwd usera

解释-d /www.a.com 这里一定是指用户家目录一定是在根目录并且他的名称和/home用户的网站文件夹名一样,这样用户第一次登陆SFTP可以定位到他的网站注目录,-s /sbin/nologin 禁止用户ssh登陆 -M 参数是不会在/根目录创建www.a.com真实文件夹 usera为用户名 passwd usera设置用户密码

[root@localhost ~]# useradd -d /www.b.com -s /sbin/nologin -M userb

[root@localhost ~]# passwd userb

四,配置sshd_config

[root@localhost ~]# vi /etc/ssh/sshd_config

# 将以下行注释,更换成internal-sftp

# Subsystem sftp /usr/libexec/openssh/sftp-server

Subsystem sftp internal-sftp

# 添加以下行

Match User usera,userb

ChrootDirectory /home

AllowTcpForwarding no

ForceCommand internal-sftp

五,配置目录权限

[root@localhost ~]# chown root:root /home

[root@localhost ~]# chmod 0755 /home

目录权限需要注意:

a. 由ChrootDirectory指定的目录开始一直往上到系统根目录为止的目录拥有者都只能是root

b. 由ChrootDirectory指定的目录开始一直往上到系统根目录为止都不可以具有群组写入权限

六,网站目录文件夹权限重点哦

[root@localhost ~]# chmod o-x www.a.com www.b.com

[root@localhost ~]# chown -R usera.apache www.a.com

[root@localhost ~]# chown -R userb.apache www.b.com

drwxrwxrw- 4 usera   apache  4096 Oct 19  2012 www.a.com

drwxrwxrw- 4 userb   apache  4096 Jul  9 02:23 www.b.com

解释下 drwxrwxrw- 776权限 文件目录 用户可读、写、执行,群组可读、执行你再加个写也行,反正一定要有X权限,其他用户 注意这里一定要去掉他所有权限 ---  usera apache 注意哦 所属用户和组一定是该网站的用户组就是提供web服务的组,是apache就写这个是nginx 就写nginx名称不一定是这样,到系统查看一下提供web服务的组是哪个 后面的参数不用解释了吧 对了 usera,和userb一定不要加入到提供web服务的组,就是我们设置的网站文件目录的组 (有点饶)

七,设置www.a.com sgid权限

[root@localhost ~]# chmod g+s -R www.a.com www.b.com

drwxr-s--- 4 usera   apache  4096 Oct 19  2012 www.a.com

drwxr-s--- 4 userb   apache  4096 Oct 19  2012 www.b.com

八,禁止客户修改自身主目录文件权限

为了防止客户修改自身主目录的文件,其他拥有者权限带可读、写、执行,因为客户用FTP客户端软件连接进来他是可以修改自身文件权限,但是不能修改别人的文件权限

比如这样了

drwxrwsrwx 4 usera    apache 4096 Oct 19  2012 www.a.com 即777最高权限

这样的话那么其他用户登陆进来是可以进入他的目录并且可以写入文件和下载,删除等操作

解决方案是利用chattr命令 禁止用户更改该文件夹权限,

[root@localhost ~]# chattr +i  www.a.com  这样就行了,对了即使root用户也无法更改该文件权限了,并且 www.a.com 目录下是无法写入和删除文件

所以我们在执行上一条命令之前最好是在www.a.com目录里面新建一个目录 比如

[root@localhost ~]# mkdir /home/www.a.com/web 这样的话我们可以上传文件到www.a.com目录下的web目录里面。并且把web目录作为网站的根目录

解除锁定文件权限修改方法

[root@localhost ~]# chattr -i

九,成功

这样你用usera或者userb登陆sftp ,以usera为例子,第一次他首先是进入他自己的/home/www.a.com目录,你可以在该目录里面删除、下载、上传、编辑文件等所有操作。你还可以向上翻,可以翻到他的上级目录/home里。那你就可以看到/home里面有www.a.com,www.b.com两个文件夹对没错,你不但看到了自己网站本身目录还看到了userb的网站目录,但是你无法进入到他的目录里面。也无法下载该目录到。更加无法删除,上传、编辑文件。反之,userb用户登陆进去也是跟usera一样的命运,这样后续的添加用户操作亦是如此。

十,配置好了然后重启sshd服务或者加载他的配置

service sshd reload/restart (加载配置/重启服务)

/etc/init.d/sshd reload/restart 上面的命令无法请试用这条命令

十一,其他设置

进入www.a.com目录新建logs和web文件夹用于放至日志和网站文件,另外自己可以一个文本文件用于给用户阅读的相关帮助信息,为了防止

用户删除可以执行chattr +i . 命令

转载于:https://blog.51cto.com/webjin/1271660

sftp取代ftp的之后的权限设置相关推荐

  1. 访问ftp服务器文件夹权限设置,访问ftp服务器文件夹权限设置

    访问ftp服务器文件夹权限设置 内容精选 换一换 如果请求因错误导致未被处理,则会返回一条错误响应.错误响应中包括错误码和具体错误描述.表1列出了错误响应中的常见错误码. 媒体处理服务无存储功能,您需 ...

  2. 服务器ftp文件不能共享文件夹权限,ftp服务器共享文件夹权限设置

    ftp服务器共享文件夹权限设置 内容精选 换一换 已成功登录Java性能分析.待安装分析辅助软件的服务器已开启sshd.Java性能分析优先选用非交互shell(non-interactive she ...

  3. ftp服务器共享不了文件夹权限设置密码,ftp服务器共享文件夹权限设置

    ftp服务器共享文件夹权限设置 内容精选 换一换 Linux x86-64(64位)服务器,常见的有EulerOS.Ubuntu.Debian.CentOS.OpenSUSE等.Windows 7及以 ...

  4. 修改ftp服务器的文件权限设置,ftp服务器修改访问目录权限设置

    ftp服务器修改访问目录权限设置 内容精选 换一换 打开FTP服务器上的文件夹时发生错误,请检查是否有权限访问该文件夹.浏览器设置了FTP防火墙.以设置IE浏览器为例.打开IE浏览器菜单"工 ...

  5. linux ftp 用户及目录权限设置,【linux】FTP添加用户,设置权限和目录

    一.目的,新建一个用户 test2,登录ftp,它只有自己的主目录权限,其他同级和上级目录没有权限 二.ftp安装.配置 yum -y install vsftpd //通过yum来安装vsftpd ...

  6. ftp用户个性化精准权限设置

    以用户名"devicelog"为例,列出配置ftp用户权限的方法 1.ftp添加用户,创建并设置主目录,限定只能用于ftp登录 useradd -d/ftpdata/devicel ...

  7. ftp服务用户访问权限设置

    设置用户有上传权限: #  chown -R ftpqn /home/ftpqn/ # chmod 777 -R /home/ftpqn/

  8. ftp 服务器怎么创建文件夹权限,FTP服务器的权限设置

    在桌面上右击"我的电脑",执行"管理"命令,在"计算机管理"窗口的左窗格中依次展开"系统工具"→"本地用户和组 ...

  9. ftp服务器上传文件权限设置,ftp服务器 上传文件权限设置

    ftp服务器 上传文件权限设置 内容精选 换一换 华为云对象存储服务帮助中心,为用户提供产品简介.价格说明.购买指南.用户指南.API参考.最佳实践.常见问题.视频帮助等技术文档,帮助您快速上手使用对 ...

最新文章

  1. poj2112(floyd+二分+二分图多重匹配)
  2. 记住:用户不是傻*,她是你的老婆大人
  3. 【java读书笔记】ThreadGroup和钩子线程的使用
  4. myqsl cluster error code 2310
  5. sts-bundle的使用_使用WS-Trust / STS采样器扩展JMeter
  6. 阿里云与A站在一起后,悄悄干了件大事
  7. 全国人口净流入城市排名2020_从人口净流入量来看一线城市吸引力的对比分析...
  8. Oracle数据库备份和恢复配置详解
  9. 百度吉利成立的汽车公司名称曝光,百度持股55%
  10. 每日codewars题之判断一个数是否是水仙花数
  11. vue(vue-cli+vue-router)+babel+webpack项目搭建入门(三)
  12. 聊聊阿里社招面试,谈谈“野生”Java程序员学习的道路
  13. Opengl ES系列学习--点亮世界
  14. 错误: 找不到符号 符号: 方法 crossFade() 位置: 类 RequestBuilderDrawable
  15. JPEG 原理分析及 JPEG 解码器的调试
  16. AlphaGo Zero 初探
  17. 【二次分配问题】基于遗传算法 (GA)、粒子群优化 (PSO) 和萤火虫算法 (FA) 求解二次分配( QAP)问题(MATLAB 实现)
  18. add as library是什么?有什么用?如何打开?
  19. 用python画皮卡丘的代码-用python画一只可爱的皮卡丘
  20. 最后1天,包邮送50豆瓣高分Python 好书

热门文章

  1. python 二维list取列
  2. keepalived lvs
  3. UML类关系(依赖,关联,聚合,组合,泛化,实现)
  4. 速查笔记(Linux Shell编程上)
  5. 机房空调制冷机柜起到了什么作用?
  6. Android注解使用之Dagger2实现项目依赖关系解耦
  7. 同步、异步;阻塞、非阻塞
  8. 性能计数器自动收集-logman
  9. RouterOS DNS劫持 -- A记录
  10. struts2之单个文件上传