全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
查看: 3119|回复: 21

使用腾讯云轻量部署FirefoxSend临时文件分享服务

  [复制链接]
发表于 2021-6-18 17:24:52 | 显示全部楼层 |阅读模式
本帖最后由 fule 于 2021-6-18 17:26 编辑


Firefox Send是火狐旗下的临时网盘,它可以在全平台使用,网页式操作,不需要附加组件(而且不限速),可以在任何现代浏览器中使用。以超链接形式分享,可设置分享的文件下载次数、时间和密码,达到指定下载次数或时长后文件自动过期,并自动从 Send 服务器中删除,在某种程度上相当于阅后即焚。

更重要的是,Firefox Send是一款开源软件。GitHub地址:https://github.com/mozilla/send


这意味着任何用户都可以搭建属于自己的Firefox Send

可惜的是,因为不法分子的恶意使用,在2020年9月17日,官方团队Mozilla正式宣布:永久关闭用于传输文件的Firefox Send服务。

以下记录一下自己部署FirefoxSend的过程

准备

  • 一台云服务器
  • 安装宝塔面板

最近的腾讯云618活动很不错,其中的轻量 2核4G5M一年仅需288.

618活动链接:https://cloud.tencent.com/act/618go

腾讯云轻量服务器链接:https://cloud.tencent.com/act/pro/lighthouse2021
安装

Firefox Send基本的搭建至少需要Node.js 10.x
在宝塔安装pm2管理器和redis

在pm2管理器内选择适合的node版本(需要10.x版本及以上)

官方给的安装过程用root用户执行npm run build的话会出问题,报错如下:

  1. mode: production

  2. /var/www/send/node_modules/webpack/lib/optimize/ConcatenatedModule.js:679

  3.           throw err;

  4.           ^



  5. SyntaxError: Unexpected token (3:25)

  6. | !(function webpackMissingModule() { var e = new Error("Cannot find module 'webcrypto-core'"); e.code = 'MODULE_NOT_FOUND'; throw e; }());

  7. |

  8. | class LinerError extends !(function webpackMissingModule() { var e = new Error("Cannot find module 'webcrypto-core'"); e.code = 'MODULE_NOT_FOUND'; throw e; }()) {

  9. |   constructor() {

  10. |     super(...arguments);

  11. ...
复制代码

所以我们新建一个普通用户

  1. useradd -d /home/firefoxsend -m send

复制代码

cd /home/firefoxsend进入文件夹,进入执行git clone https://github.com/mozilla/send.git从GitHub拉取源码

国内服务器拉github太慢的话,可先在https://github.com/mozilla/send/releases下载到本地,然后上传到服务器

将firefoxsend目录用户权限改为新建用户send
  1. chown -R send:send firefoxsend
复制代码


之后我们修改Webpack.config.js关闭自动检查,,如果不修改参数关闭自动检查,绑定域名之后无法访问。

在下图所示位置加入disableHostCheck: true,


然后我们进行安装

切换用户 su send

在源码的文件夹内执行npm install

使用:npm run build 编译生产环境。

最后运行 npm run prod

访问地址为ip:1443 不要忘记开启端口

域名访问
我们使用宝塔的反代就可以了.

在配置文件里加上以下内容:
  1. location /api/ws {
  2.        proxy_redirect off;
  3.        proxy_pass http://0.0.0.0:1443;
  4.        proxy_http_version 1.1;
  5.        proxy_set_header Upgrade $http_upgrade;
  6.        proxy_set_header Connection "upgrade";
  7.        proxy_set_header Host $http_host;
  8.    }
复制代码

需要代理/api/ws这个路径,是因为firefox-send文件上传使用的是websocket协议


配置后台启动
使用npm run prod启动后,关闭ssh,服务也就关闭了.我们可以使用screen或者pm2管理器来使其后台运行

在宝塔pm2管理器,如图配置即可
 楼主| 发表于 2021-6-18 17:31:45 | 显示全部楼层

感谢支持
发表于 2021-6-18 17:39:19 | 显示全部楼层
用ipfs他不香吗
 楼主| 发表于 2021-6-18 18:08:00 | 显示全部楼层

限制下载次数和下载时间 我觉得蛮好用的
发表于 2021-6-18 18:47:29 | 显示全部楼层
谢谢分享   有建好的吗
发表于 2021-6-18 18:49:27 | 显示全部楼层
技术贴,绑定~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2026-5-14 17:05 , Processed in 0.066275 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表