如何本地部署SeaFile文件共享服务并实现无公网IP访问内网本地文件

文章目录

  • 1. 前言
  • 2. SeaFile云盘设置
    • 2.1 Owncould的安装环境设置
    • 2.2 SeaFile下载安装
    • 2.3 SeaFile的配置
  • 3. cpolar内网穿透
    • 3.1 Cpolar下载安装
    • 3.2 Cpolar的注册
    • 3.3 Cpolar云端设置
    • 3.4 Cpolar本地设置
  • 4.公网访问测试
  • 5.结语

1. 前言

现在我们身边的只能设备越来越多,各种智能手机、平板、智能手表和数码相机充斥身边,需要存储的数据也越来越大,一张手机拍摄的照片都可能有十多M,电影和视频更是按G计算。而智能设备的存储空间也用的捉襟见肘。能存储大量文件的,最合适的也就是家用电脑了。但家用电脑又存在无法随时随地调阅文件资料的问题。但只要经过简单几步,就能让家里的电脑秒变随时随地调阅存取文件的私有云盘。今天,笔者就为大家介绍,如何使用两个简单软件,让家里的电脑变身安全高效的私有云盘。

2. SeaFile云盘设置

SeaFile是一个自行托管的开源文件同步共享服务器,简单说就是一个个人云盘服务器,我们可以在家用电脑上安装SeaFile软件,将家用电脑变为数据存储服务器,再通过Cpolar的内网穿透功能,将这个数据存储服务器发布到公共互联网上,以此达到我们将家用电脑设置为私有云盘的目的。

2.1 Owncould的安装环境设置

要在家用电脑最常见的Windows系统上安装SeaFile软件,我们需要注意两个要点,第一是SeaFile需要构建一个必要的运行环境,即需要安装一个Python;第二是Python要选择2.7版本,并在安装时勾选Path选项。
Python算是比较知名的软件了,可以在其官网下载(https://www.python.org),也可以在搜索引擎中搜索软件名下载。

20230329090601

20230329090602

下载完成后,直接点击.exe文件即可进入安装程序。需要注意的是,安装过程中要记得勾选Add python.exe to PATH选项。

20230329090603

20230329090604

20230329090605

Python安装完成后,就可以继续进行SeaFile的安装。

2.2 SeaFile下载安装

接下来,我们就可以安装seafile服务器端(这里需要特别注意,要下载的是seafile服务器端,不是seafile客户端)。由于笔者没有在seafile官网上找到windows版本的seafile server下载,因此在搜索引擎里找了一个(https://www.jb51.net/softs/413008.html)

对应版本的SeaFile server下载完成后,需要解压到某个磁盘的文件夹下,这里笔者将文件解压到D盘的SeafileProgram文件夹下(需要注意的是,解压文件的路径不要过长)。

20230329090606

然后双击解压后文件夹里的run.bat文件,seafile server就会自动开始安装。

20230329090607

安装程序完成后,就能在Windows任务栏的系统托盘里,看到seafile server已经启动。

20230329090608

2.3 SeaFile的配置

虽然seafile server已经安装完成,但此时seafile还缺少用户个管理员,并且还未开启Windows服务,因此我们右键托盘里的seafile server图表,选择安装为Windows服务添加管理员账号选项。

20230329090609

接下来我们依照seafile server的提示完成这两项设置即可。需要注意的是,在设置管理员账号时,需要输入电子邮件格式的用户名,才能新增管理员成功。

20230329090610

完成管理员账号和Windows服务的设置后,我们打开本地电脑的浏览器,输入http://(seafile server所在的电脑IP地址):8000。在这个例子中,我们输入地址http://192.168.157.1:8000/,就能打开seafile server的网页页面。在输入用户名和密码后,就能登录seafile网页端。

20230329090611

20230329090612

此时,我们就在本地电脑上搭建起能够提供局域网内设备共享文件资料的服务器,访客可以通过各自的用户名和密码查阅共享的文件资料。接下来,我们要做的就是使用cpolar内网穿透,为本地的seafile server创建一个公共互联网地址,让我们能随时随地的访问到局域网内的seafile服务器,让seafile真正成为私有云盘。

3. cpolar内网穿透

3.1 Cpolar下载安装

首先,我们需要在安装了seafile server的电脑上安装cpolar内网穿透软件。我们可以在cpolar的官网(https://www.cpolar.com/)上找到对应操作系统版本的cpolar软件。

20230329090613

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

20230329090614

Cpolar内网穿透下载完成后,将下载的压缩包解压,再双击.msi文件,就能进入cpolar的安装程序,我们直接Next即可完成安装。

20230329090615

20230329090616

3.2 Cpolar的注册

由于cpolar会为每个用户建立单独的数据隧道,并且通过用户密码和用户单独生成的token码,保证每个用户的数据安全,因此我们还需要在官网注册自己的账户。而注册程序也很简单,只要在官网右上点击用户注册,即可进入新用户注册界面。

20230329090617

20230329090618

在填入所需信息后,即可点击创建账号完成新用户注册。

3.3 Cpolar云端设置

完成了seafile设置,安装并注册好cpolar,剩下的工作就很简单,只要使用cpolar内网穿透建立一条数据隧道,将cpolar生成的数据隧道的入口与本地电脑的seafile server端口连接起来,就能构成一条专属于与seafile的内网穿透数据隧道,让我们能随时随地访问到本地seafile server。

由于私有云盘调取文件的需求随时可能发生,而笔者又懒得每天设置一次数据隧道(免费版cpolar创建的数据隧道每24小时会重置一次),所以笔者将cpolar升级至vip版,以便能保留能长期稳定存在的数据隧道。

升级cpolar至vip后,我们首先登录cpolar云端,在客户主界面左侧找到预留按钮,点击进入预留页面,找到保留

20230329090619

20230329090620

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

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

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

20230329090621

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

20230329090622

3.4 Cpolar本地设置

完成cpolar云端的设置后,能够穿透局域网的数据隧道就完成了一半。接下来我们回到本地电脑,登录cpolar内网穿透的客户端(可以在浏览器中输入localhost:9200,也可以在开始菜单中点击cpolar的快捷方式)

20230329090623

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

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

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

20230329090624

完成cpolar客户端创建隧道所需信息的填写后,就可以点击页面下方的创建按钮,完成穿透本地局域网的数据隧道,让我们能在公共互联网上访问到本地seafile server。

隧道创建完成后,cpolar会自动转入隧道管理——隧道列表页面,在这个页面我们能对已经创建的隧道进行管理,如启动、暂停、删除;如果需要对这条数据隧道的信息进行修改,也可以在这里点击编辑按钮,进入数据隧道信息修改页面。

20230329090625

4.公网访问测试

最后一步,我们点击cpolar客户端左侧状态——在线隧道列表,进入在线隧道列表页面,从这里获取能够连接本地seafile server的公共互联网访问地址。

20230329090626

我们只要将这个地址粘贴到其他设备的浏览器中,就能访问到seafile的服务器。

20230329090627

当然,我们也能使用这个地址,从seafile的各种版本客户端,访问到seafile的服务器。

20230329090628

20230329090629

5.结语

到这里,我们就完成了将本地seafile打造成为私有云盘的全部操作,我们可以自由的通过cpolar创建的内网穿透数据隧道,轻松访问到局域网内的seafile服务器,并从中调取所需的资料和文件。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

固态存储是未来|浅析SSD架构的演进与创新技术-2

除了性能和容量这两个最大的诉求外,其他的需求已经成为SSD现场架构的核心竞争力。 一是安全性:随着数据安全威胁日益严重,SSD的安全设计成为关键,包括提供单芯片硬件信任根、遵循FIPS140-3安全标准以及支持一次性可编程位字段来锁…

MATLAB:一些杂例

a 2; b 5; x 0:pi/40:pi/2; %增量为pi/40 y b*exp(-a*x).*sin(b*x).*(0.012*x.^4-0.15*x.^30.075*x.^22.5*x); %点乘的意义 z y.^2; %点乘的意义 w(:,1) x; %组成w,第一列为x w(:,2) y; %组成w,第二列为y w(:,3) z; %组成w,第三列为z…

英国伦敦交易所股票清单列表数据API接口

# Restful API https://tsanghi.com/api/fin/stock/XLON/list?token{token}更新时间:收盘后3~4小时。 更新周期:每天。 请求方式:GET。 # 测试:返回不超过10条数据(2年历史) https://tsanghi.com/api/fin/…

GPT3.5、GPT4及Midjourney中转接口ChatGPT系统KEY使用方法

很多使用ChatGPT系统、还有SparkAi、NineAi等系统都存在个比较烦的问题,Openai API 3.5KEY 4.0KEY,Midjourney接口KEY都没有一个稳定的购买或者使用渠道。直连KEY买来还得得建立反代主机,Midjourney接口通过MJ-PROXY-PLUS系统折腾了几天也能使…

AlipayHK香港支付宝如何绑定香港卡?

想使用香港支付宝,那需要绑定香港卡,我这里使用的是438357,看下图 开卡地址,点击获取 开卡步骤按照图片步骤即可 这里要注意的是,一定要用香港网络才行,因为每个人的网络环境不一样,自己考虑清…

如何在代理的IP被封后立刻换下一个IP继续任务

目录 前言 1. IP池准备 2. 使用代理IP进行网络请求 3. 处理IP被封的情况 4. 完整代码示例 总结 前言 当进行某些网络操作时,使用代理服务器可以帮助我们隐藏真实IP地址以保护隐私,或者绕过一些限制。然而,经常遇到的问题是代理的IP可能…

qt vs 编程 字符编码 程序从源码到编译到显示过程中存在的字符编码及隐藏的字符编码转换

理解字符编码,请参考:unicode ucs2 utf16 utf8 ansi GBK GB2312 CSDN博客 了解windows字符显示必须了解locale概念 参考:揭密 Windows 上的各种 locale - 知乎 汉字(或者说多字节字符)的存放需求,是计算…

一文总结CNN中【各类卷积】操作

本文详细总结CNN中各类卷积,旨在指导 domain-specific 更好的模型设计,包括标准卷积,分组卷积(Group Conv),深度可分离卷积(Depthwise Separable Conv),转置卷积&#xf…

pytorch之诗词生成--2

先上代码: # -*- coding: utf-8 -*- # File : dataset.py # Author : AaronJny # Time : 2019/12/30 # Desc : 构建数据集 from collections import Counter import math import numpy as np import tensorflow as tf import settingsclass Tokenizer:""&…

【敬伟ps教程】视频动画

文章目录 视频文档视频时间轴帧动画视频文档 工作区需由[基本功能]切换为[动感] 可以看到我们需从时间的维度来编辑动态视觉图像 时间轴:从时间的维度来编辑动态视觉图像 PS提供的时间轴有两种:1、视频时间轴;2、动画时间轴 新建视频文档,点击新建或Ctrl+N,预设选择“胶…

NCV1117ST50T3G线性稳压器芯片中文资料规格书PDF数据手册引脚图图片价格参数

产品概述: NCP1117系列为低压差(LDO)正向线性电压稳压器,能够提供超过1.0A的输出电流,800mA时温度范围内最大压差为1.2V。这一系列包括八个固定输出电压:1.5V、1.8V、2.0V、2.5V、2.85V、3.3V、5.0V 和 12…

LeetCode刷题小记 八、【回溯算法】

1.回溯算法 文章目录 1.回溯算法写在前面1.1回溯算法基本知识1.2组合问题1.3组合问题的剪枝操作1.4组合总和III1.5电话号码的字母组合1.6组合总和1.7组合总和II1.8分割回文串1.9复原IP地址1.10子集问题1.11子集II1.12非递减子序列1.13全排列1.14全排列II1.15N皇后1.16解数独 写…

代码贴--动态顺序表--数据结构

本博客将记录操作系统中的动态顺序表的相关代码 头文件&#xff08;SeList.h&#xff09; #pragma once #include<stdio.h> #include<string.h> #include<stdlib.h> #include<assert.h> typedef int SQDataType; //动态顺序表typedef struct SeqList…

可视化展示与交互编辑:探索3D Web轻量化平台HOOPS WEB Platform在BIM中的新可能性

随着数字技术的飞速发展&#xff0c;建筑行业也在不断迈向数字化转型的道路。在这个过程中&#xff0c;BIM&#xff08;Building Information Modeling&#xff0c;建筑信息模型&#xff09;技术已经成为建筑设计、施工和管理领域中的一项重要工具。 而在BIM的应用中&#xff…

Javascript抓取京东、淘宝商品数据(商品采集商品详情图片抓取)

之前用的方法&#xff1a; let temp []var lists $(#J_goodsList li.gl-item)$.each(lists,function(idx,item){ temp.push({ id:$(item).data(sku), goods_img:$(item).find(img).attr(src), goods_name:$(item).find(.p-name em).text(), market_price:$(item).fi…

C++:函数传参到函数执行结束发生了什么

首先要明确两个概念 函数实参的入栈从右向左栈区从高地址向低地址偏移 接下来看下面一段代码 void fun(int a,int b,int c){std::cout<<&a<<" "<<&b<<" "<<&c<<std::endl; } int main(){fun(1,2,3); }…

中国首个基于区块链的分布式算力网络上线

随着美国人工智能公司OpenAI近期发布的Sora视频模型&#xff0c;全球对高性能算力的需求突破了历史新高。Sora的创新在于它能够以超长生成时间、多角度镜头捕捉&#xff0c;理解物理世界的能力&#xff0c;这不仅是技术的一大突破&#xff0c;更是对算力需求的一大挑战。在这样…

Qt教程 — 3.3 深入了解Qt 控件:Input Widgets部件(2)

目录 1 Input Widgets简介 2 如何使用Input Widgets部件 2.1 QSpinBox组件-窗口背景不透明调节器 2.2 DoubleSpinBox 组件-来调节程序窗口的整体大小 2.3 QTimeEdit、QDateEdit、QDateTimeEdit组件-编辑日期和时间的小部件 Input Widgets部件部件较多&#xff0c;将分为三…

基于Python django的人脸识别门禁系统,附源码

博主介绍&#xff1a;✌程序员徐师兄、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、Python技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&…

报Invalid value type for attribute ‘factoryBeanObjectType‘: java.lang.String错误

在springboot中使用Mybatis出现Invalid value type for attribute factoryBeanObjectType: java.lang.String 1、没有使用mybatis 检查pom文件里面的mybatis 可能是缺少这个依赖&#xff0c;或者版本过低 重新导入依赖 <dependency><groupId>org.mybatis.spri…