Linux系统详细步骤:创建SFTP用户并权限限制
需积分: 1 78 浏览量
更新于2024-08-03
1
收藏 341KB DOCX 举报
在Linux系统中,创建安全的SFTP用户并实施严格的权限控制是一项重要的运维任务。本文将详细介绍如何通过一步步操作来完成这个过程,确保只有授权的用户能在指定目录下进行SFTP访问,并且限制其他SSH登录方式。
1. 创建SFTP用户组:
首先,使用`groupadd sftps`命令创建一个名为`sftps`的用户组,用于存放所有SFTP相关的用户。这个用户组的目的是将权限统一管理。
2. 配置chroot目录:
为了限制用户活动范围,创建一个专用的chroot(受限根)目录,如`/chroot`。使用`mkdir`创建目录,然后通过`chown`和`chmod`命令分别设置所有者和权限,确保目录的安全性。如果使用root用户创建,`chown root:root`这一步可以省略。
3. 创建SFTP新用户:
使用`useradd -d /chroot -g sftps -b /chroot -s /bin/false -m msftp`命令创建新的SFTP用户`msftp`。这里的参数含义如下:
- `-d /chroot`:指定用户家目录为chroot目录。
- `-g sftps`:将用户加入到sftps组。
- `-b /chroot`:设置用户的初始目录为chroot根目录。
- `-s /bin/false`:设置用户登录shell为无操作,仅允许通过SFTP访问。
- `-m`:自动创建用户主目录。
4. 设置用户权限:
为新用户设置初始密码,例如`passwd msftp`,然后使用`chage`命令禁止密码过期(`-E -1`)和设置密码永不过期(`-M 99999`)。接着,为用户及其家目录设置合适的权限:
- 创建必要的子目录,如`msgpath`和`backup`。
- 使用`chown`设置目录的所有者和权限,确保webapp组对webapp相关的目录有读写权限,而备份目录保持私密性。
5. 配置sshd_config文件:
打开`/etc/ssh/sshd_config`文件,找到大约第132行,修改`Subsystem`行,将其设置为`Subsystem sftp internal-sftp`,指示sshd使用内置的SFTP服务器。接下来,在`Match`部分,添加`Match Groups sftps`和`Match User MSFTP`,以便针对sftps组或特定用户应用配置规则,如chroot限制。
6. 重启sshd服务:
更改配置后,必须重启sshd服务,使新的配置生效,可以使用`systemctl restart sshd`命令。
7. 测试SFTP:
最后,尝试使用新创建的SFTP用户连接,确保他们只能在指定的chroot目录下访问,且无法通过SSH登录。
通过以上步骤,你已经成功地在Linux系统中创建了一个受控的SFTP用户环境,为服务器资源提供了额外的安全防护。务必定期检查和更新这些设置,以确保系统的安全性。
2021-01-20 上传
2021-01-10 上传
2023-08-12 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
胖玻璃球就一个
- 粉丝: 67
- 资源: 14
最新资源
- Python中快速友好的MessagePack序列化库msgspec
- 大学生社团管理系统设计与实现
- 基于Netbeans和JavaFX的宿舍管理系统开发与实践
- NodeJS打造Discord机器人:kazzcord功能全解析
- 小学教学与管理一体化:校务管理系统v***
- AppDeploy neXtGen:无需代理的Windows AD集成软件自动分发
- 基于SSM和JSP技术的网上商城系统开发
- 探索ANOIRA16的GitHub托管测试网站之路
- 语音性别识别:机器学习模型的精确度提升策略
- 利用MATLAB代码让古董486电脑焕发新生
- Erlang VM上的分布式生命游戏实现与Elixir设计
- 一键下载管理 - Go to Downloads-crx插件
- Java SSM框架开发的客户关系管理系统
- 使用SQL数据库和Django开发应用程序指南
- Spring Security实战指南:详细示例与应用
- Quarkus项目测试展示柜:Cucumber与FitNesse实践