Linux下搭建SFTP服务器的命令详解


Posted in Servers onJune 25, 2022

1、创建用户并设置密码

useradd -s /bin/false sftpuser
passwd sftpuser
# 若需要多个sftp用户
新建sftp的用户组:
groupadd sftp
useradd -g sftp -m sftpuser1
useradd -g sftp -m sftpuser2
passwd	sftpuser1
passwd	sftpuser2
usermod -g sftp sftpuser

2、配置ssh和权限

首先关闭SElinux

vim  /etc/sysconfig/selinux

找到并修改这行为
SELINUX=disabled
tips:SELINUX默认是开启的,这样重启sshd会提示权限不够,设置为disabled需要重启生效

3.打开/etc/ssh/sshd_config文件

vi /etc/ssh/sshd_config
# 修改端口
Port 9222
#注释掉下面这行
#Subsystem sftp /usr/libexec/openssh/sftp-server
# Subsystem     sftp    /usr/lib/ssh/sftp-server
Subsystem sftp internal-sftp
Match user  sftpuser
        ChrootDirectory  /data/sftp   #设定属于用户组sftp的用户访问的根文件夹如设置    /data/sftp   作为sftpuser        的sftp根目录
        ForceCommand internal-sftp #指定sftp命令,强制执行内部sftp,并忽略任何    ~/.ssh/rc文件中的命令
        X11Forwarding no   #这两行,如果不希望该用户能使用端口转发的话就加    上,否则删掉
        AllowTcpForwarding no

4.重启网络

#重启sshd
systemctl restart sshd
或
systemctl restart sshd.service
#查询sshd启动状态
systemctl status sshd.service

5、权限赋予

修改sftp-users用户组用户目录权限
因为使用了ChrootDirectory /data/sftp 作为sftpuser的sftp根目录,现在来修改权限
ChrootDirectory设置的目录权限及其所有的上级文件夹权限,属主和属组必须是root;
ChrootDirectory设置的目录权限及其所有的上级文件夹权限,只有属主能拥有写权限,也就是说权限最大设置只能是755
由于/data/sftpuser 是root创建的,权限755,如果sftpuser直接sftp过去是没有权限写入,因此,需要/data/sftp下创建新目录并给与qhlh权限
创建文件夹:

mkdir -p /data/sftp/upload
mkdir -p /data/sftp/download
chown -R sftpuser:users /data/sftp/upload
chmod -R root:root /data/sftp/download
chown -R sftpuser:root upload/

实现需求,同一个账号下载和上传目录分开,且download目录只能读取不能写入,upload可以上传下载。

到此这篇关于Linux下搭建SFTP服务器的文章就介绍到这了,更多相关Linux SFTP服务器内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!


Tags in this post...

Servers 相关文章推荐
nginx 多个location转发任意请求或访问静态资源文件的实现
Mar 31 Servers
fastdfs+nginx集群搭建的实现
Mar 31 Servers
Nginx下配置Https证书详细过程
Apr 01 Servers
Apache Hudi 加速传统的批处理模式
Apr 24 Servers
Windows Server 2016 配置 IIS 的详细步骤
Apr 28 Servers
讨论nginx location 顺序问题
May 30 Servers
netty 实现tomcat的示例代码
Jun 05 Servers
ubuntu下常用apt命令介绍
Jun 05 Servers
云服务器部署 Web 项目的实现步骤
Jun 28 Servers
vscode远程免密登入Linux服务器的配置方法
Jun 28 Servers
Linux中sftp常用命令整理
Jun 28 Servers
SpringBoot前端后端分离之Nginx服务器下载安装过程
Aug 14 Servers
Nginx安装配置详解
win sever 2022如何占用操作主机角色
Jun 25 #Servers
Docker与K8s关系介绍不会Docker也可以使用K8s
Windows Server 修改远程桌面端口的实现
Windows server 2012 NTP时间同步的实现
windows server 2016 域环境搭建的方法步骤(图文)
Windows server 2022创建创建林、域树、子域的步骤
You might like
使用Apache的rewrite技术
2006/06/22 PHP
php命令行用法入门实例教程
2014/10/27 PHP
PHP图片添加水印功能示例小结
2016/10/03 PHP
PHP日志LOG类定义与用法示例
2018/09/06 PHP
javascript中onclick(this)用法介绍
2013/04/19 Javascript
jQuery实现Div拖动+键盘控制综合效果的方法
2015/03/10 Javascript
原生js实现移动端瀑布流式代码示例
2015/12/18 Javascript
jquery获取css的color值返回RGB的方法
2015/12/18 Javascript
jQuery中实现prop()函数控制多选框(全选,反选)
2016/08/19 Javascript
原生JavaScript制作计算器
2016/10/16 Javascript
jQuery设置和获取select、checkbox、radio的选中值方法
2017/01/01 Javascript
原生js实现放大镜
2017/02/20 Javascript
浅谈VUE单页应用首屏加载速度优化方案
2018/08/28 Javascript
Vue中用props给data赋初始值遇到的问题解决
2018/11/27 Javascript
解决webpack多页面内存溢出的方法示例
2019/10/08 Javascript
js实现自定义右键菜单
2020/05/18 Javascript
vue各种事件监听实例(小结)
2020/06/24 Javascript
vue+element实现图片上传及裁剪功能
2020/06/29 Javascript
在vue中实现给每个页面顶部设置title
2020/07/29 Javascript
pygame学习笔记(4):声音控制
2015/04/15 Python
在pandas中一次性删除dataframe的多个列方法
2018/04/10 Python
Django REST framework 视图和路由详解
2019/07/19 Python
numpy.array 操作使用简单总结
2019/11/08 Python
Python Selenium模块安装使用教程详解
2020/07/09 Python
python对批量WAV音频进行等长分割的方法实现
2020/09/25 Python
浅析几个CSS3常用功能的写法
2014/06/05 HTML / CSS
CSS3+Sprite实现僵尸行走动画特效源码
2016/01/27 HTML / CSS
科沃斯机器人官网商城:Ecovacs
2016/08/29 全球购物
英国最大的专业户外零售商:Mountain Warehouse
2018/06/06 全球购物
Liu Jo西班牙官网:意大利服装品牌
2019/09/11 全球购物
李维斯牛仔裤英国官方网站:Levi’s英国
2019/10/10 全球购物
大学生就业自荐信
2013/10/26 职场文书
大学新闻系自荐书
2014/05/31 职场文书
2015年清明节演讲稿范文
2015/03/17 职场文书
党校团干班培训心得体会
2016/01/06 职场文书
Python自动化工具之实现Excel转Markdown表格
2022/04/08 Python