CentOS7 下新建用户并限制用户访问权限指定到特定目录

首先说一下需求:
新建一个用户,并且为了保证系统的安全,指定该用户在特定的目录内进行访问

1. 新建用户组

groupadd idns
mkdir /var/www/html   //我只想让特定用户访问/var/www/html 当然如有过了你就不用创建了

2. 新建用户并将用户添加到分组当中

//别说看不懂 -d宿主目录  -g 分到哪个组
useradd -d /var/www/html -g idns huxiaobai

3. 为 huxiaobai 用户设置密码

passwd huxiaobai

接下来自己去设置密码就行了

//看看有没有设置成功
groups huxiaobai

4. 修改 sshd_config, 使用 chroot 监狱限制 ssh 用户访问指定目录

vim /etc/ssh/sshd_config

在文件的最后加入:

Match group visitors
ChrootDirectory /var/www/html
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp

这一段的意思就是对 idns 分组里面的用户,我们只给他们通过 sftp 访问 /var/www/html 的权限,不同直接通过 ssh 登录服务器
5.subsystem
同时记得把

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

改成

Subsystem sftp internal-sftp

最后把 AddressFamil/inet 注释掉 没有就不用管了
6. 重启 sshd 服务

systemctl restart sshd

7. 配置权限
chmod -R 777 /var/www/html
不然 huxiaobai 无权限访问!
8. 试试吧
huxiaobai 通过 sftp 只能访问到 /var/www/html 目录下 其他的无法看到访问

本作品采用《CC 协议》,转载必须注明作者和本文链接
胡军