文章目录
一、前言
Nextcloud 是 ownCloud 的一个分支,是一个文件共享服务器,允许您将个人内容(如文档和图片)存储在一个集中的位置,就像 Dropbox一样。与 Nextcloud 的不同之处在于,它的所有功能都是开源的。它还将敏感数据的控制和安全返回给您,从而消除了对第三方云托管服务的使用。
在本教程中,我们将在 Ubuntu 服务器上安装和配置 Nextcloud 实例。
我们将使用 Snap 包装系统安装 Nextcloud。默认情况下,Ubuntu 22.04上提供了这个打包系统,允许组织在一个具有自动更新功能的独立单元中发布软件,以及所有相关的依赖项和配置。这意味着,我们可以安装 snap 软件包,自动处理底层系统,省去了配置 web 和数据库服务器,然后配置 Nextcloud 应用程序在其上运行,下载 Nextcloud snap 软件包并将其安装在系统上。
二、环境搭建
- 安装 snap
sudo apt-get install snapd
- 安装 snapcraft
sudo apt-get install snapcraft
- 安装 NextCloud
sudo snap install nextcloud
- 启动 nextcloud
使用以下启动nextcloud
启动: sudo snap start nextcloud
停止: sudo snap stop nextcloud
三、测试局域网访问
打开浏览器,使用局域网ip地址访问,出现nextcloud界面表示成功,注意首次安装需要创建设置管理员账号,用户名和密码,设置完成点击安装即可。
安装成功后即可正常访问
四、执行内网穿透
由于这个 nextcloud 目前只能在本地被访问到,为了使远程都可以访问,我们需要将设置将改服务发布到公网。这里我们可以通过 cpolar 内网穿透工具来实现,它支持 http / https / tcp协议,无需公网 IP ,也不用设置路由器,可以很容易将本地站点发布到公网供远程访问。
4.1 ubuntu 本地安装 cpolar
- cpolar 安装(国内使用)
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
如果使用国外镜,可以选择如下命令:
curl -sL https://git.io/cpolar | sudo bash
- 查看版本号,有正常显示版本号即为安装成功
cpolar version
- 进行 token 认证
cpolar version
登录 cpolar 官网后台,点击左侧的验证,查看自己的认证 token,之后将 token 贴在命令行里
cpolar authtoken xxxxxxx
- 简单穿透测试,有正常生成相应的公网地址即为穿透成功
cpolar http 8080
- 将 cpolar 添加到系统服务
sudo systemctl enable cpolar
- 启动 cpolar 服务
sudo systemctl start cpolar
- 查看服务状态
sudo systemctl status cpolar
4.2 创建隧道
cpolar 安装成功之后,在浏览器上访问本地或者局域网 ip 的9200
端口,使用 cpolar 邮箱账号登录 cpolar web UI 管理界面。
点击左侧仪表盘的隧道管理——创建隧道:
- 隧道名称:可自定义,注意不要重复
- 协议:http
- 本地地址:80
- 端口类型:随机域名
- 地区:China vip
点击创建,如下图:
隧道创建成功后,点击左侧的状态——在线隧道列表,可以看到刚刚创建的隧道已经有生成了相应的公网地址,将其复制下来,接下来测试访问一下。
4.3 测试公网访问
打开浏览器访问刚刚所复制的公网地址,出现以下信息:通过不被信任的域名访问。这个问题是 nextcloud 限制了访问的方式,只支持局域网 ip 进行访问
解决方法:添加访问方式:...,表示不限制访问方式
sudo nextcloud.occ config:system:set trusted_domains 1 --value=*.*.*.*
然后重启 nextcloud
sudo snap restart nextcloud
然后再次使用公网地址访问即可:
五、配置固定 http 公网地址
由于以上所创建的隧道选择的是随机域名,所生成的公网地址会在24小时内随机变化,对于需要长期访问来讲较为不方便。不过我们可以为其配置一个固定的二级子域名来进行访问,改地址不会随机变化。
注意:配置固定二级子域名功能需要升级至基础版套餐或以上才支持。
5.1 保留一个二级子域名
登录cpolar官网后台,点击左侧的预留,找到保留二级子域名:
- 地区:选择China VIP
- 二级域名:可自定义填写
- 描述:即备注,可自定义填写
点击保留
提示子域名保留成功,复制所保留的二级子域名
5.2 配置固定二级子域名
访问本地 9200 端口登录 cpolar web UI 管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑
修改隧道信息,将保留成功的二级子域名配置到隧道中
- 域名类型:选择二级子域名
- Sub Domain:填写保留成功的二级子域名,本例为:nextcloudwbsite
点击更新
提示更新隧道成功,点击左侧仪表盘的状态——在线隧道列表,可以看到公网地址已经更新为保留成功的二级子域名,将其复制下来。
5.3 测试访问公网固定二级子域名
我们使用任意浏览器,输入刚刚配置成功的公网固定二级子域名就可看到我们的 nextcloud,且该地址不会再随机变化了。
六、文末总结
本文介绍了如何使用 Nextcloud 搭建私人云盘,并通过内网穿透实现公网远程访问。文章首先进行了前言,介绍了本文要解决的问题和目标。然后,详细阐述了环境搭建的步骤,包括安装和配置 Nextcloud,为搭建私人云盘做准备。
在环境搭建完成后,文章进行了测试局域网访问的步骤,确保在局域网中可以正常访问 Nextcloud 服务。接着,介绍了如何执行内网穿透,使用 cpolar 在 Ubuntu 上进行安装和配置,并创建隧道以实现公网访问。最后,进行了测试,验证了公网访问的可行性。
此外,文章还介绍了如何配置固定的 HTTP 公网地址。通过保留一个二级子域名并进行相应的配置,实现了公网固定地址的访问。最后,进行了测试,确保配置的正确性。
通过本文提供的指导和步骤,读者可以成功搭建私人云盘,并实现公网远程访问。这为个人和组织提供了方便、安全的云存储解决方案,使用户能够随时随地访问和管理自己的文件。