当前位置: 首页 > news >正文

配置openssh实现sftp远程文件上传

客服端:winscp等ftp/sftp客户端

服务器:阿里云默认使用的openssh

需求:可以sftp远程传输文件到服务器固定文件夹下,不可远程ssh登录

步骤:

1. 建立系统用户ftpuser及组ftpgroup

useradd ftpuser

groupadd ftpgroup

2. 设置ftpuser密码

passwd ftpuser

然后输入密码

3. 设置ftpuser远程不能ssh登录

usermod -s /bin/false ftpuser

可以cat /etc/passwd查看系统用户的登录情况及主目录

4. 修改ftpuser主目录

usermod -d /mnt/xxx/

或者3、4步,统一用usermod -M -d /mnt/xxx/ -s /bin/false ftpuser

5. 编辑ssh配置文件,指定用户及目录

nano /etc/ssh/sshd_config,注释默认的Subsystem和UsePAM,并在最末尾添加以下几行(红字的)

UseDNS no
AddressFamily inet
PermitRootLogin yes
SyslogFacility AUTHPRIV
PasswordAuthentication yes

#--- 在UseDNS no这一行的下一行添加以下几行,不然报错,服务无法重启

Subsystem sftp internal-sftp
UsePAM yes
Match User ftpuser
ForceCommand internal-sftp
ChrootDirectory /mnt/xxx

AllowUsers root ftpuser #我用系统的sshd控制ssh远程登录,故也把ftpuser放入AllowUsers列表。

 

6. 重启sshd服务

service sshd restart

 

7. 测试ftpuser的ssh和sftp登录情况

ssh无法登录

sftp可以,默认列出/mnt/xxx文件夹

 

注意:

•ftpuser的用户目录和ssh配置文件里的目录一致

•ssh目录权限及所有者必须是755/root

•ftpuser得usermod里禁止ssh登录是/bin/false而不是/sbin/bash/nologin  (nologin是禁止了ssh和sftp)

 

参考:

http://blog.csdn.net/qq_35440678/article/details/52788808

https://www.cnblogs.com/xjnotxj/p/6912471.html

http://blog.csdn.net/kenight/article/details/36669679

 

相关文章:

  • 单反相机学习资料
  • 正则表达式
  • Node.js + Express 4.x + MongoDB 构建登录注册(二)
  • VMware NAT模式
  • 无锡换社保卡的流程(旧社保卡在手上)
  • vim安装
  • iOS 中 iBeacon 开发
  • Kali-linux控制Meterpreter
  • HTTP响应状态码
  • 开源中文分词工具探析(六):Stanford CoreNLP
  • 用脚本模式配置数据同步
  • 如何在ubuntu16上安装docker
  • saltstack自动化运维系列④之saltstack的命令返回结果mysql数据库写入
  • 边车容器下的服务网格istio
  • Git基本
  • JS中 map, filter, some, every, forEach, for in, for of 用法总结
  • [rust! #004] [译] Rust 的内置 Traits, 使用场景, 方式, 和原因
  • Apache Pulsar 2.1 重磅发布
  • avalon2.2的VM生成过程
  • ES6核心特性
  • exif信息对照
  • js 实现textarea输入字数提示
  • leetcode-27. Remove Element
  • Webpack 4x 之路 ( 四 )
  • 记录一下第一次使用npm
  • 聊聊hikari连接池的leakDetectionThreshold
  • 悄悄地说一个bug
  • 人脸识别最新开发经验demo
  • 如何实现 font-size 的响应式
  • 数据科学 第 3 章 11 字符串处理
  • 我看到的前端
  • 怎样选择前端框架
  • Android开发者必备:推荐一款助力开发的开源APP
  • 曜石科技宣布获得千万级天使轮投资,全方面布局电竞产业链 ...
  • #define 用法
  • (3)选择元素——(14)接触DOM元素(Accessing DOM elements)
  • (4.10~4.16)
  • (差分)胡桃爱原石
  • (二)WCF的Binding模型
  • (附源码)spring boot校园拼车微信小程序 毕业设计 091617
  • (九)One-Wire总线-DS18B20
  • (免费领源码)Python#MySQL图书馆管理系统071718-计算机毕业设计项目选题推荐
  • (南京观海微电子)——I3C协议介绍
  • (四)TensorRT | 基于 GPU 端的 Python 推理
  • (详细版)Vary: Scaling up the Vision Vocabulary for Large Vision-Language Models
  • (转)IIS6 ASP 0251超过响应缓冲区限制错误的解决方法
  • (转)Sublime Text3配置Lua运行环境
  • ***测试-HTTP方法
  • .bat批处理(十):从路径字符串中截取盘符、文件名、后缀名等信息
  • .bat批处理(四):路径相关%cd%和%~dp0的区别
  • .NET 4 并行(多核)“.NET研究”编程系列之二 从Task开始
  • .NET业务框架的构建
  • /proc/vmstat 详解
  • @EnableConfigurationProperties注解使用
  • @软考考生,这份软考高分攻略你须知道