FTP是一种文件传输协议,服务端和客户端可视化软件很多,只要支持相同的协议标准基本可以互相连通。

SFTP相对于FTP在数据传输中添加了数据加密,以损失数据传输效率为代价提高数据传输安全性。但加密解密等操作均为CPU时间,相对于文件的IO传输时间性能损失的占比不大。

以下使用linux服务器部署SFTP服务端,win10下安装XshellFTP客户端,进行FTP文件传输的测试。

一、linux服务器部署SFTP服务

1.1 检查环境:

SFTP在linux系统中是自带的,无需额外安装。不放心的话做如下检查,以CentOS为例。

rpm -qa | grep openssh clear

ssh -V

如果没有发现openssh,那就去下载吧。。。如果ssh版本在4.8以下,需升级版本

sudo yum update -y openssh-server

1.2 添加SFTP专用的用户组和用户

以下添加my-sftp-group用户组,sftpuser1、sftpuser2两个用户,并分别指定用户根目录和sftp服务目录权限

sudo groupadd my-sftp-group    # 创建用户组

sudo useradd -g my-sftp-group -m sftpuser1   #创建用户并指定组

sudo useradd -g my-sftp-group -m sftpuser2

root用户下  passwd sftpuser1 输入密码(可能要两次,也可能提示密码未通过字典检查),如下图所示密码已设置成功

passwd sftpuser2  #root用户下设置新用户密码

检查用户所在组是否设置成功:

groups sftpuser1  /  groups sftpuser2

如果发现用户组设置错误,移动用户组的指令 :

usermod -g my-sftp-group sftpuser1   /   usermod -g my-sftp-group sftpuser2

1.3 创建ChrootDirectory及sftp操作文件夹

ChrootDirectory 是配置sftp连接之后进入的根目录。我打算配置为 /data/sftpdata/%u最后一位%u是取用户名,为了让不同的用户登录之后进入到不同的文件夹,避免看到其他用户的数据。

确保ChrootDirectory中配置的路径从系统根目录第一个文件夹到最后一个文件夹所有者都是root,权限是755,否则sftp启动后远程连接会报错。但问题也很明显,sftp连接上来的用户由于没有根目录的写权限所以不能在根目录创建文件或文件夹,所以我们要给定一各路径,提前配置好用户权限。

假设我们使用 /data/sftpdata/sftpuser1/upload 这个文件夹来作为 sftpuser1这个用户能够操作的文件路径。则从data文件夹开始到sftpuser1文件夹,所有者都必须是root权限至少755,最后的update文件夹所有者设置为sftpuser1(用来登录sftp的用户),权限可以设置成7**

以下为参考指令,截图为创建过程

chown 用户:组 文件(夹)路径    # 修改文件(夹)的所有者

chmod 745 文件(夹)路径   # 修改权限:第一个数字是所有者权限,第二个数字是所属组用户权限,第三个数字是其他用户权限。每个数字是三位二进制数,分别表示读、写、执行。7=4+2+1即读写执行都有,5=4+1即读和执行,4则只有读权限。

留意,ChrootDirectory路径中的文件夹的权限最后一位其他用户权限中至少给个读和执行权限,不然sftpuser1用户登录sftp之后就连工作根目录都无法读和执行命令。

如果你对用户所有者、权限、sftp的ChrootDirectory工作根目录不是很熟悉,建议跟我保持完全一致,避免出现各种权限错误。

1.3 修改配置文件

vim /etc/ssh/sshd_config  文件尾补充内容

vim /etc/selinux/config   修改SELINUX属性参数

照着敲吧,粘贴到网页上会有格式问题。

1.4 重启ssh

systemctl restart sshd  (CentOS的指令,ubuntu可能有所不同,自行百度吧)

1.5 本地测试一下

二、win10下安装FlashFTP客户端

2.1 首先win10本身是自带sftp的,在cmd命令行中输入sftp user_name@ip 然后输入密码就可以连接远程sftp服务器了。

命令行连接sftp服务之后,需要使用指令进行文件传输操作,比如put指令get指令等。

2.2 XshellFTP客户端下载安装

网上很多绿色版和破解版,自行百度吧。

百度网盘备份:链接:https://pan.baidu.com/s/147RPyw6zzhu-V0IjokhISQ 提取码:44dk

三、sftp客户端与服务端进行文件传输

客户端:win10 下路色版 XshellFTP

服务端:linux 下 SFTP服务

打开XshellFTP窗口,左上角新建

连接成功!

左侧是本地文件系统,右侧是sftp文件系统。双击文件则直接进行文件传输。

软件工具——SFTP服务器、客户端安装及连接教程相关推荐

  1. 风暴英雄 服务器在哪个文件夹,风暴英雄国服内测客户端安装详细图文教程

    风暴英雄国服10月17日即将开测,对于风暴英雄国服内测客户端安装肯定还有很多玩家不太清楚,这里小编就给你带来风暴英雄国服内测客户端安装教程. 风暴英雄国服10月17日即将开测,对于风暴英雄国服内测客户 ...

  2. redis 服务器/客户端安装与配置

    redis 服务器/客户端安装与配置 1 redis server 1.1 获取redis源码包 //官网 http://redis.io/ wget -c http://redis.googleco ...

  3. jemter在linux上怎么安装_jmeter 在linux服务器的安装和运行教程图解

    linux环境下使用就meter进行压力测试: 1.linux环境部署:在Linux服务器先安装jdk: 2.以jdk-8u172-linux-x64.tar.gz为例: 下载地址:http://ww ...

  4. 服务器上安装Linux系统教程

    服务器上安装Linux系统教程 镜像文件下载 启动盘制作 实际安装 镜像文件下载 本教程使用的Linux系统镜像文件为:rhel-server-6.5-x86_64-dvd.iso 要从服务器端下载所 ...

  5. excel服务器客户端在哪个文件夹,excel服务器客户端安装配置

    excel服务器客户端安装配置 内容精选 换一换 安装配置Agent成功,需要等待2分钟,控制台上才会有主机监控数据.如果过了5min在总览页面还未看到"裸金属服务器",则需要排查 ...

  6. 华为服务器如何安装win7系统教程,云服务器怎么装win7系统教程

    云服务器怎么装win7系统教程 内容精选 换一换 本节操作介绍Linux操作系统云服务器在单用户模式下重置密码的操作步骤.本文档适用于X86架构的弹性云服务器.进入单用户模式下重置root密码前请先做 ...

  7. 2021年零基础带你走进nacos的世界之云服务器下载安装nacos-小白教程,详细到爆了!

    1.nacos简介 一个更易于构建云原生应用的动态服务发现.配置管理和服务管理平台.简单了说就是注册中心+配置中心 2.nacos官网 https://nacos.io/zh-cn/index.htm ...

  8. 服务器删除安装的系统教程,服务器安装系统教程

    服务器安装系统教程 内容精选 换一换 首先需要准备一台Linux系统的物理服务器作为镜像制作服务器(即宿主机).制作x86镜像选用x86服务器,制作ARM镜像选用ARM服务器.宿主机必须安装:vsft ...

  9. 服务器上安装安卓系统教程,云服务器上安装安卓系统

    云服务器上安装安卓系统 内容精选 换一换 有,该NTP服务器仅限于在华为云控制台上购买的弹性云服务器安装使用.如需在购买的弹性云服务器上安装NTP服务器,您可以选择使用华为云控制台自己提供的NTP服务 ...

最新文章

  1. Android应用性能优化
  2. 这就是华为速度:2.69分钟完成BERT训练!新发CANN 5.0加持,还公开了背后技术
  3. Linux-编写Shell的几个技巧_02
  4. combobox 取消记忆功能_南京长江大桥桥头堡空间改造设计,记忆与纪念的共鸣
  5. 小程序子组件向父组件传值_一套组件化、可复用、易扩展的微信小程序 UI 组件库...
  6. QT的QJSEngine类的使用
  7. 通过MapReduce统计每个单子在每个文件中出现的次数(FileSplit的使用),单词作为key,所在文本和次数作为value进行统计
  8. aws ec2时间_AWS中自动化的三大领域,以避免支付过多的云账单
  9. 初步认识html以及表格的制作
  10. python 列表的行 列长度_Python连载|Pandas手册(上)
  11. Javaweb在线视频学习网站的设计与实现
  12. 什么软件可以测试麦克风音质,怎么测试麦克风
  13. 微信公众号如何申请原创声明功能
  14. 一文带你实现游戏中的音乐、音效设置
  15. Android上边抽屉式标题,Android Navigation Drawer样式抽屉的使用
  16. Excel条件格式使用小总结
  17. CarSim仿真快速入门(七)—车辆参数化建模
  18. 亲测有效,最简单的Win10系统下的IDEA Ultimate2019.1.3安装和破解秘籍
  19. rrpp协议如何修改_《技术进阶:理解RRPP协议.ppt
  20. [转贴]当杀毒软件无能为力时,手动杀毒也许是我的最后救命稻草!

热门文章

  1. 感知机介绍及MATLAB实现
  2. 如何配置Git环境变量
  3. 猩猩中年时幸福感最低
  4. android 跌落动画,陶瓷很耐摔?安卓之父Essential手机跌落测试
  5. 移动硬盘装Ubuntu-真正的即插即用-efi
  6. 0.NumpyPandas简介和安装
  7. 绝地求生计算机内存不足怎么解决,绝地求生大逃杀提示内存不足怎么办_绝地求生大逃杀内存不足怎么办_绝地求生大逃杀内存条要求是多少...
  8. mysql server 5.7_MySQL Server更方便下载|MySQL Server v5.7 正式版 下载 - 巴士下载站
  9. WDK编译时出现error LNK2019 问题
  10. 自动化测试(一)手工测试用例与自动化测试用例