构建个人云存储:本地电脑搭建SFTP服务器,开启公网访问,轻松共享与管理个人文件!

本地电脑搭建SFTP服务器,并实现公网访问

文章目录

  • 本地电脑搭建SFTP服务器,并实现公网访问
    • 1. 搭建SFTP服务器
      • 1.1 下载 freesshd 服务器软件
      • 1.3 启动SFTP服务
      • 1.4 添加用户
      • 1.5 保存所有配置
    • 2. 安装SFTP客户端FileZilla测试
      • 2.1 配置一个本地SFTP站点
      • 2.2 内网连接测试成功
    • 3. 使用cpolar内网穿透
      • 3.1 创建SFTP隧道
      • 3.2 查看在线隧道列表
    • 4. 使用SFTP客户端,连接公网地址测试
      • 4.1 添加新站点
      • 4.2 以公网方式,连接sftp服务器成功
    • 总结:

1. 搭建SFTP服务器

1.1 下载 freesshd 服务器软件

下载地址:freeSSHd and freeFTPd

img

选择freeFTPD.exe下载

下载后,点击安装

img

安装之后,它会提示是否启动后台服务,Yes

安装后,点击开始菜单–> freeFTPd,注意:这里要点击鼠标右键,以管理员权限打开freeFTPd,如果以普通用户打开freeFTPd,将无法保存配置

img

主图口如下,我们看到SFTP状态为未启动。

img

1.3 启动SFTP服务

选择SFTP,如下图,我们看到当前SFTP状态为Stopping,我们点击start按钮。

img

状态将变为Running…,如下图。

img

1.4 添加用户

选择Users选项窗口,点击Add按钮,添加用户。

img

这里添加一个测试用户aaa 认证方式可以选择WINDOWS验证和密码验证,本例选择独立密码验证。

用户目录,我们为用户单独创建一个SFTP的根目录。

创建好以后,点击Apply按钮保存

以及别忘了配置SFTP根目录文件夹的目录权限

img

1.5 保存所有配置

点击下图Apply & Save按钮。保存所有配置写配置文件。

img

注意:如果弹出不能写入配置错误窗口,说明您之前是用普通用户启动的freeFTPd,无法保存配置文件。需要以管理员权限重新打开freeFTPd,才能正常写入配置文件。重新执行步骤1,再次保存。

img

保存后的结果如下图。

img

2. 安装SFTP客户端FileZilla测试

下载地址:FileZilla中文网 - 免费开源的FTP解决方案

安装后打开,如下图

img

2.1 配置一个本地SFTP站点

在软件工具栏点击打开站点管理器,如下图。

img

点击新站点按钮。

img

我们创建一个新站点,名称随意。 选择协议:为SFTP 服务器IP:因为就是在服务器上,选择127.0.0.1 端口号:选择 22 用户名:为我们搭建sftp服务器时,创建用户,本例为aaa 密码:输入用户aaa的密码

配置好后,点连接按钮。

img

提示是否保存密码,点击确定。

img

初次连接时,会提示是否信任该主机,打勾,并确认。

img

2.2 内网连接测试成功

我们可以看到,已经可以获取到服务器端的目录列表,说明连接成功。

img

3. 使用cpolar内网穿透

前置条件是您已经安装了cpolar,我们打开浏览器:127.0.0.1:9200

img

使用cpolar邮箱账号登录。

3.1 创建SFTP隧道

选择左边菜单栏隧道管理创建隧道,添加一个新的TCP隧道。

  • 隧道名称:tunnel-sftp (您可以自定义,不重复即可)
  • 协议: TCP
  • 本地地址:22
  • 地区: 本例中选择China Top

点击创建按钮。

img

隧道列表中,显示了我们刚创建的隧道。

img

3.2 查看在线隧道列表

本例中,我们获取到的公网地址为 3.tcp.cpolar.top:12284,其中3.tcp.cpolar.top是公网地址,12284是端口号

img

4. 使用SFTP客户端,连接公网地址测试

4.1 添加新站点

我们打开filezilla,按步骤2的操作方式,重新添加一个新站点 工具栏里,打开站点管理器,添加新站点。

我们这次给站点起名为cpoalr sftp 协议:SFTP 主机: 3.tcp.cpolar.top (本例中可能跟您的不一样,参考在线隧道列表) 端口:12284 (本例中可能跟您的不一样,请参考您的在线隧道列表)

img

4.2 以公网方式,连接sftp服务器成功

可以看到,已经通过cpolar提供的公网域名,连接SFTP服务器成功。

img

PS:如果出现中文目录乱码的问题,可以通过在SFTP客户端里配置字符集来解决:

  • 将字符集设置为GBK
  • 【由于目前大多数linux字符集为了通用,以及都改为了UTF-8,而Windows默认字符集为GBK,所以只需要将其将字符集设置GBK,就不会乱码了】

img

img

总结:

本例中,我们在windows中搭建了sftp站点,并且在本网测试成功后,又使用cpolar穿透工具,将SFTP站点,变得公网可用。由于本例中使用的是免费套餐,sftp站点的公网地址及端口会在24小时内变化,经常使用会很不方便。建议升级到专业套餐以上,并配置成固定TCP隧道,以获得更好的体验,注专业套餐是免费套餐带宽的3倍。

转载自cpolar极点云文章:本地电脑搭建SFTP服务器,并实现公网访问

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

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

相关文章

【算法与数据结构】JavaScript实现十大排序算法(一)

文章目录 关于排序算法冒泡排序选择排序插入排序希尔排序归并排序 关于排序算法 稳定排序: 在排序过程中具有相同键值的元素,在排序之后仍然保持相对的原始顺序。意思就是说,现在有两个元素a和b,a排在b的前面,且ab&…

十九,镜面IBL--BRDF积分贴图

再回顾下镜面部分的分割求和近似法 现在关注第二部分 最后可化为 也就是说,这两部分积分可以获得F0的系数和F0的偏差。 这两个值可以存储到BRDF积分贴图的RG部分。void main() { vec2 integratedBRDF IntegrateBRDF(TexCoords.x, TexCoords.y); FragColor …

图扑软件受邀亮相 IOTE 2023 国际物联网展

IOTE 2023 国际物联网展,作为全球物联网领域的盛会,于 9 月 20 日 - 22 日在中国深圳拉开帷幕。本届展会以“IoT构建数字经济底座”为主题,由深圳市物联网产业协会主办,打造当前物联网最新科技大秀。促进物联网与各行业深度融合&a…

ALM物联网管理平台助力中台上云 数字化转型让展示更直观清晰

支持移动浏览、支持大屏显示等功能,能够为设备厂家提供数据依据,方便厂家的售后以及产品的维护、为运维等相关公司提供运维管理等相关功能。 ALM物联网云平台是基于以往的物联网产品,以及目前市场上的各种云平台优点,研精心打造的…

排序:基数排序算法分析

1.算法思想 假设长度为n的线性表中每个结点aj的关键字由d元组 ( k j d − 1 , k j d − 2 , k j d − 3 , . . . , k j 1 , k j 0 ) (k_{j}^{d-1},k_{j}^{d-2},k_{j}^{d-3},... ,k_{j}^{1} ,k_{j}^{0}) (kjd−1​,kjd−2​,kjd−3​,...,kj1​,kj0​)组成, 其中&am…

缓存一致性(cache coherency)解决方案:MESI 协议状态转换详解

MESI 协议 一,MESI状态释义二,MESI状态转换1 Invalid after Reset2, Invalid > Exclusive3, Exclusive > Modified4 Modified > Shared, Invalid > Shared5 Shared > Invalid, Shared > Modified 三,状态转换场景总结Inval…

Linux常见指令2

Linux常见指令[2] 一.Linux常见指令1.man补充知识:nano 2.cp3.mv4.cat补充知识:echo输出重定向追加重定向回到catcat其他用法 5.less和more补充内容回到less 6.head和tail补充知识:命令行管道 一.Linux常见指令 前言:为了方便我们在Linux中写指令 介绍一下: 1.clear指令: 清屏…

【每日一题】2769. 找出最大的可达成数字

2769. 找出最大的可达成数字 - 力扣(LeetCode) 给你两个整数 num 和 t 。 如果整数 x 可以在执行下述操作不超过 t 次的情况下变为与 num 相等,则称其为 可达成数字 : 每次操作将 x 的值增加或减少 1 ,同时可以选择将 …

红黑树是如何实现的?

文章目录 一、红黑树的概念二、红黑树的性质三、红黑树和AVL树对比四、红黑树的插入1. 红黑树的结点定义2. 父亲的颜色3. 叔叔的颜色为红色4. 叔叔不存在5. 叔叔存在且为黑6. 插入的抽象图 五、红黑树的验证1. 检查平衡2. 计算高度与旋转次数3. 验证 六、 红黑树与AVL树的比较 …

基于SSM+Vue的医院住院综合服务管理系统的设计与实现

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:采用Vue技术开发 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目&#x…

ROS系统读取USB相机图像数据

ROS系统读取USB相机图像数据 前言usb_cam 功能包下载与编译摄像头选择连接摄像头可配置参数 前言 usb_cam功能包简介 为了丰富机器人与外界的交互方式,已经增加了与机器人的语音交互方式,不仅使机器人能够说话发声,还能听懂我们说的话&#…

Windows中实现将bat或exe文件作为服务_且实现命令行安装、配置、启动、删除服务

一、背景描述 在Windows环境下进行日常的项目开发过程中,有时候需要将bat文件或exe文件程序注册为Windows的服务实现开机自己运行(没有用户登陆,服务在开机后也可以照常运行)、且对于那些没有用户交互界面的exe程序来说只要在后台…

STL upper_bound和lower_bound函数

声明&#xff1a; 首先包含头文件#include<algorithm> 这里的两个函数所运用的对象必须是非递减的序列&#xff08;也就是数组&#xff0c;数组必须是非递减的&#xff09;&#xff0c;只有这样才可以使用upper_bound和lower_bound这两个函数。 还有一点&#xff0c;就…

Python入门教程48:Pycharm永久镜像源的pip配置方法

国内几个好用的Python镜像服务器地址&#xff1a; 清华大学镜像站&#xff1a;https://pypi.tuna.tsinghua.edu.cn/simple/阿里云镜像站&#xff1a;https://mirrors.aliyun.com/pypi/simple/中科大镜像站&#xff1a;https://pypi.mirrors.ustc.edu.cn/simple/中国科技大学镜…

HTML5福利篇--使用Canvas画图

目录 一.Canvas元素 1.Canvas元素定义 2.使用JavaScript获取页面中的Canvas对象 二.绘制图形 1.绘制直线 2.绘制矩形 &#xff08;1&#xff09;rect() &#xff08;2&#xff09;strokeRect() &#xff08;3&#xff09;fillRect()和clearRect()函数 3.绘制圆弧 4.…

ElementUI之首页导航+左侧菜单->mockjs,总线

mockjs总线 1.mockjs 什么是Mock.js 前后端分离开发开发过程当中&#xff0c;经常会遇到以下几个尴尬的场景&#xff1a; - 老大&#xff0c;接口文档还没输出&#xff0c;我的好多活干不下去啊&#xff01; - 后端小哥&#xff0c;接口写好了没&#xff0c;我要测试啊&#x…

opencv: 解决保存视频失败的问题

摘要&#xff1a;opencv能读取视频&#xff0c;但保存视频时报错。 一、首先要确保已经下载了openh264.dll文件&#xff0c;否则保存的视频无法打开&#xff0c;详细可以浏览这个&#xff1a;opencv&#xff1a;保存视频。 二、保存视频时出现一下问题&#xff1a; OpenCV:…

COCO 数据集 人体关键点格式

图片与标注数据在 COCO官网 均提供下载 标注格式 COCO 的标注中包含 4 个部分/字段&#xff0c;"info" 描述数据集&#xff0c;"licenses" 描述图片来源&#xff0c;"images" 和 "annotations" 是主体部分 "images" 部分…

一文带你全面解析postman工具的使用

写在前面&#xff1a;本文转自今日头条作者雨滴测试&#xff0c;感兴趣可点击下方链接查看原文 基础篇效率篇高级篇 一文带你全面解析postman工具的使用 文章目录 一文带你全面解析postman工具的使用基础篇一、postman安装说明1.下载与安装2.界面导航说明3.发送第一个请求 二、…

3 OpenCV两张图片实现稀疏点云的生成

前文&#xff1a; 1 基于SIFT图像特征识别的匹配方法比较与实现 2 OpenCV实现的F矩阵RANSAC原理与实践 1 E矩阵 1.1 由F到E E K T ∗ F ∗ K E K^T * F * K EKT∗F∗K E 矩阵可以直接通过之前算好的 F 矩阵与相机内参 K 矩阵获得 Mat E K.t() * F * K;相机内参获得的方式…