好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

sftp配置多用户权限 - Linux操作系统:Ubuntu_Centos

sftp配置多用户权限

 

工作需要,用户上传文件到目录下,用ftp不太安全,选择sftp。让用户在自己的home目录下活动,不能ssh到机器进行操作。

 

下面开始干活。 查看ssh版本 ssh -V,我的 系统 是CentOS6.4 ssh版本是5.3(大于4.8)的没有问题。

 

0, 创建用户目录root权限下创建用户和属组都是root

   mkdir  -p /opt/sftp/dir1/{upload,public}

 

1,创建 groupadd sftp 

 

2. 创建 user -s /sbin/nologin  -G sftp davis

 

3, 创建 davis 密码

 

   passwd davis or echo davis:123456|chpasswd

 

4, 修改sshd_config文件

   #Subsystem      sftp    /usr/libexec/openssh/sftp-server(注释掉)

添加下面行

Subsystem       sftp internal-sftp

Match Group  sftp

        ForceCommand    internal-sftp   

        X11Forwarding no

        AllowTcpForwarding no

重启sshd /etc/init.d/sshd restart

 

5, 给目录附属权限

     chown davis:sftp /opt/sftp/dir1/upload

   chown davis1:sftp /opt/sftp/dir1/public

   chmod 700  /opt/sftp/dir1/upload

   chmod 700 /opt/sftp/dir1/public

 

6, 将upload 给davis用户

   usermod -d /upload davis

 

7, 测试  ssh davis@localhost  和 sftp davis@localhost or sftp -oPort=2000 davis@localhost(ssh端口更换为2000)

 

sftp登陆davis帐号,对应的是/upload,而davis1 登陆后则对应的是/public  

 

注意:

要实现Chroot功能,目录权限的设置非常重要。否则无法登录,给出的错误提示让人无从下手。

 

目录权限设置

ChrootDirectory设置的目录权限及其所有的上级文件夹权限,属主和属组必须是root;

ChrootDirectory %h 如果选择了这种模式,用户的home目录必须是root:root 权限,否则就会报错。

 

记录一下,以备以后使用,同时也提供给有需要的朋友。

查看更多关于sftp配置多用户权限 - Linux操作系统:Ubuntu_Centos的详细内容...

  阅读:55次