使用Serv-U FTP服务器共享文件,实现无公网IP环境下远程访问

2023-12-04 22:44

本文主要是介绍使用Serv-U FTP服务器共享文件,实现无公网IP环境下远程访问,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 1. 前言
  • 2. 本地FTP搭建
    • 2.1 Serv-U下载和安装
    • 2.2 Serv-U共享网页测试
    • 2.3 Cpolar下载和安装
  • 3. 本地FTP发布
    • 3.1 Cpolar云端设置
    • 3.2 Cpolar本地设置
  • 4. 公网访问测试
  • 5. 结语

1. 前言

科技日益发展的今天,移动电子设备似乎成了我们生活的主角,智能手机、平板电脑几乎从不离身。但智能手机和平板电脑也有缺憾,就是自身的存储容量实在太少,能随时调取资料的大容量存储设备就显得十分必要。今天,笔者就为大家介绍,如何在电脑上,使用Serv-U+Cpolar内网穿透,构建一个ftp协议服务器,方便我们随时读取调阅文件资料。

2. 本地FTP搭建

FTP协议作为TCP/IP协议的组成部分,其主要作用就是向Web服务器传输网页资料和文件;同时由于FTP的传输效率极高,因此也常被用来传输较大的电子资料。通常FTP协议有两个组成部分,一个是FTP服务器(用于资料存储),另一个则是FTP客户端(访问指定服务器),今天介绍的Serv-U,就能让我们很轻松的搭建起一个FTP服务器。

2.1 Serv-U下载和安装

Serv-U的功能十分强大,运行稳定且设置简单,因此很受用户的欢迎。想要搭建自己的Serv-U服务器,要先到Serv-U官网(http://www.serv-u.com.cn/)下载Serv-U。

20230328091101

笔者使用的电脑安装了Windows操作系统,因此选择Windows版本下载。至于其他操作系统,则可根据需求自行选择。

20230328091102

下载完成后,将下载的压缩包解压,双击解压后的.exe文件,即可进行安装

20230328091103

20230328091104

进入安装程序后,只要一路点击下一步,很快就能安装完成。在安装完成首次运行Serv-U时,会显示“当前已定义的域,要先在定义新域吗”,直接选择

20230328091105

进入自定义域的设置页面后,左侧的列表就是我们需要设置的内容,如果没有特殊需求,只要输入几项简单内容,接着点击下一步即可完成设置。

首先Serv-U会要求我们对自定义域的名称进行设置,这里填入我们喜欢的名字即可

20230328091106

20230328091107

第三步Serv-U会要求我们填入domain URL(域名网址),这里我们根据其范例填入本地地址即可(127.0.0.1);第二行是file sharing repository(共享文件存储库),笔者选择整个E盘均进行共享。如果需要设置为共享某个文件夹的,则可以点击栏位右侧的“文件夹”图标进行选择

20230328091108

第四步是对Serv-U的输出端口进行设置。同样的,如果没有特殊需求、或系统默认的80端口没有被占用,则可以不用修改设置。但笔者Windows系统的80端口已经被占用,因此需要将80端口修改,这个例子中改为83。

需要注意的是,这一步中修改的端口号需要记住,以便我们之后进行FTP传输网页的访问测试,Cpolar进行内网穿透时,也会用到这个端口号。

20230328091109

接下来的第五步没有需要修改的内容,直接下一步即可。

20230328091110

第六步(最后一步)是关于回复密码的,如果有需要的看官可以自行设置。

20230328091111

完成以上步骤后,我们就完成了Serv-U的共享区域设置,接下来就是添加域用户步骤。这里我们只要跟着软件提示进行操作即可。需要注意的是,在域用户设置的最后一步,会涉及该用户访问共享文件的权限,如果不想该用户修改共享文件,则要选择“只读访问”,反之则选择“完全访问”。

20230328091112

20230328091113

20230328091114

20230328091115

20230328091116

20230328091117

在设置好访问用户后,即可点击完成,保留访问用户的设置。

20230328091118

完成以上设置后,我们就可以尝试在本地电脑上访问Serv-U的共享网页。

2.2 Serv-U共享网页测试

由于我们之前设置的Serv-U地址为本地地址(127.0.0.1),因此这里我们需要在浏览器中输入本地电脑的IP地址加端口号,具体格式为http://192.168.X.X:之前设置的端口号。在这个例子中,Serv-U访问地址为(http://192.168.157.1:83)。

20230328091119

只要输入的地址无误且之前的Serv-U软件设置没有问题,就会显示出Serv-U的登录界面,也就说明我们使用Serv-U搭建的FTP服务器成功上线,能够接受访客的访问。但此时Serv-U网页只能在局域网范围内访问,想要让这个网页能在任何地方都访问到,我们还需要使用Cpolar,创建一条内网穿透数据隧道。

2.3 Cpolar下载和安装

在本地的Serv-U服务端搭建完成后,我们就可以安装Cpolar内网穿透,为我们的FTP服务器上线做好准备。与Serv-U一样,我们可以直接访问Cpolar官网(https://www.cpolar.com/),选择合适自己电脑操作系统的版本进行下载。

20230328091120

笔者使用的是Windows操作系统,因此选择Windows版本进行下载。

Cpolar下载完成后,将下载的文件解压,双击解压后的.msi文件,即可自动执行安装程序。接着只要一路Next就能完成安装。

20230328091122

20230328091123

由于cpolar会为每个用户创建独立的数据隧道,并辅以用户密码和token码保证数据安全,因此我们在使用cpolar之前,需要进行用户注册。注册过程也非常简单,只要在cpolar主页右上角点击用户注册,在注册页面填入必要信息,就能完成注册。

20230328091124

20230328091125

3. 本地FTP发布

完成本地Serv-U服务器的部署和Cpolar内网穿透的安装注册后,我们就可以着手为Serv-U共享网页创建一个公共互联网地址,即内网穿透数据隧道,让我们能在公共互联网条件下,也能访问到家里的FTP服务器。

由于笔者不想每天都对Serv-U的网页地址进行设置(cpolar每隔24小时会对免费用户的数据隧道地址进行重置),因此将cpolar升级到vip级别,以此获得建立长期稳定数据隧道的特权。

3.1 Cpolar云端设置

要达到内网穿透的目的,需要先登录cpolar的官网,并在用户主页面左侧找到预留按钮,并点击进入cpolar的数据隧道预留页面。在这里生成一个公共互联网地址(也可以看做数据隧道的入口),由于此时这个地址没有连接本地的软件输出端口,因此也可以看做是一条空白的数据隧道。

20230328091126

在预留页面,可以看到很多种可保留的数据隧道,这里我们选择保留二级子域名栏位。

20230328091127

在“保留二级子域名”栏位,需要进行几项信息的简单设置,

  • 地区:服务器所在区域,就近选择即可
  • 二级域名:会最终出现在生成的公共互联网地址中,作为网络地址的标识之一
  • 描述:可以看做这条数据隧道的描述,能够与其他隧道区分开即可)

完成这几项设置后,就可以点击右侧的保留按钮,将这条数据隧道保留下来。

20230328091128

当然,如果这条数据隧道不打算再使用,还可以点击右侧的x将其轻松删除,节约宝贵的隧道名额。

20230328091129

3.2 Cpolar本地设置

完成cpolar云端的设置,并保留了空白数据隧道后,我们回到本地的cpolar客户端,将云端生成的空白数据隧道与本地Serv-U网页端口连接起来,正式打通Serv-U的内网穿透数据隧道。与登录Cpolar云端一样,我们在本地打开并登录cpolar客户端(可以在浏览器中输入localhost:9200直接访问,也可以在开始菜单中点击cpolar客户端的快捷方式)

20230328091130

点击客户端主界面左侧隧道管理——创建隧道按钮,进入本地隧道创建页面(如果要创建没24小时重置地址的临时数据隧道,可直接在此进行设置,不必再cpolar官网设置空白数据隧道)。

在这个页面,同样需要进行几项信息设置,这些信息设置包括:

1. 隧道名称 – 可以看做cpolar本地的隧道信息注释,只要方便我们分辨即可;
2. 协议 – 由于Serv-U输出的是网页,因此此处选择http协议;
3. 本地地址 – 本地地址即为Serv-U网站的输出端口号,因此这里填入之前设置的83号端口;
4. 域名类型 – 由于我们已经在cpolar云端预留了二级子域名的数据隧道,并生成了Serv-U网页的公共互联网二级域名,因此该行我们勾选二级子域名(如果预留的是自定义域名,则勾选自定义域名),并在下一行Sub Domain栏中填入预留的二级子域名,该例子中为“servuFTP”。当然,如果创建的是临时数据隧道,则直接勾选“随机域名”, cpolar客户端会自行生成网络地址,而不必在cpolar云端进行设置;
5. 地区 – 该行与cpolar云端时的设置一样,都是对服务器地区的选择,我们依照实际使用地填写即可;

20230328091131

完成cpolar客户端创建隧道所需信息的填写后,就可以点击页面下方的创建按钮,正式生成能够从公共互联网访问到本地Serv-U网页的数据隧道。

数据隧道创建完成后,cpolar客户端会自动跳转至隧道管理——隧道列表页面。在这个页面,我们能看到新创建的Serv-U数据隧道的状态,同时我们也可以在这里对这条数据隧道进行操作,如启动、暂停、删除;如果需要对这条数据隧道的信息进行修改,也可以在这里点击“编辑”按钮,进入数据隧道信息修改页面。

20230328091132

4. 公网访问测试

最后,我们点击cpolar客户端左侧状态——在线隧道列表按钮,进入在线隧道列表页面,我们在这里可以看到Serv-U网页的公共互联网地址。

20230328091133

通过这个地址,我们就能其他电脑(或设备)上,访问到位于本地电脑上Serv-U网页,调取和访问共享的文件。

20230328091134

5. 结语

可以看出,使用Cpolar发布Serv-U网页的步骤和过程并不复杂,而cpolar作为内网穿透软件,不仅仅只能发布Serv-U网页,只要将打算发布的网页(或软件)端口号输入cpolar中,就能创建出连接公共互联网与本地网页(软件)之间的数据隧道。

这篇关于使用Serv-U FTP服务器共享文件,实现无公网IP环境下远程访问的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/455173

相关文章

C#提取PDF表单数据的实现流程

《C#提取PDF表单数据的实现流程》PDF表单是一种常见的数据收集工具,广泛应用于调查问卷、业务合同等场景,凭借出色的跨平台兼容性和标准化特点,PDF表单在各行各业中得到了广泛应用,本文将探讨如何使用... 目录引言使用工具C# 提取多个PDF表单域的数据C# 提取特定PDF表单域的数据引言PDF表单是一

使用Python实现高效的端口扫描器

《使用Python实现高效的端口扫描器》在网络安全领域,端口扫描是一项基本而重要的技能,通过端口扫描,可以发现目标主机上开放的服务和端口,这对于安全评估、渗透测试等有着不可忽视的作用,本文将介绍如何使... 目录1. 端口扫描的基本原理2. 使用python实现端口扫描2.1 安装必要的库2.2 编写端口扫

PyCharm接入DeepSeek实现AI编程的操作流程

《PyCharm接入DeepSeek实现AI编程的操作流程》DeepSeek是一家专注于人工智能技术研发的公司,致力于开发高性能、低成本的AI模型,接下来,我们把DeepSeek接入到PyCharm中... 目录引言效果演示创建API key在PyCharm中下载Continue插件配置Continue引言

MySQL分表自动化创建的实现方案

《MySQL分表自动化创建的实现方案》在数据库应用场景中,随着数据量的不断增长,单表存储数据可能会面临性能瓶颈,例如查询、插入、更新等操作的效率会逐渐降低,分表是一种有效的优化策略,它将数据分散存储在... 目录一、项目目的二、实现过程(一)mysql 事件调度器结合存储过程方式1. 开启事件调度器2. 创

使用Python实现操作mongodb详解

《使用Python实现操作mongodb详解》这篇文章主要为大家详细介绍了使用Python实现操作mongodb的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一、示例二、常用指令三、遇到的问题一、示例from pymongo import MongoClientf

SQL Server使用SELECT INTO实现表备份的代码示例

《SQLServer使用SELECTINTO实现表备份的代码示例》在数据库管理过程中,有时我们需要对表进行备份,以防数据丢失或修改错误,在SQLServer中,可以使用SELECTINT... 在数据库管理过程中,有时我们需要对表进行备份,以防数据丢失或修改错误。在 SQL Server 中,可以使用 SE

使用Python合并 Excel单元格指定行列或单元格范围

《使用Python合并Excel单元格指定行列或单元格范围》合并Excel单元格是Excel数据处理和表格设计中的一项常用操作,本文将介绍如何通过Python合并Excel中的指定行列或单... 目录python Excel库安装Python合并Excel 中的指定行Python合并Excel 中的指定列P

基于Go语言实现一个压测工具

《基于Go语言实现一个压测工具》这篇文章主要为大家详细介绍了基于Go语言实现一个简单的压测工具,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录整体架构通用数据处理模块Http请求响应数据处理Curl参数解析处理客户端模块Http客户端处理Grpc客户端处理Websocket客户端

浅析Rust多线程中如何安全的使用变量

《浅析Rust多线程中如何安全的使用变量》这篇文章主要为大家详细介绍了Rust如何在线程的闭包中安全的使用变量,包括共享变量和修改变量,文中的示例代码讲解详细,有需要的小伙伴可以参考下... 目录1. 向线程传递变量2. 多线程共享变量引用3. 多线程中修改变量4. 总结在Rust语言中,一个既引人入胜又可

Java CompletableFuture如何实现超时功能

《JavaCompletableFuture如何实现超时功能》:本文主要介绍实现超时功能的基本思路以及CompletableFuture(之后简称CF)是如何通过代码实现超时功能的,需要的... 目录基本思路CompletableFuture 的实现1. 基本实现流程2. 静态条件分析3. 内存泄露 bug