搭建SFTP服务安全共享文件,实现在外远程访问「内网穿透」

news/2024/4/18 23:13:09/文章来源:https://blog.csdn.net/qq_43514330/article/details/129681171

文章目录

      • 1.前言
      • 2.本地SFTP服务器搭建
        • 2.1.SFTP软件的下载和安装
        • 2.2.配置SFTP站点
        • 2.3.Cpolar下载和安装
      • 3.SFTP服务器的发布
        • 3.1.Cpolar云端设置
        • 3.2.Cpolar本地设置
      • 4.公网访问测试
      • 5.结语


1.前言

现在的网络发达,个人电脑容量快速上升,想要保存的数据资料也越来越多。在平时,我们会将很多数据资料都会存在个人电脑上,甚至发展出专门的数据存储设备(NAS设备)。毕竟手机容量小,存太多东西会卡顿。但为了满足我们随时随地查阅这些数据资料的要求,又需要能随时安全的连入个人电脑和存储设备,这时SFTP服务就能大显身手。今天,笔者就为大家详细介绍,如何使用Cpolar内网穿透的FTP协议,搭建自己的SFTP服务器,能够随时随地安全的调取查阅本地电脑上的数据资料吧。

2.本地SFTP服务器搭建

本质上来说,SFTP是一项传输协议,而为了执行这项传输协议,就需要相应的SFTP软件来执行,当硬件设备加上SFTP软件,就组成了执行SFTP协议的服务器。但通常这种服务器只能在局域网内提供服务,想要让这个服务器能被公共互联网上的设备访问到(可以是移动网的手机,也可能是安放在其他地方的电脑),就需要使用cpolar的内网穿透服务。

2.1.SFTP软件的下载和安装

要搭建SFTP服务器,相关软件必不可少,这里我们采用FreeSSHd这款软件执行FTP协议,为了保证软件的干净,我们还是在其官网下载。官网下载地址为http://www.freesshd.com/?ctt=download,而下载的软件,则是FreeFTPd。

20230317093901

FreeFTPd软件下载完成后,直接双击就可以进行安装。安装过程也没啥可说的,一路next即可。

20230317093902

FreeFTPd安装完成后,可以在开始菜单中找到FreeFTPd软件的快捷方式,需要注意的是,我们需要右键点击软件,在出现的菜单中选择以管理员身份运行该软件,才能让所做的配置生效,一般用户身份运行就没法保存所做的配置。

20230317093903

打开FreeFTPd软件主界面后,点击左侧的SFTP选项,进入SFTP设置页面,在这个页面右下部,点击Start启动SFTP服务。

20230317093904

SFTP服务启动后,我们可以看到Server status栏位显示为Running,并在Prot:22端口输出。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RdaQG8rq-1679361192516)(null#pic_center)]

启动SFTP服务后,我们先不着急保存退出,而是先建立一个用户。同样点击软件主界面左侧的Users,进入用户添加界面,点击Add按钮,添加一个用户。

20230317093906

添加用户时,自然需要进行一些关于用户的设定,比如用户名、用户密码、发布的磁盘(文件夹)、传输方式之类。这里我们将用户名定为test,共享的磁盘为E盘,传输协议为SFTP。完成这些设置后,就可以点击下方的“Apply”保存设置。

20230317093907

20230317093908

需要注意的是,我们需要将打算用SFTP发布的存储空间(硬盘或文件夹)审定好权限,防止访问这个存储空间时因权限限制而被拒绝。具体方法就是右键点击这个存储空间,选择右键菜单最下方的属性进入设置页面,点击安全选项卡,将Users的完全控制修改读取和执行列出文件夹内容读取写入几个权限都勾选并保存。

20230317093909

2.2.配置SFTP站点

完成了FreeSSHd软件的设置,我们还要建立一个SFTP站点,让远程访问的请求有地方可去。这里我们选用FileZilla这款软件。同样的,这款软件也可以在其官网找到下载(https://www.filezilla.cn/)。

20230317093910

在选择对应操作系统的FileZilla客户端下载后,解压后找到filezilla.exe双击进行安装。

20230317093911

FileZilla客户端安装完成后,进入FileZilla客户端主界面,点击左上角的文件按钮,并在弹出的菜单中选择第一项站点管理器

20230317093912

站点管理器页面,我们点击新站点,并对这个新站点进行设置,设置内容主要为

  • 协议(在下拉菜单中选择SFTP)

  • 主机(FileZilla服务器和FreeFTPd在同一台电脑上,因此输入本机地址127.0.0.1)

  • 用户名即密码(即FreeFTPd上我们设置的用户名和密码)

  • 完成这几项设置后,就可以点击下方的连接进行连接测试。

20230317093913

出于安全和权限考虑,软件会进行几项权限询问,我们选择同意即可。

20230317093914

20230317093915

接着就能看到,本地用于SFTP传输的磁盘(文件夹)已经成功连接,这也算是对FreeFTPd的运行进行了测试,说明在局域网内已经可以正常用FreeFTPd执行SFTP协议连接。

20230317093916

2.3.Cpolar下载和安装

cpolar官网:https://www.cpolar.com/

接下来,我们就要安装SFTP服务器公共互联网发布的最后一个重要组件,也就是安装cpolar软件。Cpolar的安装十分简单,我们同样访问cpolar的官网,在官网找到下载按钮,找到适用操作系统的版本进行下载。

20230317093917

20230317093918

Cpolar下载完成后,将下载的压缩包解压,并双击解压后的.msi文件进入安装程序,接下来一路Next即可。

20230317093919

20230317093920

需要说明的是,cpolar主要通过使用者的用户名来建立该用户专属的数据隧道,因此我们需要在官网上注册,以便之后创建对应的数据隧道。

20230317093921

20230317093922

3.SFTP服务器的发布

在各项准备工作都完成后(安装FreeFTPd服务器,设置FileZilla站点,并本地连接FreeFTPd进行测试,安装并注册Cpolar),就可以正式进入FreeFTPd的公共互联网发布工作。

由于SFTP协议应用于文件传输,会对带宽有一定要求,同时对连接稳定性也有要求(即能够随时随地访问到),因此建议将cpolar升级到专业版及以上,以便能创建具备一定带宽和长期稳定存续的数据隧道(免费版cpolar每隔24小时会重置内网穿透数据隧道地址)。

3.1.Cpolar云端设置

想要建立稳定的内网穿透数据隧道,我们需要先登录cpolar的官网,点击官网主界面左侧的预留按钮,进入数据隧道预留设置页面。

20230317093923

在“预留”页面,我们找到保留的TCP隧道,并在此栏位对SFTP数据隧道进行几项简单设置。

20230317093924

保留的TCP隧道栏位,我们需要设置的项目只有两项,分别是地区(即服务器所在位置,就近选择即可)和描述(即这条TCP隧道的备注,只要能方便自己区分就行)。

20230317093925

完成这两项设置后,就可以点击栏位右侧的“保留”按钮,将这条空白数据隧道保留下来,并生成一个公共互联网地址,稍后我们在进行cpolar客户端设置时,会用到这个地址,因此可以先将其复制下来。

当我们不打算使用这条数据隧道时,也可以点击右侧的x将这条数据隧道删除。

20230317093926

3.2.Cpolar本地设置

回到安装了FreeFTPd服务器的电脑(当然我们也在这台电脑上安装了cpolar客户端),打开cpolar的客户端(可以在开始菜单中点击cpolar的快捷方式,也可以在浏览器中输入localhost:9200),用自己的账号密码登录后,点击cpolar主界面左侧隧道管理项下的创建隧道按钮,进入本地内网穿透数据隧道的设置页面。

当然,为了创建这条数据隧道,我们也需要对这条内网穿透数据隧道的特性进行设置,具体为:

  1. 隧道名称:可直接看做数据隧道的备注,为方便区分,我们仍将这条数据隧道的名称设为SFTP连接;
  2. 协议:即数据隧道的传输协议,如网页、数据传输、设备互联等,这里选择TCP协议;
  3. 本地地址:这里需要填入软件(或内网设备)的端口号,由于FreeFTPd的默认输出端口号为22,因此此处填入22;
  4. 端口类型:即这条数据隧道的类型,是否为长期存续的隧道。
    • 由于我们在cpolar云端设置了保留隧道,因此可以选择固定TCP端口(固定TCP端口要将cpolar升级至专业版及以上);
    • 若只是临时使用,则选择随机临时TCP端口
  5. 预留的TCP地址:在选择了“固定TCP端口”后就会出现该栏位,这里我们将cpolar云端生成的地址粘贴进来;

完成这几项设置后,就可以点击页面下方的创建按钮,生成一条完整的SFTP数据隧道

20230317093927

完成本地数据隧道的设置后cpolar客户端会自动转入隧道管理项下的隧道列表页面。在这个页面,我们能对这条数据隧道进行管理,如启动、暂停、删除这条数据隧道;也能看到这条数据隧道的运行情况(是否处于运行状态);还能通过“编辑”按钮对这条数据隧道的各项信息进行修改。

而这条数据隧道的入口(即公共互联网地址),则可以在装填项下的在线隧道列表页面找到。

20230317093928

在完成cpolar云端及客户端的数据隧道设置后,我们就能回到FileZilla软件,使用cpolar创建的数据隧道进行访问测试。

由于此时我们已经完成了对本地FreeFTPd的穿透和发布,因此已经可以在其他电脑的FileZilla软件上,设置新的SFTP传输站点,进行FreeFTPd远程访问。

4.公网访问测试

与前面的FileZilla的设置一样,我们先打开FileZilla客户端,并新建一个站点。为方便区分,笔者将这个站点命名为“Cpolar访问测试”,并将cpolar生成的公共互联网地址填入主机栏位;而端口栏位,则应该填入cpolar生成地址最后的几位数字;剩下的用户名和密码,则应填入FreeFTPd设定的用户名和密码。

20230317093929

设置完成后,点击页面下方的连接按钮,就可以连入局域网内的FreeFTPd服务器,对电脑上分享的文件资料进行操作。

20230317093930

5.结语

到这里,我们就成功完成了本地电脑的SFTP服务器设置,并让本地电脑上的资料文件,以SFTP协议进行传输,实现了随时随地调取、操作和访问本地电脑上文件资料的目的。当然,使用FileZilla进行远程访问只是为了方便演示,只要FreeFTPd服务器和cpolar数据隧道设置正确,我们也可以使用其他SFTP客户端软件访问本地电脑。

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

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

DRBG_InstantiateSeeded调试-1

public 参数解析: standardEKPolicy: 837197674484b3f81a90cc8d46a5d724fd52d76e06520b64f2a1da1b331469aa(32bytes) rawCmdBuf 命令数据: 800200000063000001314000000100000009400000090000010000000400000000003a0001000b000300720020837197674484b3f81a90cc8d46a5d724fd5…

Baumer工业相机堡盟相机如何使用PixelTransformation像素转换功能(像素转换功能的使用和优点以及行业应用)(C++)

项目场景 Baumer工业相机堡盟相机是一种高性能、高质量的工业相机,可用于各种应用场景,如物体检测、计数和识别、运动分析和图像处理。 Baumer的万兆网相机拥有出色的图像处理性能,可以实时传输高分辨率图像。此外,该相机还具…

银河麒麟v10系统硬盘挂载并配置yum软件源

一、查看磁盘 近期由于centos系统停止更新用户服务器要更换银河麒麟v10,拿到服务器后使用lsblk -f或fdisk -l命令查看磁盘名称 可以看到sdb200G就是要挂载的硬盘,还没有uuid需要初始化才可以挂载。 二、分区 分区命令: fdisk /dev/【你的…

QML- QML视觉元素类型

QML视觉元素类型一、概述一、图像类型三、共享视觉属性1. 不透明度和可见性2. 转换(转置)一、概述 对于最基本的视觉效果,Qt Quick提供了一个 Rectangle 类型来绘制矩形。这些矩形可以用颜色或垂直渐变来着色。 Rectangle 还可以在矩形上绘制…

QuestDb 基础使用

一、安装 Download QuestDB | QuestDB 可去官网直接下载对应版本,我这里是Windows版本 二、运行 找到Bin目录运行 管理员Cmd,输入 questDb.exe,即可运行,默认webConsole端口 9000,可在bin下 server.config去修改。 效果如下 …

Mac安装Nacos

参考链接: https://nacos.io/zh-cn/docs/quick-start.html 文章目录Nacos安装下载和解压启动和关闭Nacos什么是nacos?Nacos架构基本架构及概念逻辑架构及其组件介绍领域模型数据模型服务领域模型配置领域模型类视图Nacos安装 下载和解压 从链接中下载最新的版本 …

Vue基础25之路由第四节

Vue基础25路由编程式路由导航Home.vue(去掉两个router-line的replace)HomeMessage.vueBanner.vue总结缓存路由组件Home.vueHomeNews.vueHomeMessage.vue总结两个新的生命周期钩子HomeNews.vueHomeMessage.vueHome.vue总结全局路由守卫路由前置守卫src/router/index.js路由后置守…

Qt QShortCut快捷键原理、实现和应用

应用 QShortCut方式的快捷键有好几种使用方式: 1.通过绑定QAction或QMenu的方式。QAction和QMenu都提供了setShortcut()接口; 2.实例化一个对象:然后绑定信号槽activated()信号: auto shortcut new QShortcut(QKeySequence(tr(…

Postgresql源码(102)子事务控制语句分析

1 子事务控制语句分析 1.1 执行savepoint 执行函数: 【立即执行】→DefineSavepoint→PushTransaction(从utility框架进入)【延迟执行】→StartSubTransaction(从顶层事务框架CommitTransactionCommand进入) 准入条…

差分毫伏输出传感器信号隔离转换模块放大器0-10mV/0-20mV/0-±10mV/0-±20mV

概述:DIN11 IPO 压力应变桥信号处理系列隔离放大器是一种将差分输入信号隔离放大、转换成按比例输出的直流信号导轨安装变送模块。产品广泛应用在电力、远程监控、仪器仪表、医疗设备、工业自控等行业。此系列模块内部嵌入了一个高效微功率的电源,向输入…

代码随想录-57-106. 从中序与后序遍历序列构造二叉树

目录前言题目1.递归(区间,左闭右开)变量2. 本题思路分析:3. 算法实现4. 算法复杂度5. 算法坑点前言 在本科毕设结束后,我开始刷卡哥的“代码随想录”,每天一节。自己的总结笔记均会放在“算法刷题-代码随想…

Java注解怎么用

什么是注解 Java的注解(Annotation)是一种元数据,它可以提供程序的额外信息,帮助程序员更好地管理程序。注解通常被用作代码的标记或者指定某些行为的方式。在Java中,注解以符号开头,放在代码的各个位置&a…

【数据结构】千字深入浅出讲解队列(附原码 | 超详解)

🚀write in front🚀 📝个人主页:认真写博客的夏目浅石. 🎁欢迎各位→点赞👍 收藏⭐️ 留言📝 📣系列专栏:C语言实现数据结构 💬总结:希望你看完…

linux驱动学习加强版-2(文件驱动的书写)

文章目录一、驱动的外设二、驱动操作文件原理三、编写一个驱动程序3.1 编写驱动程序的步骤3.1.2 确定主设备号以及注册驱动3.1.3 实现对应的函数四、一些错误现象一、驱动的外设 我们的设备硬件都需要驱动才能工作,没有驱动的硬件可以称之为废铁,没有硬…

spacesniffer文件大小查看工具安装和使用

软件描述 spacesniffer是一块可以快速查看电脑中所有文件大小的工具,当电脑空间不够时,可以迅速找出不需要的大提及文件。 一、软件下载 1、从网盘下载 spacesniffer文件大小查看工具 2、从官网下载 http://www.uderzo.it/main_products/space_sni…

供水管网微观水力模型

国外在管网建模方面起步于20世纪60年代。20世纪80年代,随着计算机及相应技术的发展,遥测远传设备的应用进入了实用化阶段,国内已有很多供水企业实现了供水管网建模。给水管网系统建模,就是为仿真模拟管网系统动态实时运行情况建立…

【论文阅读总结】用于目标检测的特征金字塔网络(FPN)

Feature Pyramid Networks for Object Detection1.摘要2.引言2.1 低级特征对于检测小物体很重要2.2 算法目标3. 文献综述3.1 Hand-engineered features and early neural networks3.2 Deep ConvNet object detectors3.3 Methods using multiple layers4.Feature Pyramid Networ…

LangChain:Prompt Templates介绍及应用

❤️觉得内容不错的话,欢迎点赞收藏加关注😊😊😊,后续会继续输入更多优质内容❤️👉有问题欢迎大家加关注私戳或者评论(包括但不限于NLP算法相关,linux学习相关,读研读博…

WPF+WebView2+react/vue/angular

创建WPF项目 安装WbeView2 Nuget包 在窗体中添加命名空间 xmlns:wv2"clr-namespace:Microsoft.Web.WebView2.Wpf;assemblyMicrosoft.Web.WebView2.Wpf"使用控件 <wv2:WebView2 x:Name"webview"/>在MainWindow中初始化 public MainWindow(){Initia…

什么是语法糖?Java中有哪些语法糖?

本文从 Java 编译原理角度&#xff0c;深入字节码及 class 文件&#xff0c;抽丝剥茧&#xff0c;了解 Java 中的语法糖原理及用法&#xff0c;帮助大家在学会如何使用 Java 语法糖的同时&#xff0c;了解这些语法糖背后的原理1 语法糖语法糖&#xff08;Syntactic Sugar&#…