当前位置: 首页 > article >正文

内网穿透的应用-自托管文件分享系统PicoShare搭建流程与远程共享实战教程

文章目录

    • 前言
    • 1. 本地安装Docker
    • 2. 本地部署PicoShare
    • 3. 如何使用PicoShare
    • 4. 公网远程访问本地 PicoShare
      • 4.1 内网穿透工具安装
      • 4.2 创建远程连接公网地址
    • 5. 固定PicoShare公网地址

前言

大家好!在数字化时代,文件共享变得越来越重要,尤其是在团队协作和个人项目管理中。今天我要向大家分享一个轻量级且强大的工具——PicoShare,并介绍如何在Linux系统本地部署它,再结合Cpolar内网穿透实现公网环境下的远程传输。

PicoShare 是由 Go 语言开发的开源文件共享系统,它的设计非常简洁和高效。没有文件大小限制,支持快速下载和直接分享链接,使得 PicoShare 成为一个理想的文件传输解决方案。无论你是个人用户、团队成员还是企业员工,都可以从这个工具中受益匪浅。

cdb299e49401c1426381d9e4f5f4b8f.png

1. 本地安装Docker

本教程操作环境为Linux Ubuntu系统,在开始之前,我们需要先安装Docker。

本例使用Docker Compose部署,如果没有安装Docker,可以查看这篇教程进行安装:《Docker安装教程——Linux、Windows、MacOS》

2. 本地部署PicoShare

要在 Docker 容器中运行 PicoShare,请从本地系统挂载一个卷来存储 PicoShare sqlite 数据库。

sudo docker run \
  --env "PORT=4001" \
  --env "PS_SHARED_SECRET=somesecretpass" \
  --publish 4001:4001/tcp \
  --volume "${PWD}/data:/data" \
  --name picoshare \
  mtlynch/picoshare

image.png

3. 如何使用PicoShare

完成配置后,打开浏览器输入localhost:4001,或者本机IP:4001

cdb299e49401c1426381d9e4f5f4b8f.png

点击Log in,输入密码登录,此处根据docker部署时设置的密码,这里我是somesecretpass,输入密码somesecretpass即可

image.png

点击Choose aa file…,上传文件

image.png

上传成功后,会生成一个下载链接,点击链接即可下载。 也可以分享给其他人下载指定文件

f582a86ad49cf0dfe650d713344e6f5.png

8fa8714c94e47a7b420f86e7a2337ec.png

在Files模块也可以修改文件保存时限。

72cc3e5948fe5aea48fe640c42fccff.png

目前我们在本地部署了PicoShare,但是目前仅能在本地局域网内访问,如果想把这个文件分享链接在公网发送给其他人,就需要配置公网地址,就需要结合Cpolar内网穿透实现公网访问了,实现公网随时随地传输文件, 以及把生成的公网地址分享给别人。

接下来教大家如何安装Cpolar并且将PicoShare实现公网访问。

4. 公网远程访问本地 PicoShare

4.1 内网穿透工具安装

下面是安装cpolar步骤:

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

使用一键脚本安装命令

sudo curl https://get.cpolar.sh | sh

安装完成后,执行下方命令查看cpolar服务状态:(如图所示即为正常启动)

sudo systemctl status cpolar

Cpolar安装和成功启动服务后,在浏览器上输入ubuntu主机IP加9200端口即:【http://localhost:9200】访问Cpolar管理界面,使用Cpolar官网注册的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可:

image-20240801133735424

4.2 创建远程连接公网地址

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

  • 隧道名称:可自定义,本例使用了: PicoShare 注意不要与已有的隧道名称重复

  • 协议:http

  • 本地地址:4001

  • 域名类型:随机域名

  • 地区:选择China Top

14c3b7e849b5d9ae6e7da9dcebff236.png

创建成功后,打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了两个公网地址,接下来就可以在其他电脑(异地)上,使用任意一个地址在浏览器中访问即可。

d3d40e4c37cefe0261f2cfc0084fa55.png

如下图所示,成功实现使用公网地址异地远程访问本地部署的PicoShare

e49293ed2b6ed2e50a81ce77c0dcb85.png

分享的地址也变成了公网地址

6fdfd9c1ad49c48cab19c619db87ee2.png

小结

为了方便演示,我们在上边的操作过程中使用了cpolar生成的HTTP公网地址隧道,其公网地址是随机生成的。这种随机地址的优势在于建立速度快,可以立即使用。然而,它的缺点是网址是随机生成,这个地址在24小时内会发生随机变化,更适合于临时使用。

如果想把这个问答平台长期使用,并且分享给其他人,就需要固定公网地址,这样地址不会发生变化,可以永久使用,所以这里推荐大家选择使用固定的二级子域名方式来远程访问。

5. 固定PicoShare公网地址

由于以上使用cpolar所创建的隧道使用的是随机公网地址,24小时内会随机变化,不利于长期远程访问。因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化。

登录cpolar官网,点击左侧的预留,选择保留二级子域名,地区选择china vip,然后设置一个二级子域名名称,填写备注信息,点击保留。

ef5517d7b39087f6f1396d7f4c995d2.png

保留成功后复制保留的二级子域名地址:

607a261c71e628876fec55d334d67c7.png
登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑

9d12e2736a00263c8d5d574292f1748.png

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名

  • Sub Domain:填写保留成功的二级子域名

  • 地区: China VIP

点击更新

b4721938d218ab2ad3bef5ace96747e.png

更新完成后,打开在线隧道列表,此时可以看到随机的公网地址已经发生变化,地址名称也变成了保留和固定的二级子域名名称。

b5a60a6b4851a9c055b973e5546dda6.png

最后,我们使用固定的公网地址访问 PicoShare 界面可以看到访问成功,一个永久不会变化的远程访问方式即设置好了。

979d389db516a947de28ea08119ca9e.png

分享的公网地址也发生了变化,变成了创建好的固定公网地址

511c683baadab506bb2203d18237b92.png

通过以上步骤,你可以轻松地在 Linux 系统上部署 PicoShare,并结合 Cpolar 实现远程访问。PicoShare 的轻量级设计和强大的功能使其成为理想的文件共享工具,无论是个人使用还是团队协作都能得心应手。


http://www.kler.cn/a/469947.html

相关文章:

  • libaom 源码分析线程结构
  • HTTP/HTTPS ②-Cookie || Session || HTTP报头
  • 谷粒商城-高级篇-Sentinel-分布式系统的流量防卫兵
  • 数据库系统概论期末复习
  • Qt 5.14.2 学习记录 —— 삼 初级认识
  • Python自学 - 函数初步(内置函数、模块函数、自定义函数)
  • 大数据-240 离线数仓 - 广告业务 测试 ADS层数据加载 DataX数据导出到 MySQL
  • LInux单机安装Redis
  • 现代前端框架
  • html+css+js网页设计 体育 中满体育4个页面
  • html 元素中的data-v-xxxxxx 是什么?为什么有的元素有?有的没有?
  • 并行通信和串行通信
  • JVM调优,参数在哪里设置的?
  • STM32F4适配WINUSB2.0
  • Tableau数据可视化与仪表盘搭建-数据可视化原理
  • 从单点 Redis 到 1 主 2 从 3 哨兵的架构演进之路
  • Spring AMQP ----消息转换器
  • C#编程中dynamic类型
  • BOOST 在计算机视觉方面的应用及具体代码分析(二)
  • 计算机网络--根据IP地址和路由表计算下一跳
  • 海外招聘丨 弗拉瑞克商学院—博士研究员:智能家居技术业务和能源管理中的数据分析和人工智能
  • 大疆无人机炸机,视频文件打不开怎么办
  • 数据项目相关的AWS云计算架构设计
  • 基于springboot+vue的餐饮连锁店管理系统的设计与实现
  • 自学新标日初级上册第二课(复习版本)
  • 【亚马逊云科技】基于Amazon EKS部署高可用的OceanBase的最佳实践