使用windows搭建WebDAV服务,并内网穿透公网访问【无公网IP】
文章目录
- 1. 安装IIS必要WebDav组件
- 2. 客户端测试
- 3. 使用cpolar内网穿透,将WebDav服务暴露在公网
- 3.1 打开Web-UI管理界面
- 3.2 创建隧道
- 3.3 查看在线隧道列表
- 3.4 浏览器访问测试
- 4. 安装Raidrive客户端
- 4.1 连接WebDav服务器
- 4.2 连接成功
- 4.2 连接成功
- 1. Linux(centos8)安装redis数据库
- 2. 配置redis数据库
- 3. 内网穿透
- 3.1 安装cpolar内网穿透
- 3.2 创建隧道映射本地端口
- 4. 配置固定TCP端口地址
- 4.1 保留一个固定tcp地址
- 4.2 配置固定TCP地址
- 4.3 使用固定的tcp地址连接
- 总结:
自己用Windows Server搭建了家用NAS主机,WebDAV的文件共享方式当然也是必不可少的。
本文使用的是WIN10 专业版。
1. 安装IIS必要WebDav组件
1.1 打开控制面板,查看方式改为“类别”,进入“程序”,“启用或关闭Windows功能”

1.2 在Internet Information Services(IIS)中勾选“IIS管理控制台”、“Windows身份验证”、“管理服务”、“WebDAV发布”和“目录浏览”,然后确定安装。

1.3 完成安装后,在“Windows管理工具”中找到“IIS管理器”并打开。

1.4 在网站,按右键,添加网站.

1.5 为网网起个名,并且选择一个物理路径,这里,我起名称为webdav,路径选择:D:\WebDav,端口号,我们设置为8090

1.6 选中webdav站点,并进入它的"WebDAV创作规则”。

1.7 启用创作规则

1.8 添加创建规则


1.9 选择webdav站点,进入”身份认证“

1.10 启用"Windows身份验证",禁用"匿名身份验证"

1.11 选中“webdav”,进入“目录浏览”

1.12 点击‘启用’

1.13 重启webdav站点

2. 客户端测试
在浏览器中,输入http://127.0.0.1:8090/ 就可以访问WebDav服务中的文件内容了。
3. 使用cpolar内网穿透,将WebDav服务暴露在公网
如果您还没有安装过cpolar,请参考《Windows用户如何安装Cpolar内网穿透》安装。
3.1 打开Web-UI管理界面
打开浏览器:127.0.0.1:9200,并用cpolar邮箱账号登录。

3.2 创建隧道
隧道管理–添加隧道


3.3 查看在线隧道列表
状态–在线隧道列表,我们可以看到,已经生成了一个TCP随机隧道。

3.4 浏览器访问测试
我们在浏览器中,粘贴隧道地址,因为是从外网访问,会提示账号及密码进行身份验证。我们使用windows账号及密码登录。

4. 安装Raidrive客户端
当然,我们在正式使用时,一般会使用WebDav客户端,将远程服务器虚拟机本地盘符。
Raidrive客户端:https://www.raidrive.com/download
4.1 连接WebDav服务器

4.2 连接成功

4.2 连接成功

1. Linux(centos8)安装redis数据库
- 进入user下面的local目录,通常外部软件安装在此目录
cd /usr/local
- 下载redis
wget https://download.redis.io/releases/redis-6.2.6.tar.gz

- 下载好后,解压redis
tar xzf redis-6.2.6.tar.gz
- 解压好后,进入redis目录进行编译
cd redis-6.2.6/
- 进入后输入
make,输入后等待编译完成

编译好后,输入以下命令安装redis
make install PREFIX=/usr/local/redis-6.2.6

安装好后进入redis目录执行以下命令启动redis,默认端口是6379
./bin/redis-server redis.conf

然后Ctrl+C退出
2. 配置redis数据库
配置redis后台运行,编辑配置文件redis.conf
vim /usr/local/redis-6.2.6/redis.conf
将daemonize no 改成daemonize yes

还有将以下两个参数分别修改,开启远程访问

修改完成后保存退出配置文件,重启redis然后接着再次执行如下启动命令,发现redis图形不见了,即为后台启动
./bin/redis-server redis.conf
3. 内网穿透
cpolar是一款内网穿透软件,使用简单,安全可靠。我们可以通过cpolar把本地6379端口暴露到公共网络,然后可以使用工具进行远程访问。
cpolar官网:https://www.cpolar.com/
3.1 安装cpolar内网穿透
- Linux支持使用一键脚本命令安装
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
- token认证
登录cpolar官网后台,点击左侧的验证,查看自己的认证token,之后执行如下命令,xxxx是token码
cpolar authtoken xxxxxxx(您的token)

- 向系统添加服务(以方便开机自启)
sudo systemctl enable cpolar
- 启动cpolar服务
sudo systemctl start cpolar
3.2 创建隧道映射本地端口
cpolar安装成功后,在命令行输入以下命令将本地6369端口下的redis暴露到公网
cpolar tcp 6379
出现如下界面表示成功,然后复制公网地址

使用redis图形化界面远程连接redis,输入复制的tcp地址,点击测试连接

出现successful表示成功

注意:如果想要让隧道长期可访问,可以将其保存到配置文件中去,实现后台服务。请参考cpolar官网——文档——命令行创建隧道——将隧道配置为后台服务。
4. 配置固定TCP端口地址
以上步骤使用的是随机临时tcp端口地址,所生成的公网地址为随机临时地址,该公网地址24小时内会随机变化。而我们可以为其配置一个固定的公网地址,方便后续长期远程。
4.1 保留一个固定tcp地址
登录cpolar官网,点击左侧的预留,找到保留的tcp地址,我们来为远程Redis数据库保留一个固定tcp地址:
- 地区:选择China vip
- 描述:即备注,可自定义
点击保留

地址保留成功后,系统会生成相应的固定公网地址,将其复制下来

4.2 配置固定TCP地址
编辑cpolar配置文件
vim /usr/local/etc/cpolar/cpolar.yml
复制添加如下信息,remote_addr参数为上面复制的保留的tcp地址
redis:addr: 6379proto: tcpremote_addr: 3.tcp.vip.cpolar.cn:11506

修改完然后保存退出,接着重启cpolar服务
sudo systemctl start cpolar
4.3 使用固定的tcp地址连接


出现successful表示成功

总结:
目前测试使用的是随机TCP隧道创建的链接,24小时内会变化,仅用于测试,下一篇教程将介绍如何使用固定TCP隧道,创建长期使用的公网隧道链接。
相关文章:
使用windows搭建WebDAV服务,并内网穿透公网访问【无公网IP】
文章目录 1. 安装IIS必要WebDav组件2. 客户端测试3. 使用cpolar内网穿透,将WebDav服务暴露在公网3.1 打开Web-UI管理界面3.2 创建隧道3.3 查看在线隧道列表3.4 浏览器访问测试 4. 安装Raidrive客户端4.1 连接WebDav服务器4.2 连接成功4.2 连接成功 1. Linux(centos8…...
科技感响应式管理系统后台登录页ui设计html模板
做了一个科技感的后台管理系统登录页设计,并且尝试用响应式布局把前端html写了出来,发现并没有现象中的那么容易,chrome等标准浏览器都显示的挺好,但IE11下面却出现了很多错位,兼容起来还是挺费劲的,真心不…...
Lombok的使用及注解含义
文章目录 一、简介二、如何使用2.1、在IDEA中安装Lombok插件2.2、添加maven依赖 三、常用注解3.1、Getter / Setter3.2、ToString3.3、NoArgsConstructor / AllArgsConstructor3.4、EqualsAndHashCode3.5、Data3.6、Value3.7、Accessors3.7.1、Accessors(chain true)3.7.2、Ac…...
实时通信应用的开发:Vue.js、Spring Boot 和 WebSocket 整合实践
目录 1. 什么是webSocket 2. webSocket可以用来做什么? 3. webSocket协议 4. 服务器端 5. 客户端 6. 测试通讯 1. 什么是webSocket WebSocket是一种在单个TCP连接上进行全双工通信的协议。WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务…...
【C++】C++异常
文章目录 1. C语言传统处理错误的方式2. C异常的概念3. 异常的使用3.1 异常的抛出和捕获3.2 异常的重新抛出3.3 异常安全3.4 异常规范 4. C标准库的异常体系5. 自定义的异常体系6. 异常的优缺点 1. C语言传统处理错误的方式 C语言传统的错误处理机制有两个: 终止程…...
学生成绩管理系统V2.0
某班有最多不超过30人(具体人数由键盘输入)参加某门课程的考试,参考前面章节的“学生成绩管理系统V1.0”,用一维数组和函数指针作函数参数编程实现如下菜单驱动的学生成绩管理系统,其中每位同学的学号和成绩等数据可以…...
【C++】开源:tinyxml2解析库配置使用
😏★,:.☆( ̄▽ ̄)/$:.★ 😏 这篇文章主要介绍tinyxml2解析库配置使用。 无专精则不能成,无涉猎则不能通。——梁启超 欢迎来到我的博客,一起学习,共同进步。 喜欢的朋友可以关注一下,…...
如何使用webpack打包一个库library,使用webpack打包sdk.
如何使用webpack打包一个库library 如果你需要自己封装一些包给别人使用,那么可以参考以下方法 初始化库 mkdir library cd library npm init -y经过以上步骤后会生成一个library文件夹,里面包含一个package.json文件。然后简单修改为如下所示: {&qu…...
项目一:基于stm32的阿里云智慧消防监控系统
若该文为原创文章,转载请注明原文出处。 Hi,大家好,我是忆枫,今天向大家介绍一个单片机项目。 一、简介 智慧消防监控系统,是用于检测火灾,温度,烟雾的监控系统。以 stm32单片机为核心外加 MQ…...
【果树农药喷洒机器人】Part6:基于深度相机与分割掩膜的果树冠层体积探测方法
📢:如果你也对机器人、人工智能感兴趣,看来我们志同道合✨ 📢:不妨浏览一下我的博客主页【https://blog.csdn.net/weixin_51244852】 📢:文章若有幸对你有帮助,可点赞 👍…...
打印1到最大的n位数
目录 1.题目概述 2.题解 1.题目概述 输入数字 n,按顺序打印出从 1 到最大的 n 位十进制数。比如输入 3,则打印出 1、2、3 一直到最大的 3 位数 999。 1. 用返回一个整数列表来代替打印 2. n 为正整数,0 < n < 5 示例: 输入…...
设计模式行为型——状态模式
目录 状态模式的定义 状态模式的实现 状态模式角色 状态模式类图 状态模式举例 状态模式代码实现 状态模式的特点 优点 缺点 使用场景 注意事项 实际应用 在软件开发过程中,应用程序中的部分对象可能会根据不同的情况做出不同的行为,把这种对…...
ElastAlert通过飞书机器人发送报警通知
前言 公司采用ELK架构搜集业务系统的运行日志,以前开发人员只有在业务出现问题的时候,才会去kibana上进行日志搜索操作,每次都是被用户告知系统出问题了,这简直是被啪啪打脸~ 于是痛定思痛,决定主动出击,…...
恒温碗语音芯片,具备数码管驱动与温度传感算法,WT2003H-B012
近年来,随着科技的飞速发展,智能家居产品已然成为了现代生活的一部分,为人们的生活带来了更多的便利和舒适。在这个不断演进的领域中,恒温碗多功能语音芯片——WT2003H-B012成为众多厂商的首选,为智能家居领域注入了全…...
新能源汽车需要检测哪些项目
截至2022年底,中国新能源车保有量达1310万辆,其中纯电动汽车保有量1045万辆。为把好新能源汽车安全关,我国新能源汽车除了完善的强制性产品认证型式实验外,还建立了“车企-地方-国家”逐级上报的三级监管体系实行新能源汽车全生命…...
VR内容定制 | VR内容中控管理平台可以带来哪些价值?
随着科技的不断发展,虚拟现实(VR)技术已经逐渐渗透到各个领域,其中教育领域也不例外。通过VR技术,学生可以身临其境地参与到各种场景中,获得更加直观、生动的学习体验。为了让教师更好地进行VR教学的设计和管理,提高教…...
篇十八:状态模式:状态驱动的行为
篇十八:"状态模式:状态驱动的行为" 开始本篇文章之前先推荐一个好用的学习工具,AIRIght,借助于AI助手工具,学习事半功倍。欢迎访问:http://airight.fun/。 另外有2本不错的关于设计模式的资料&…...
【Tomcat】(Tomcat 下载Tomcat 启动Tomcat 简单部署 基于Tomcat进行网站后端开发)
文章目录 Tomcat下载Tomcat启动Tomcat简单部署 基于Tomcat进行网站后端开发 Tomcat Tomcat 是一个 HTTP 服务器.HTTP 协议就是 HTTP 客户端和 HTTP 服务器之间的交互数据的格式. HTTP 服务器我们可以通过 Java Socket 来实现. 而 Tomcat 就是基于 Java 实现的一个开源免费,也是…...
简单动态字符串 sds
Redis 设计了简单动态字符串(Simple Dynamic String,SDS)的结构,用来表示 字符串。相比于 C 语言中的字符串实现,SDS 这种字符串的实现方式,会提升字符串的操 作效率,并且可以用来保存二进制数据…...
“深入剖析JVM内部原理:解密Java虚拟机的奥秘“
标题:深入剖析JVM内部原理:解密Java虚拟机的奥秘 摘要:本文将深入探讨Java虚拟机(JVM)的内部原理,包括其架构、内存管理、垃圾回收机制、即时编译器等关键组成部分。通过解密JVM的奥秘,我们将更…...
RestClient
什么是RestClient RestClient 是 Elasticsearch 官方提供的 Java 低级 REST 客户端,它允许HTTP与Elasticsearch 集群通信,而无需处理 JSON 序列化/反序列化等底层细节。它是 Elasticsearch Java API 客户端的基础。 RestClient 主要特点 轻量级ÿ…...
基于FPGA的PID算法学习———实现PID比例控制算法
基于FPGA的PID算法学习 前言一、PID算法分析二、PID仿真分析1. PID代码2.PI代码3.P代码4.顶层5.测试文件6.仿真波形 总结 前言 学习内容:参考网站: PID算法控制 PID即:Proportional(比例)、Integral(积分&…...
DeepSeek 赋能智慧能源:微电网优化调度的智能革新路径
目录 一、智慧能源微电网优化调度概述1.1 智慧能源微电网概念1.2 优化调度的重要性1.3 目前面临的挑战 二、DeepSeek 技术探秘2.1 DeepSeek 技术原理2.2 DeepSeek 独特优势2.3 DeepSeek 在 AI 领域地位 三、DeepSeek 在微电网优化调度中的应用剖析3.1 数据处理与分析3.2 预测与…...
阿里云ACP云计算备考笔记 (5)——弹性伸缩
目录 第一章 概述 第二章 弹性伸缩简介 1、弹性伸缩 2、垂直伸缩 3、优势 4、应用场景 ① 无规律的业务量波动 ② 有规律的业务量波动 ③ 无明显业务量波动 ④ 混合型业务 ⑤ 消息通知 ⑥ 生命周期挂钩 ⑦ 自定义方式 ⑧ 滚的升级 5、使用限制 第三章 主要定义 …...
MongoDB学习和应用(高效的非关系型数据库)
一丶 MongoDB简介 对于社交类软件的功能,我们需要对它的功能特点进行分析: 数据量会随着用户数增大而增大读多写少价值较低非好友看不到其动态信息地理位置的查询… 针对以上特点进行分析各大存储工具: mysql:关系型数据库&am…...
MFC内存泄露
1、泄露代码示例 void X::SetApplicationBtn() {CMFCRibbonApplicationButton* pBtn GetApplicationButton();// 获取 Ribbon Bar 指针// 创建自定义按钮CCustomRibbonAppButton* pCustomButton new CCustomRibbonAppButton();pCustomButton->SetImage(IDB_BITMAP_Jdp26)…...
PPT|230页| 制造集团企业供应链端到端的数字化解决方案:从需求到结算的全链路业务闭环构建
制造业采购供应链管理是企业运营的核心环节,供应链协同管理在供应链上下游企业之间建立紧密的合作关系,通过信息共享、资源整合、业务协同等方式,实现供应链的全面管理和优化,提高供应链的效率和透明度,降低供应链的成…...
Go 语言接口详解
Go 语言接口详解 核心概念 接口定义 在 Go 语言中,接口是一种抽象类型,它定义了一组方法的集合: // 定义接口 type Shape interface {Area() float64Perimeter() float64 } 接口实现 Go 接口的实现是隐式的: // 矩形结构体…...
【2025年】解决Burpsuite抓不到https包的问题
环境:windows11 burpsuite:2025.5 在抓取https网站时,burpsuite抓取不到https数据包,只显示: 解决该问题只需如下三个步骤: 1、浏览器中访问 http://burp 2、下载 CA certificate 证书 3、在设置--隐私与安全--…...
反射获取方法和属性
Java反射获取方法 在Java中,反射(Reflection)是一种强大的机制,允许程序在运行时访问和操作类的内部属性和方法。通过反射,可以动态地创建对象、调用方法、改变属性值,这在很多Java框架中如Spring和Hiberna…...
