Linux下设置SFTP用户访问目录权限

一、创建新用户,并且设置目录,禁止shell登录

useradd -m -d /home/wwwroot/licnlt -s /usr/sbin/nologin licnlt

nologin要事先确认位置,通常在/usr/sbin或/sbin下(可在/etc/passwd中查看sshd的nologin配置) 

 

二、设置用户密码

passwd licnlt

 

三、将该用户目录所有者设置成root

chown root:root /home/wwwroot/licnlt/    #目录只能由root所有
chmod 755 /home/wwwroot/licnlt            #目录不可以有群组写入权限

  

 

四、修改/etc/ssh/sshd_config文件

#注释掉这行
#Subsystem      sftp    /usr/libexec/openssh/sftp-server
#添加在配置文件末尾
Subsystem sftp internal-sftp     #指定使用sftp服务使用系统自带的internal-sftp
Match User licnlt                     #匹配用户,如果要匹配多个组,多个组之间用逗号分割
ChrootDirectory /home/wwwroot/licnlt/         #用chroot将指定用户的根目录,chroot的含义

 

五、重启ssh服务

service sshd restart

 

六、用户登录后进入的是/home/wwwroot/licnlt 为用户根目录,根目录是无法写入的,所以先用root在/home/wwwroot/licnlt/下新建www目录,并设置权限777

mkdir /home/wwwroot/licnlt/www

 

修改目录所有者和权限

chown licnlt:licnlt /home/wwwroot/licnlt/www
chmod 777 /home/wwwroot/licnlt/www

 

 

 

 

 

  

 

posted @ 2018-09-07 16:19  LeaveL  阅读(1319)  评论(0编辑  收藏  举报