1.编辑ssh中的sftp的配置,命令可能是:vi /etc/ssh/sshd_config

在这个文件里最后增加



#限制sftp组的用户使用sftp时在自己的home文件夹下

Match Group sftp

#这里写重写根文件夹成登录用户的根文件夹下

        ChrootDirectory %h

#这行指定使用sftp服务使用系统自带的internal-sftp

        ForceCommand    internal-sftp

2 重新启动ssh服务,命令可能是:service ssh restart,

这里要注意,当前重新启动这个服务的窗体千百万不能关闭,假设配置错误,ssh重新启动失败,你可能就进不去了,就得到机房中弄了,,,

所以,重新启动后,能够使用service ssh status来检查状态,或是再打开一个ssh登录窗体检查一下,重新启动后服务是否能正常执行.

如果我的文件夹是/var/www/a



用户创建



1. 使用adduser --home /var/www/a/ --gid 1001 --shell /bin/false 登录员工名,来添加用户

2. 在/var/www/a/文件夹下创建一个属于此用户的文件夹,如U1000

3. 使用chown -R username.sftp ./U1000 来改变这个文件夹拥有者,也就是U1000拥有者是本用户,组是sftp

4. 使用chmod -R o+wr ./U1000 来改变本用户拥有写入本文件夹的权限

5.使用chown root.root /var/www/a,来改变这个用户的home本身及以上的文件夹,如/var,/var/www,/var/www/a,同一时候让/var/www/a的全部文件夹的组写入权限没有了, chmod -R g-w ./,  

6. sftp登录情况记录在/var/log/auth.log中

7 使用 sftp工具来检測登录情况,假设能登录就说明配置成功,不能登录,请到/var/log/auth.log查看错误情况,通常是提示文件夹的mod或是owner不正确,这时就把这个提示文件夹改成 root.root反正不是当前用户即可了.

8. 创建多个用户来检測/var/ww/a/u1与/var/ww/a/u2之间的用户能否互相写入,能够话,就把u1使用chmod -R g-w ./u1这个方案来去掉组的写入权限,再使用 chmod -R o+w ./u1,这个命令来让拥有者有写入权限,别人仅仅能查看,

这里全部的sftp的组的用户都是设置home 是/var/www/a,由于chroot须要把当前的文件夹设置成非当前用户,也就是须要a文件夹登录用户不写入,而为了能使用就得,在a以下再建立一个文件夹,这样就无形中添加一个没太多作用的文件夹,如user1的home = /var/www/u1,为了使用,u1是root.root全部,然后须要再建立一个文件夹如www在u1下才干使用.

而user2的home=/var/www/u2,建立www在u2以下使用.这种方式尽管能够让user1看不到user2的文件夹,由于chroot时user1根文件夹就是/var/www/u1了.

而为了解决问题,另一个方式就是建立/var/www/a/u1,u2,u3,uxxxyy这种文件夹,再使用ln来设置链接,如 ln -f /var/www/u1 /home/user1/u1,设置/home/user1为root.root的owner,再在u1就chown user1.sftp,这样,就能够达到能够写入,也不会让url路径加一级没用的文件夹,可是这样在管理上感觉不太好,

linux配置sftp用户的chroot步骤(用户的sftp根文件夹)的更多相关文章

  1. Linux 配置 history 命令显示操作时间、用户和登录 IP

    一.在配置文件中(/etc/bashrc 或者 /etc/profile 或者~/.bash_profile 或者 ~/.bashrc)添加如下配置 #vim /etc/bashrc    // 进到 ...

  2. Linux 配置SFTP,配置用户访问权限

    之前我服务器是使用的Windows Server 2003,这段时间由于访问量变大我还是机智的换成Linux了,在搭建FTP的时候看到网上都是推荐vsftpd,不过我不推荐这个家伙,看官且看下文. 我 ...

  3. Linux用户和用户组管理 用户配置和管理的相关文件

    用户信息文件 /etc/passwd 这个文件中保存的就是系统中所有的用户及其对应的用户主要信息. 文件格式 :  第1字段 第2字段 第3字段 第4字段 第5字段 第6字段 第7字段 用户名称 密码 ...

  4. linux云计算集群架构学习笔记:用户管理和root用户密码重置

    RHEL7用户管理 本节所讲内容: 用户和组的相关配置文件 管理用户和组 RHEL7破解root密码 与windows 相比 LINUX中的用户和账号的作用是一样的. 都是基于用户对访问的资源做控制, ...

  5. Linux常用命令学习4---(挂载命令mount umount、用户登陆查看和用户交互命令 w who last lastlog)

    紧接着上一篇Linux的命令行的学习:Linux学习3---(文件的压缩和解压缩命令zip unzip tar.关机和重启命令shutdown reboot……) 1.挂载命令     简介      ...

  6. linux增加用户并赋予权限/用户和用户组操作命令

    ===============ubuntu================================================== 在Ubuntu13.10下创建一个新的用户:Step1: ...

  7. jenkins配置记录(1)--添加用户权限

    前一阵子在线上部署了一套jenkins环境,作为线上代码发布平台使用.部署记录:http://www.cnblogs.com/kevingrace/p/5651427.html 下面重点记录下jenk ...

  8. VisualSVN Server仓库迁移到Linux(包含所有版本, 权限,用户信息)

    公司开发服务器从Windows换成CentOS,所以要把原服务都转移到Linux下,MySQL.SMB的迁移都很顺利,但是SVN的转移却遇到了些问题,花费了三天时间,走了不少弯路,现在总算解决了SVN ...

  9. linux系统学习笔记:无死角理解保存的设置用户ID,设置用户ID位,有效用户ID,实际用户ID

    一.基本概念 实际用户ID(RUID):用于标识一个系统中用户是谁,一般是在登录之后,就被唯一的确定,就是登录的用户的uid. 有效用户ID(EUID):用于系统决定用户对系统资源的权限,也就是说当用 ...

随机推荐

  1. spring下载和安装

    下载和安装Spring请按例如以下步骤进行.   (1)登录网站,下载Spring的最新稳定版本号.最新版本号为spring-framework-4.0.建议下载spring-framework-sp ...

  2. Hibernate 主配置文件详解

    摘要: 版权声明:本文为博主原创文章,如需转载请标注转载地址. 博客地址:http://www.cnblogs.com/caoyc/p/5595870.html 一.主配置文件命名规则 1.默认名称: ...

  3. C# 字符串数组转换为整形数组

    /// <summary> /// 字符串数组转换整形数组 /// </summary> /// <param name="Content">字 ...

  4. C-Scanf连续调用多次并且存在%c的问题

    问题现象: 当程序中存在多个scanf时,针对第一个scanf的输入,一般用户会以空白字符(空格.换行.tab.换页符)等结束.但若后面有一个scanf(“%c”,&ch),则刚才输入的空白字 ...

  5. java基础讲解10-----类的高级特性

    一.final关键字 1.final关键字修饰变量,表示变量不可以被改变,如果想修改,编译器不会接受的. 注意:final关键字定义的变量必须赋值 public  static final 修饰  白 ...

  6. Android之ImageButton控件基础操作

    控件绑定(前台对应控件的id属性要设置为imageButton_light) private ImageButton imageButton_light;//定义一个ImageButton控件对象,名 ...

  7. oracle聚合函数及行专列,pivot rollup cube

    1.原始数据 --方法-: --以单位分组,计算每类特殊情况的合计以及按照单位的小计数 with a as (SELECT b.szfz, case  when tsqk is not null th ...

  8. photoshop 动作 自己定义快捷键 播放选定的动作

    今天在制作一组效果图.要用到动作.而且是同一个动作,便在网上寻找"播放选定的动作"就是那个三角形播放button的快捷键. 预期这样会大大加快制作过程. 首先制作好动作. 然后,在 ...

  9. 关于Go语言daemon启动的方法.

    昨天搞了个文件共享的小程序,遇见了意见蛋疼的事,就是启动之后终端不能关闭,不然程序也会随着关闭. 我的解决方法: nohup ./httpserver & nohup这个命令能够把程序放后台执 ...

  10. 【java设计模式】之 单例(Singleton)模式

    1. 单例模式的定义 单例模式(Singleton Pattern)是一个比較简单的模式.其原始定义例如以下:Ensure a class has only one instance, and pro ...