Sftp只允许用户访问指定的目录
来源:互联网 发布:linux修改ip配置文件 编辑:程序博客网 时间:2024/05/21 08:09
在一些生产环境中,有时,用户需要传数据到服务器,但是配置ftp服务比较麻烦,此时,我们可以为用户创建sftp账户,让用户使用sftp来上传下载所需的数据。Sftp账号即为系统账号,将账户密码给用户,用户除了能登录sftp上传下载数据外,还可以访问系统中的其他目录,由此,给我们的系统带来了安全隐患,再次,我们需要配置用户只能通过sftp登录系统下载上传所需的数据。
1、创建sftp用户(此处,我们以账号dayi123为例进行配置)
~]# useradd dayi123 ~]# echo dayi123 | passwd --stdin dayi123
2、设置sftp的账户权限
设置sftp的账号权限需要通过修改ssh配置文件进行,ssh配置文件修改内容如下:
# Subsystem sftp /usr/libexec/openssh/sftp-server #注释掉此行并添加一下行
Subsystem sftp internal-sftp
Match User dayi123 #此处设置控制的用户,也可以设置为组
ChrootDirectory /home/dayi123 #允许用户访问的目录,此处我们设置为用户家目录
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp
配置完成后需要重启服务:
/etc/init.d/sshd restart
此处配置完我们用另一台机器测试登录,会出现错误,使用win系统sftp客户端同样也不能正常登陆
[root@server2 ~]# sftp dayi123@10.0.0.13
Connecting to 10.0.0.13...
dayi123@10.0.0.13's password:
Write failed: Broken pipe
Couldn't read packet: Connection reset by peer
这是由于没有配置目录的正确权限,我们需要设置用户访问的目录的权限
3、设置允许用户访问目录的权限
Sftp用户访问目录需要设置所有者和所属组的权限均为root,并设置目录的权限为755,但此目录下的文件及目录的权限我们可根据自己的需求任意设置。
~]# chown root:root /home/dayi123/
~]# chmod 755 /home/dayi123/
~]# ll /home/
total 4
drwxr-xr-x 2 root root 4096 Sep 8 17:54 dayi123
~]# usermod dayi123 -s /sbin/nologin #设置该sftp账号不允许登录
~]# /etc/init.d/sshd reload
至此,我们的sftp配置已经完成,
4、测试sftp
使用linux测试:
~]# sftp dayi123@10.0.0.13
Connecting to 10.0.0.13...
dayi123@10.0.0.13's password:
sftp> pwd
Remote working directory: /
sftp> cd ../
sftp> pwd
Remote working directory: /
使用windows客户端winscp测试:
登录后如下图二所示,登录后的目录定位到了指定的目录”/home/dayi123”目录,不能浏览系统的其他目录,也不能切换目录。
图一 登录sftp客户端
图二 登录后图
5、设置用户上传文件权限
经过上面的设置后用户可正常浏览下载目录中的文件,但是用户无法上传文件。即使在/home/dayi123/下简历属主为dayi123的目,用户也无法上传。此时需要在/home/dayi123/下建立属主属组为dayi123的目录,并给/home/dayi123目录设置acl权限即可。
]# mkdir /home/dayi123/test
]# chown dayi123:dayi123 /home/dayi123/test
]# setfacl -m u:dayi123:rwx /home/dayi123
]# getfacl /home/dayi123/
getfacl: Removing leading '/' from absolute path names
# file: home/dayi123/
# owner: root
# group: root
user::rwx
user:dayi123:rwx
group::r-x
mask::rwx
other::r-x
- Sftp只允许用户访问指定的目录
- 创建sftp用户 只允许访问指定目录 操作命令
- 如何创建一个只允许使用sftp登录且只能访问特定目录的账号
- ssh只允许指定的用户登陆
- Apache中限制某些IP访问某个网页及配置某一目录只允许访问指定后缀的文件
- sftp只许登录指定目录
- ssh安全只允许用户从指定的IP登陆
- panabit怎么设置只允许访问指定的https网站?
- SFTP 限定登录用户在指定目录
- 只允许指定ip访问sql
- nginx 只允许指定IP访问
- 网页只允许中国用户访问
- 只允许指定的ip访问本机的指定端口22:
- iptables只允许指定ip访问本机的指定端口
- iptables只允许指定ip访问本机的指定端口
- iptables只允许指定ip访问本机的指定端口
- iptables只允许指定ip访问本机的指定端口
- 配置redis外网可访问,并只允许指定的ip可访问redis
- Faster-RCNN_TF代码解读17:anchor_target_layer_tf.py
- Java数据结构与算法解析(六)——AVL树
- WPF深入浅出之我见
- java中继承的初始化顺序
- oracle11g 监听日志过大处理
- Sftp只允许用户访问指定的目录
- POJ 2559 Largest Rectangle in a Histogram(单调栈)
- iOS之《Effective Objective-C 2.0》读书笔记(48)
- Spark 集群搭建从零开始之2 Spark单机伪分布式安装与配置
- phpcmsv9调用友情链接
- android GPS API
- [tensorflow]tensorflow ConfigProto
- 使用 jquery 获取一组或者单个 checkbox 的选中状态的值
- NAT详解