SFTP共享配置

news2024/10/6 18:28:54

SFTP一般指SSH文件传输协议,在计算机领域,SSH文件传输协议(英语:SSH File Transfer Protocol,也称Secret File Transfer Protocol,中文:安全文件传送协议,英文:Secure FTP或字母缩写:SFTP)是一数据流连接,提供文件访问、传输和管理功能的网络传输协议。

1、SFTP相关命令及配置

1.1SFTP相关命令

1.2配置内容说明

vim /etc/ssh/sshd_config

# Subsystem sftp /usr/libexec/openssh/sftp-server #注释此行

Subsystem sftp internal-sftp  #指定使用sftp服务使用系统自带的internal-sftp

Match User xxx  #匹配用户,匹配多个用户或组用逗号分割,匹配用户组进用Match Group

ChrootDirectory /var/www/ #指定xxx用户只能sftp到本/var/www/目录,注此目录非用家

Match User yyy   #设置第N个账号

ChrootDirectory /var/www/

ForceCommand internal-sftp #限定Match到用户只能使用ftp模式登录,禁用ssh模式

#禁止端口转发

# 如果不希望该用户能使用端口转发的话就加上,否则删掉或注释

X11Forwarding no   

AllowTcpForwarding no

注意:ChrootDirectory一旦设定,则相应的用户登录时会话的根目录“/”切换为此目录,如果你此时使用ssh而非sftp协议登录,则很有可能会被提示:/bin/bash: No such file or director,造成被用户无法进行ssh登录。#ForceCommand  强制用户登录会话时使用的初始命令,如果如上配置了此项则 Match到的用户只能使用sftp协议登录,而无法使用ssh登录,会被提示:This service allows sftp connections only错误,请将参数放Match下面,否者会造成所有用户无法ssh登录。

2、SFTP实例

2.1 配置root帐号登录SFTP

2.1.1备份sshd配置文件

[root@lhp336 ~] cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak

​​​​​​​2.1.2 修改sshd配置文件

[root@lhp336 ~] vim /etc/ssh/sshd_config

# Subsystem sftp /usr/lib/openssh/sftp-server  #注释掉

Subsystem sftp internal-sftp   #指定使用sftp服务使用系统自带的internal-sftp

# 禁用端口转发,否则删掉或注释

AllowTcpForwarding no

X11Forwarding no

注:root如查使用Match匹配限制,将无法登录,建议不做限制。

​​​​​​​2.1.3重启sshd服务

root@tianshl:~# systemctl ssh restart

​​​​​​​2.1.4使用其他电脑登录sftp验证

2.2配置限制ssh登录的sftp用户

2.2.1创建活动目录

[root@lhp336 ~]# mkdir /sftp

[root@lhp336 ~]# chown root:root /sftp

注:chroot目录必须是root:root (chroot规则,否则用户无法登录)

2.2.2新建用户

# 创建用户

# -d: 家目录

# -m: 创建家目录

# -g: 组

# -s: shell

[root@lhp336 ~]# useradd -d /sftp/test -m test  #创建test指定用户的主目录

[root@lhp336 ~]# chown root:test /sftp/test

[root@lhp336 ~]# passwd ftp-test #为ftp-test设置密码

[root@lhp336 ~]# mkdir /sftp/test/sftp_data #创建test帐号sftp目录

[root@lhp336 ~]# chown test:test /sftp/test/sftp_data

2.3 配置sshd配置文件

[root@lhp336 ~]# cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak #备份sshd配置文件

2.3修改sshd配置文件

[root@lhp336 ~]# vim /etc/ssh/sshd_config

# Subsystem sftp /usr/lib/openssh/sftp-server  #注释掉

Subsystem sftp internal-sftp  #指定使用sftp服务使用系统自带的internal-sftp

Match User test    #匹配用户test

ChrootDirectory /sftp/%u    #test活动目录,此目录所属用户必是root,否则无法登录

ForceCommand internal-sftp #限定test只能使用sftp模式登录,禁用ssh模式

# 禁用端口转发否则删掉或注释

AllowTcpForwarding no

X11Forwarding no

​​​​​​​2.2.4重启sshd服务

[root@lhp336 ~]# systemctl ssh restart

​​​​​​​2.2.5使用其他电脑登录sftp验证

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1832842.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

FFmpeg中内存分配和释放相关的源码:av_malloc函数、av_mallocz函数、av_free函数和av_freep函数分析

一、av_malloc函数分析 (一)av_malloc函数的声明 av_malloc函数的声明放在在FFmpeg源码(本文演示用的FFmpeg源码版本为5.0.3,该ffmpeg在CentOS 7.5上通过10.2.1版本的gcc编译)的头文件libavutil/mem.h中:…

nvm 报错https://npm.taobao.org/mirrors/node/index.json 淘宝镜像更换

文章目录 一、问题背景二、解决问题1. 获取配置文件的位置2. 修改配置文件中的镜像源配置3. 修改 npm 镜像源 一、问题背景 使用nvm的时候报错: Could not retrieve https://npm.taobao.org/mirrors/node/index.json. 由于淘宝的镜像域名更换,npm.taobao.org 域名…

Airflow任务流调度

0 前言 Airflow是Airbnb内部发起的一个工作流管理平台。使用Python编写实现的任务管理、调度、监控工作流平台。Airflow的调度依赖于crontab命令,与crontab相比,Airflow可以方便地查看任务的执行状况(执行是否成功、执行时间、执行依赖等&…

Elixir学习笔记——自定义符号

Elixir 提供双引号字符串以及一个称为 charlists 的概念,它们使用 ~c“hello world”符号语法定义。在本章中,我们将了解有关符号的更多信息以及如何定义我们自己的符号。 Elixir 的目标之一是可扩展性:开发人员应该能够扩展语言以适应任何特…

Vatee万腾平台,让智能更懂你

在数字化浪潮席卷全球的今天,智能科技已经渗透到我们生活的方方面面。然而,真正的智能不仅仅是技术的堆砌,更是对人性需求的深刻理解和满足。Vatee万腾平台,正是这样一个让智能更懂你的平台,它以其独特的方式&#xff…

select 下拉框不可选

select 下拉框不可选 disabled和readonlyselect 下拉框不可选择CSS pointer-events 属性 通常情况下,设置表单输入框不可操作的时候会选择使用disabled或者readonly,那么disabled和readonly有什么区别呢? disabled和readonly 首先来说这两个…

vscode插件开发之 - 消息通信

在开发vscode插件过程中,有一个典型场景是webview与extension.ts进行通信,例如,webview上的某些信息发送改变时,需要发送消息传递给extension.ts. 如果使用react框架构建vscode插件的webview,如何实现webview与extensi…

怎么把两个音频合成一个?将两个音频合成一个的四种方法

怎么把两个音频合成一个?在当今数字化的时代,音频处理已经成为我们生活中不可或缺的一部分。有时候,我们会希望将两段音频合成为一个,无论是为了制作音乐混音、创作声音效果,还是为了编辑播客节目或视频配音。合成音频…

硕思闪客精灵软件最新版下载及详细安装教程

闪客精灵(Sothink SWF Decompiler)是一款先进的SWF反编译软件,它不但能捕捉、反编译、查看和提取Shock Wave Flash影片(.swf和.exe格式文件),而且可以将SWF格式文件转化为FLA格式文件。 安 装 包 获 取 地 …

CentOS搭建kubernetes集群详细过程(yum安装方式)

kubernetes集群搭建详细过程(yum安装方式) Kubernetes,也被称为K8s,是一个多功能的容器管理工具,它不仅能够协调和调度容器的部署,而且还能监控容器的健康状况并自动修复常见问题。这个平台是在谷歌十多年…

性能测试、负载测试、压力测试、稳定性测试简单区分【超详细】

🍅 视频学习:文末有免费的配套视频可观看 🍅 点击文末小卡片 ,免费获取软件测试全套资料,资料在手,涨薪更快 性能测试是一个总称,可细分为性能测试、负载测试、压力测试、稳定性测试。 性能测试…

XZ后门故事:初始分析

2024年3月29日,Openwall OSS安全邮件列表上的一条消息“炸醒”了整个信息安全、开源和Linux社区:XZ出现了一个CVSS评分10.0的恶意后门。 这个后门库的特殊危险在于OpenSSH服务器进程sshd使用它。在多个基于systemd的发行版上(包括Ubuntu、De…

二叉树-根据先序遍历和中序遍历序列重建二叉树

目录 一、问题描述 二、解题思路 1.首先明确先序遍历和中序遍历的性质: 2.确定根节点及左右子树 3.对子树进行递归操作 4.递归返回条件 三、代码实现 四、刷题链接 一、问题描述 二、解题思路 1.首先明确先序遍历和中序遍历的性质: 先序遍历&am…

基于ChatGPT-4o自然科学研究全流程实践技术应用

自然科学研究遵循严谨的科学方法论,包括文献调研、问题综述、试验设计、提出假设、数据清洗、统计诊断、大数据分析、经典统计模型(回归模型、混合效应模型、结构方程模型、Meta分析模型)、参数优化、机器/深度学习、大尺度模型构建与模拟、论…

Centos7 安装oracle 11.2.0.4

荆轲刺秦王 1. 准备工作 需要下载 Oracle 11g 安装包 2.HostName修改: hostnamectl set-hostname oracle 3. 配置hostname(本机IP映射)注意:192.168.116.129 需要换乘本地ip vi /etc/hosts 192.168.116.129 oracle # 测试hos…

企业用户使用OV SSL证书趋势增长

随着网络安全的需求度日益提高,https证书也成为了当下最受欢迎的数字证书之一,主要是用于保护网站和应用程序的安全,并提升用户对网站的信任度,且只有企业或组织才可申请。 OV SSL证书全称Organization Validation SSL(组织验证性…

【前端】Nesj 学习笔记

1、前置知识 1.1 装饰器 装饰器的类型 declare type ClassDecorator <TFunction extends Function>(target: TFunction) > TFunction | void; declare type PropertyDecorator (target: Object, propertyKey: string | symbol) > void; declare type MethodDe…

CMSIS-RTOS2简介

本文介绍CMSIS-RTOS2。 1.引入 CMSIS-RTOS2在基于Arm Cortex处理器的设备上运行的实时操作系统内核上指定了通用RTOS接口。应用程序和中间件组件可以使用CMSIS-RTOS2 API在各种软件生态系统中实现更好的代码重用和更简单的集成。 CMSIS-RTOS2还指定了RTOS内核使用的标准OS T…

机械师电脑文件丢失怎么办?6个恢复方法,希望能帮到您

机械师电脑作为高性能的计算机品牌&#xff0c;受到众多用户的青睐。然而&#xff0c;即便是品质卓越的电脑&#xff0c;也难免会遇到文件丢失的困扰。无论是由于误操作、系统故障还是硬盘损坏&#xff0c;文件丢失都可能给用户带来不小的麻烦。当您发现机械师电脑上的文件突然…

使用Midjourney为产品创建出色效果图-关键词

使用MJ为产品创建效果图并不难&#xff0c;可以使用这个固定提示词公式。 Mockup empty, blank [ product ], [ decorating items ] [ background or context ], [ 1- 3 descriptive style], [ color palette ] 创建产品形象 首先&#xff0c;你需要准备一个透明背景的产品。…