Linux sftp限制用户访问指定目录

Linux sftp限制用户访问指定目录

一、创建新用户:

[root@controller ~]# useradd test
[root@controller ~]# passwd test
New password:
BAD PASSWORD: The password is a palindrome
Retype new password:
passwd: all authentication tokens updated successfully.

二、修改sshd配置文件:

[root@controller ~]# vi /etc/ssh/sshd_config
#Subsystem sftp /usr/libexec/openssh/sftp-server //注释掉这句,不然报错

添加以下语句

Subsystem sftp internal-sftp
Match User test //设置控制的用户或组
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp
ChrootDirectory /home/sftp //允许用户访问的目录

三、重启ssh服务:

[root@controller ~]# systemctl restart sshd

四、创建目录:

[root@controller ~]# mkdir /home/sftp
[root@controller ~]# chown -R root:test /home/sftp
[root@controller ~]# chmod -R 750 /home/sftp/

五、测试登陆:

[root@controller ~]# sftp test@192.168.31.130
sftp> pwd
Remote wsftp> mkdir 123
Couldn’t create directory: Permission deniedorking directory: /
因为给了750权限所以无法创建目录

在指定目录下新建一个子目录:

[root@controller ~]# mkdir /home/sftp/test
[root@controller ~]# chown test:test /home/sftp/test/
[root@controller ~]# chmod -R 755 /home/sftp/test/
再重新测试下:
[root@controller ~]# sftp test@192.168.31.130
test@192.168.31.130’s password:
Connected to 192.168.31.130.
sftp> cd file/
sftp> mkdir 123
sftp> ls
123
sftp> quit
[root@controller ~]# ls /home/sftp/file/
123

五、注意事项:

sftp用户访问指定目录需要设置用户和组的权限为root,并设置权限为755,但此目录下的文件权限可以自己根据需求设置。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不想敲代码的运维

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值