1、创建专用用户组

sudo groupadd sftpgroup  # 创建组用于统一管理SFTP用户[1,6](@ref)

2、​添加用户并限制Shell

sudo useradd -m -d /data/sftpusr/sftpdata01 -G sftpgroup -s /sbin/nologin sftpdata01    # 指定家目录并禁止SSH登录[8](@ref) 
sudo passwd sftpdata01 # 设置用户密码

3、​初始化目录权限

sudo chown root:root /data/sftpusr/            # Chroot主目录必须归属root[3,6](@ref)
sudo chmod 755 /data/sftpusr/ # 权限需为755以保证安全性

4、​修改SSH服务限制

(1)修改sshd_config文件
# 原SFTP配置已注释
#Subsystem sftp  /usr/libexec/openssh/sftp-server
Subsystem sftp internal-sftp

# 其他原有配置...

# 用户sftpdata01的隔离配置
Match User sftpdata01
   ChrootDirectory /data/sftpusr/
   ForceCommand internal-sftp
   AllowTcpForwarding no
   X11Forwarding no
   PermitTTY no

5、​​创建用户可写子目录

sudo mkdir /data/sftpusr/sftpdata01
sudo chown sftpdata01:sftpgroup /data/sftpusr/sftpdata01 # 允许用户上传文件[1,7](@ref)
sudo chmod 770 /data/sftpusr/sftpdata01 # 组内用户可读写

6、​调整SELinux策略

sudo chcon -t sshd_chroot_t /data/sftpusr/sftpdata01  # 修改目录安全上下文[6](@ref)
sudo setsebool -P ssh_chroot_rw_homedirs on # 允许Chroot目录读写

7、​​​放行SFTP端口

sudo firewall-cmd --permanent --add-service=ssh  # 开放22端口(默认SFTP端口)
sudo firewall-cmd --reload

8、重启SSH服务

sudo systemctl restart sshd  # 应用配置[2,6](@ref)

CentOS安装SFTP的更多相关文章

  1. centos安装sftp服务

    一.创建sftp服务数据目录及相关测试用户 [root@localhost ~]# mkdir -pv /data/sftp/ #sftp数据目录 [root@localhost ~]# chown ...

  2. centos 安装sftp服务

    打开命令终端窗口,按以下步骤操作. 0.查看openssh的版本 ssh -V 使用ssh -V 命令来查看openssh的版本,版本必须大于4.8p1,低于的这个版本需要升级.  1.创建sftp组 ...

  3. Centos7.3安装sftp服务和ssh

    Centos安装SFTP 安装SFTP服务         1. 查看openssh版本             ssh -V             openssh版本必须大于4.8p1       ...

  4. CentOS 7.4 初次手记:第二章 CentOS安装步骤

    第二章 CentOS安装步骤... 18 第一节 下载... 18 第二节 分区参考... 18 第三节 安装... 19 I Step 1:引导... 19 II Step 2:配置... 20 I ...

  5. centos安装启动ssh服务

    centos安装启动ssh服务 #rpm -qa |grep ssh 检查是否装了SSH包 没有的话yum install openssh-server #chkconfig --list sshd ...

  6. CentOS安装gitlab,gerrit,jenkins并配置ci流程

    CentOS安装gitlab,gerrit,jenkins并配置ci流程 By Wenbin juandx@163.com 2016/4/9 这是我参考了网上很多的文档,配置了这三个软件在一个机器上, ...

  7. 【推荐】CentOS安装Subversion-1.8.11+HTTP协议支持配置

    注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. 我们需要搭建一个自己的SVN服务器. 此外,搭建好的SVN服务器除了需要支持svn协议外,最好还需要支持HTTP协议和HTTPS协 ...

  8. 【推荐】CentOS安装PHP-5.6.4+扩展安装+安全配置+性能配置

    注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. #准备工作# 前段时间PHP官方发布了一个重要的安全升级公告,修复了两个unserialize函数的严重漏洞,目前受影响的版本有: ...

  9. CentOS安装Apache-2.4.10+安全配置

    注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. #准备工作# 在安装Nginx之前,请确保已经使用yum安装了各基础组件,并且配置了www用户和用户组,具体见<CentOS ...

  10. CentOS安装Nginx-1.6.2+安全配置

    注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. #准备工作# 在安装Nginx之前,请确保已经使用yum安装了pcre等基础组件,具体见<CentOS安装LNMP环境的基础 ...

随机推荐

  1. csharp入门经典

    C#简介 .NET Framework是Microsoft为开发应用程序而创建的一个具有革命意义的平台,它有运行在其他操作系统上的版本 .NET Framework的设计方式确保它可以用于各种语言,包 ...

  2. 读论文-协同过滤技术综述(A Survey of Collaborative Filtering Techniques)

    前言 今天读的一篇论文题目为<协同过滤技术综述>(A Survey of Collaborative Filtering Techniques),文章发表于<人工智能研究进展> ...

  3. 【MIPS】P2课下零碎

    1..word使用 .word 0:63 并非划出了64个 4Byte 地址,而是63个,可从编译后Label窗口中查看 2.syscall读取字符 li $v0, 12 syscall 此时\n也会 ...

  4. browser-use 对 playwright 做了哪些事情

    browser-use 是基于 Playwright 的增强工具,专注于将 AI 代理与浏览器自动化结合,通过简化操作和扩展功能提升了开发效率. 以下是它对 Playwright 的主要增强点: AI ...

  5. Oracle锁表及解锁方法

    1. 首先查看数据库中哪些表被锁了,找到session ID: 使用sql: select b.owner,b.object_name,a.session_id,a.locked_modefrom v ...

  6. 3.14 + 1e10 - 1e10 = 0 ? ——浮点数的本质

    3.14 + 1e10 - 1e10 = 0 ? --浮点数的本质 我们先看这样一个例子: #include <iostream> int main(int argc, char **ar ...

  7. CSS那些事读书笔记-1

    背景 作为一个后端开发,曾经尝试过学习前端,但是总觉不得要领,照猫画虎,而公司里又有专业的前端开发,工作中几乎接触不到实际的前端任务,所以前端的技能田野一直是一片荒芜.但是笔者深知前端的技能对找工作和 ...

  8. ELF-Virus简易病毒程序分析

    系统功能概述 ELF-Virus实现了一个简单的病毒程序,能够感染当前目录下的ELF格式的可执行文件.病毒程序通过将自身代码附加到目标文件中,并在文件末尾添加一个特定的签名来标记文件已被感染.感染后的 ...

  9. 【Unity】改变游戏运行时Window的窗口标题

    [Unity]改变游戏运行时Window的窗口标题 零.需求 Unity打包好的Windows程序,启动后如何更改窗口标题?因为看着英文的感觉不太好,故有此想法.什么?你说为啥不改项目产品名?产品名会 ...

  10. Quart.NET - 教程 11: 高级 (企业级) 特性

    译者注: 目录在这 Quartz.NET 3.x 教程 原文在这 Lesson 11: Advanced (Enterprise) Features 集群 集群目前仅适用于 AdoJobStore ( ...