Linux 限制SFTP用户只能访问某个目录
来源:互联网 发布:网络会员制营销 通过 编辑:程序博客网 时间:2024/06/06 01:50
1. 新建用户并设置密码
>
useradd
suser
>
passwd
suser
//
输入密码
2. 设置sshd配置文件
>
cd
/etc/ssh/
>
cp
sshd_config sshd_config.back
//
备份
>
vi
sshd_config
//
注释该行 不注释的话会报错
#Subsystem sftp /usr/libexec/openssh/sftp-server
Subsystem
sftp
internal-
sftp
Match User suser
ChrootDirectory
/var/opt/sftp
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-
sftp
3. 重启sshd服务
> service sshd restart
其实我到这一步,已经成功实现了
Linux 限制SFTP用户只能访问某个目录,我的需求是只允许test用户访问mnt这个目录。
4. 创建目录并设置权限
>
mkdir
/var/opt/sftp
>
chown
-R root:suser
/var/opt/sftp
>
chmod
-R 750
/var/opt/sftp
至关重要的是:
ChrootDirectory设置的目录权限及其所有的上级文件夹权限,属主和属组必须是root;
ChrootDirectory设置的目录权限及其所有的上级文件夹权限,只有属主能拥有写权限,也就是说权限最大设置只能是755。
注意:由于权限是755,导致非root用户都无法在目录中写入文件,所以需要在ChrootDirectory指定的目录下建立子目录,重新设置属主和权限。
如:
>
chown
suser:suser
/var/opt/sftp/testdir
>
chmod
-R 755
/var/opt/sftp/testdir
5. 测试一下
>
sftp
-oPort=22 sftpuser@192.168.11.180
常见问题:
1. 登陆时报错:Write failed: Broken pipe, Couldn't read packet: Connection reset by peer
原因:权限的问题,必须设置目录为属root用户,属sftp用户组。权限为750
2. 重启sshd时报错:Starting sshd: /etc/ssh/sshd_config line 141: Subsystem 'sftp' already defined.
原因:忘记把Subsystem注释,导致/etc/ssh/sshd_config同时存在有两个Subsystem节点
- Linux 限制SFTP用户只能访问某个目录
- Linux 限制SFTP用户只能访问某个目录
- Linux创建用户只能访问某个目录
- Linux SSH Sftp 限制用户访问权限
- sftp 限制访问目录
- centos下配置sftp且限制用户访问目录
- Linux 创建sftp用户并限制目录权限
- VSFTP限制某用户只能访问自己的目录
- Sftp服务器搭建和限制用户目录
- Sftp服务器搭建和限制用户目录
- 限制用户只能执行某个存储过程
- linux sftp搭建过程(指定用户只能浏览指定目录,不能浏览上一级)
- mysql限制用户只能访问指定数据库
- linux 创建用户并限制其访问目录
- Linux 阿里云 AliyunOS 系统 限制 用户 访问目录
- Linux监狱限制SSH用户访问指定目录(一)
- apache2限制外部IP访问某个目录
- linux:sftp用户目录权限配置
- (二十五)基础系列 AJAX、JQuery
- ONVIF协议网络摄像机(IPC)客户端程序开发(13):图像抓拍
- 组合模式
- Java web项目如何获取某个文件夹下面的文件路径 绝对路径 ?
- springboot(十四):springboot整合shiro-登录认证和权限管理
- Linux 限制SFTP用户只能访问某个目录
- 一个简单C++语言状态机实现
- install tensorflow 遇到的问题
- hover 选择器
- storm concepts
- 调整 Windows VM 的大小
- 《kubernetes-1.8.0》12-addon-ingress-nginx
- 在Java中return null 是否安全【转】
- 缓存雪崩,缓存穿透解决方案