如何实现公网环境远程连接本地局域网宝塔FTP服务远程管理文件

文章目录

    • 前言
    • 1. Linux安装Cpolar
    • 2. 创建FTP公网地址
    • 3. 宝塔FTP服务设置
    • 4. FTP服务远程连接
        • 小结
    • 5. 固定FTP公网地址
    • 6. 固定FTP地址连接

💡推荐

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【点击跳转到网站】

前言

本文主要介绍宝塔FTP文件传输服务如何搭配内网穿透工具,实现随时随地远程连接局域网环境搭建的宝塔FTP文件服务并进行文件管理!

宝塔FTP是宝塔面板中的一项功能,用于设置和管理FTP服务。通过宝塔FTP,用户可以创建FTP账号,配置FTP用户权限,并进行文件上传、下载和删除等操作.

cpolar是一种安全的内网穿透云服务,可以将内网下的本地服务器通过安全隧道暴露至公网,使得公网用户可以正常访问内网服务。

1. Linux安装Cpolar

首先在Linux 中安装cpolar,打开宝塔终端命令窗口,输入执行cpolar一件安装脚本:

curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash

image-20230303183721806

设置向系统添加服务配置开机自启动

sudo systemctl enable cpolar

然后启动cpolar服务

sudo systemctl start cpolar

在宝塔面板中选择安全.然后设置开放9200端口

image-20230303184430176

然后输入Linux局域网IP+:9200端口即可出现Cpolar管理界面,输入我们官网注册的账号进行登录即可:

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

image-20230303184618711

2. 创建FTP公网地址

登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道:

  • 隧道名称:可自定义,注意不要与已有的隧道名称重复
  • 协议:ftp
  • 本地地址:21 (FTP默认端口)
  • 域名类型:随机临时随机TCP端口
  • 地区:选择 Auto

点击创建

image-20240116132321198

创建成功后,然后打开左侧在线隧道列表,查看我们创建的cpolar 公网FTP地址,这里有两种类型的地址,第一个是客户端连接的公网地址,下面三个是数据端口,25729~25731,这个端口范围需要设置到FTP服务端那边(这里需要注意!!),下面我们进入宝塔FTP服务,并设置下面的数据端口到FTP服务的配置文件里面

image-20240116132922392

3. 宝塔FTP服务设置

打开宝塔面板,点击告警设置,进入配置界面

image-20240116133817180

点击配置修改,找到Passive PortRange参数,把这两个数据端口,换成cpolar中生成的三个数据端口中的第一个和最后一个,修改完成后记得保存

image-20240116134642143

修改后,重启一下FTP服务即可,下面我们来远程连接测试一下

image-20240116134749147

4. FTP服务远程连接

打开FTP连接客户端,这里以filezilla为例,输入我们创建的cpolar公网地址的第一个FTP公网地址,和对应的公网端口,点击快速连接

image-20240116135507360

出现提示信息,点击确定按钮

image-20240116135610990

可以看到连接成功了,这样一个远程宝塔的FTP公网地址就设置好了,为了防止连接不上,请严格按照教程设置!

image-20240116135625923

小结

为了更好地演示,我们在前述过程中使用了Cpolar生成的隧道,其公网地址是随机生成的。

这种随机地址的优势在于建立速度快,可以立即使用。然而,它的缺点是网址是随机生成,这个地址在24小时内会发生随机变化,更适合于临时使用。

我一般会使用固定TCP域名,原因是我希望将地址发送给同事或客户时,它是一个固定、易记的公网地址,这样更显正式,便于流交协作。

5. 固定FTP公网地址

以上步骤使用的是随机临时ftp端口地址,所生成的公网地址为随机临时地址,该公网地址24小时内会随机变化。我们接下来为其配置固定的ftp端口地址,该地址不会变化,设置后将无需每天重复修改地址。

配置固定ftp端口地址需要将Cpolar升级到专业版套餐或以上。

登录cpolar官网,点击左侧的预留,找到保留的FTP地址,我们来为FTP保留一个固定FTP公网地址:

  • 地区:选择China
  • 描述:即备注,可自定义

点击保留(如果保留失败,可以换个地区试一下!)

image-20240116141036435

地址保留成功后,系统会生成相应的固定公网连接地址和数据端口,将客户端连接地址其复制下来

image-20240116141102275

打开cpolar web ui管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到我们上面创建的FTP隧道,点击右侧的编辑

image-20240116141129282

修改隧道信息,将保留成功的固定FTP地址配置到隧道中

  • 端口类型:修改为固定FTP端口
  • 预留的FTP地址:填写官网保留成功的地址,

点击更新(只需要点击一次更新即可)

image-20240116141243345

隧道更新成功后,点击左侧仪表盘的状态——在线隧道列表,可以看到FTP公网地址已经更新成为了固定FTP地址和端口,同时三个数据端口也变成了固定的数据端口,下面我们进入宝塔FTP配置界面修改掉原先的数据端口,换成固定的数据端口

image-20240116141412149

6. 固定FTP地址连接

打开宝塔界面,进入FTP服务配置文件的界面,然后把端口范围改为cpolar官网中固定的数据端口,只需要填写第一个和第三个即可,然后点击保存

image-20240116141852311

修改完成同样重启一下FTP服务

image-20240116141943987

然后再打开我们的FTP客户端,这里以filezilla为例,输入cpolar官网保留的 FTP 公网地址和对应的公网端口,点击快速连接

image-20240116142113041

出现提示,点击确定按钮即可

image-20240116142154323

然后就是见证奇迹的时刻,可以看到连接成功了,这样一个固定的FTP公网远程地址就设置好了!

image-20240116142210686

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

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

相关文章

Python28-5 k-means算法

k-means 算法介绍 k-means 算法是一种经典的聚类算法,其目的是将数据集分成 ( k ) 个不同的簇,每个簇内的数据点尽可能接近。算法的基本思想是通过反复迭代优化簇中心的位置,使得每个簇内的点与簇中心的距离之和最小。k-means 算法的具体步骤…

S7-1500轴工艺对象105报文安装(硬件目录的支持包 HSP)

S7-1500PLC里硬件组态没法组态到105报文是因为对应的HSP文件没有安装,首先需要安装对应的HSP文件。 1、HSP文件安装 V19版本的HSP安装链接如下 https://download.csdn.net/download/m0_46143730/89503735 2、安装HSP文件 3、需要将博途软件关闭才能完成安装 4、拖…

猫头虎博主全栈前沿AI技术领域矩阵社群

猫头虎博主全栈前沿AI技术领域矩阵社群 👋大家好,我是猫头虎!今天我要向大家介绍一个非常重要的社群矩阵——专为全栈前沿AI技术领域的朋友们打造的各种技术交流和资源互助的社群。这些社群不仅能帮助大家快速提升技术水平,还能拓…

Java中的行为驱动开发(BDD)实践

Java中的行为驱动开发(BDD)实践 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿!今天我们将深入探讨Java中的行为驱动开发(BD…

【MySQL备份】Percona XtraBackup全量备份实战篇

目录 1. 前言 2.准备工作 2.1.环境信息 2.2.创建备份目录 2.3.配置/etc/my.cnf文件 2.4.授予root用户BACKUP_ADMIN权限 3.全量备份 4.准备备份 5.数据恢复 6.总结 "实战演练:利用Percona XtraBackup执行MySQL全量备份操作详解" 1. 前言 本文…

《廖雪峰Java教程》——面向对象基础(1)

参考资料: 面向对象基础 - 廖雪峰的官方网站 (liaoxuefeng.com) 方法 Java 的方法允许定义可变参数: class Group {private String[] names;public void setNames(String... names) {this.names names;} }用可变参数代替数组类型的好处有&#xff1…

Java服务器代码远程调试(IDEA版)

Java服务器代码远程调试 配置启动脚本参数配置IDEA远程调试工具操作步骤 注意:远程调试的代码需要与本地代码一致,远程调试目的是解决本地环境无法支持调试的情况下,解决线上(测试)环境调试问题。 配置启动脚本参数 n…

如何压缩视频大小,怎么压缩视频

在数字化浪潮中,视频已成为我们生活和工作的重要部分。但视频往往伴随着大文件体积,这给存储和分享带来了不少困扰。本文将为您揭秘好用的压缩视频的方法,帮助您轻松减小视频文件大小,提高分享效率! 方法,使…

C++——模拟战争游戏

以下是一个使用C编写的简单模拟战争游戏的示例代码&#xff1a; #include <iostream> #include <vector> #include <random>// 声明一个简单的战士类 class Warrior { public:Warrior(int attackPower) : m_attackPower(attackPower) {}int getAttackPower(…

spring boot 整合 sentinel

注意版本问题 我这是jdk11 、spring boot 2.7.15 、 alibaba-sentinel 2.1.2.RELEASE <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.7.15</version><…

[图解]SysML和EA建模住宅安全系统-05-参数图

1 00:00:01,140 --> 00:00:03,060 这是实数没错&#xff0c;这是分钟 2 00:00:03,750 --> 00:00:07,490 但是你在这里选&#xff0c;选不了的 3 00:00:07,500 --> 00:00:09,930 因为它这里不能够有那个 4 00:00:11,990 --> 00:00:13,850 但是我们前面这里 5 00…

vue长列表,虚拟滚动

1.新建子组件&#xff0c;将数据传递过去(几万条数据的数组&#xff0c;一次性展示多少条&#xff0c;每条数据的行高). <template><div class"vitualScroll"><sub-scroll :dataList"dataList" :rowCount"20" :rowHeight"2…

[JavaScript]“复杂”的 this

【版权声明】未经博主同意&#xff0c;谢绝转载&#xff01;&#xff08;请尊重原创&#xff0c;博主保留追究权&#xff09; https://blog.csdn.net/m0_69908381/article/details/140092319 出自【进步*于辰的博客】 参考笔记二&#xff0c;P6.1&#xff1b;笔记三&#xff0c…

【链表】- 两数相加

1. 对应力扣题目连接 两数相加 2. 实现案例代码 public class AddingTwoNumbers {public static void main(String[] args) {// 示例用例 1ListNode l1 new ListNode(2);l1.next new ListNode(4);l1.next.next new ListNode(5);ListNode l2 new ListNode(5);l2.next ne…

【Python爬虫】Python爬取喜马拉雅,爬虫教程!

一、思路设计 &#xff08;1&#xff09;分析网页 在喜马拉雅主页找到自己想要的音频&#xff0c;得到目标URL&#xff1a;https://www.ximalaya.com/qinggan/321787/ 通过分析页面的网络抓包&#xff0c;最终的到一个比较有用的json数据包 通过分析&#xff0c;得到了发送json…

docker部署前端,配置域名和ssl

之前使用80端口部署前端项目后&#xff0c;可以使用IP端口号在公网访问到部署的项目。 进行ICP域名备案后&#xff0c;可以通过域名解析将IP套壳&#xff0c;访问域名直接访问到部署的项目~ 如果使用http协议可以很容易实现这个需求&#xff0c;对nginx.conf文件进行修改&#…

Spring Boot集成DeepLearning4j实现图片数字识别

1.什么是DeepLearning4j&#xff1f; DeepLearning4J&#xff08;DL4J&#xff09;是一套基于Java语言的神经网络工具包&#xff0c;可以构建、定型和部署神经网络。DL4J与Hadoop和Spark集成&#xff0c;支持分布式CPU和GPU&#xff0c;为商业环境&#xff08;而非研究工具目的…

《昇思25天学习打卡营第28天 | 昇思MindSporeVision Transformer图像分类》

第28天 本节学习了Vision Transformer图像分类 ViT则是自然语言处理和计算机视觉两个领域的融合结晶。在不依赖卷积操作的情况下&#xff0c;依然可以在图像分类任务上达到很好的效果。ViT模型的主体结构是基于Transformer模型的Encoder部分&#xff08;部分结构顺序有调整&a…

Mojo: AI开发的革命性编程语言

------------->更多内容&#xff0c;请移步“鲁班秘笈”&#xff01;&#xff01;<------------- 刚刚Mojo和HuggingFace一样发布新版本&#xff0c;此版本编号为24.4&#xff0c;包括几个核心语言和标准库增强功能。此版本最大的亮点之一是收到了来自18个社区贡献者的21…

redis布隆过滤器原理及应用场景

目录 原理 应用场景 优点 缺点 布隆过滤器&#xff08;Bloom Filter&#xff09;是一种空间效率很高的随机数据结构&#xff0c;它利用位数组和哈希函数来判断一个元素是否存在于集合中。 原理 数据结构&#xff1a; 位数组&#xff1a;一个由0和1组成的数组&#xff0c;初始…