Linux nextcloud 个人网盘部署

Linux nextcloud 个人网盘部署

  • 一级目录
    • 二级目录
      • 三级目录
  • 1.安装nextcloud
  • 2.配置nextcloud
  • 3.网络与安全设置
    • 3.1 修改个人服务器nextcloud的服务端口
    • 3.2 防火墙
    • 3.3 配置信任域
      • 方式一 :通过命令添加单个ip到信任域
      • 方式二:编辑配置文件,取消信任域限制(允许任意ip访问)
    • 3.4 ipv6访问
    • 3.5 域名访问

一级目录

二级目录

三级目录

云服务器、家庭服务器部署nextcloud,只需三步✅

1.安装nextcloud

1.1准备工作

更新apt软件目录

sudo apt update

安装/更新snap商店

sudo apt install snapd

1.2 从snap商店安装nextcloud

sudo snap install nextcloud

2.配置nextcloud

2.1 设置nextcloud管理员用户名和密码

sudo nextcloud.manual-install 你的用户名 你的密码

现在可以在nextcloud服务器主机上使用浏览器输入 127.0.0.1 访问nextcloud。

Linux nextcloud 个人网盘部署_第1张图片

或者在其他计算机上通过局域网访问(查询局域网ip的方法就不在这里赘述了)
Linux nextcloud 个人网盘部署_第2张图片

3.网络与安全设置

3.1 修改个人服务器nextcloud的服务端口

修改默认端口不是必须,但是80端口容易受到网络攻击,害怕遭到网络攻击的话可以改一下端口。

使用编号大于60000的端口,避免覆盖特殊功能端口,比如60001

示例将端口修改成60001

sudo snap set nextcloud ports.http=60001

注意:修改为80之外的任意端口,浏览器访问nextcloud时都需要在使用 ip:端口号 的形式才可以成功访问。比如

127.0.0.1:60001

如图,加上端口成功访问
Linux nextcloud 个人网盘部署_第3张图片

不加端口信息是不能成功访问的(加了也不能访问就是防火墙的原因了)
Linux nextcloud 个人网盘部署_第4张图片

3.2 防火墙

  • 安装防火墙
sudo apt install ufw
  • 查看防火墙状态
sudo ufw status

如图:我的防火墙当前处于关闭状态
在这里插入图片描述

  • 启动防火墙
sudo ufw enable

再次查看状态:我的防火墙已经打开,并放行了22(ssh服务)端口。
Linux nextcloud 个人网盘部署_第5张图片

现在由于防火墙的保护,无法通过网络访问nextcloud了
Linux nextcloud 个人网盘部署_第6张图片

  • 在防火墙中放行nextcloud服务端口(换成你设置的端口号,默认的是80)
sudo ufw allow 60001

截图
在这里插入图片描述

添加成功后可以查看防火墙状态,或者试试局域网能否访问nextcloud

3.3 配置信任域

信任域是nextcloud的安全机制,只有当你的主机(也可能是手机或者其他设备)的ip处于信任域中的才能够成功登录nextcloud。nextcloud只允许信任域中的设备访问。

方式一 :通过命令添加单个ip到信任域

sudo nextcloud.occ config:system:set trusted_domains 1 --value=您的IP地址或域名

方式二:编辑配置文件,取消信任域限制(允许任意ip访问)

  • 修改nextcloud配置文件 config.php,通过snap安装的是在这个目录
$ cd /var/snap/nextcloud/current/nextcloud/config
$ ls
autoconfig.php  config.old  config.php  config.sample.php
$ sudo vim config.php
  • 修改trusted_domains内容
    Linux nextcloud 个人网盘部署_第7张图片

修改前

  'trusted_domains' =>
  array (
    0 => 'localhost',
    1 => 'localhost',
  ),

修改后

  'trusted_domains' =>
  array (
    0 => 'localhost',
    1 => preg_match('/cli/i',php_sapi_name())?'localhost':$_SERVER['SERVER_NAME'],
  ),

3.4 ipv6访问

  • 测试ipv6支持

打开测试网站 IPv6 测试

如果测试结果是这样的,你的设备支持ipv6网络,就可以使用ipv6远程访问nextcloud
Linux nextcloud 个人网盘部署_第8张图片

  • 查看nextcloud主机的ipv6地址
ip a

广域网ipv6地址一定是在 scope global dynamic mngtmpaddr noprefixroute
Linux nextcloud 个人网盘部署_第9张图片

  • 访问IPv6需要再地址两端加上方括号
    假设你的nextcloud主机ipv6地址为 2409:8a62:82f:2612:f805:a724:ad31:d3d7
    你的nextcloud服务端口号为 60001,
    在任意设备上通过互联网登录nextcloud,浏览器输入地址:
[2409:8a62:82f:2612:f805:a724:ad31:d3d7]:60001

ipv6访问成功
Linux nextcloud 个人网盘部署_第10张图片

3.5 域名访问

还可以注册一个域名,通过域名登录,比如 www.myclould.com

只讲一下步骤:

  • 注册域名(实名注册,还要备案的):在腾讯、阿里、华为网站都有域名注册服务,买域名简单,备案稍微麻烦。
  • DDNS动态域名解析(ipv6地址发生改变的时候自动将新地址解析到DNS服务器)

域名+DDNS真的很好用,真的很需要!永远不需要记忆ipv6地址!永远不需要担心ipv6地址变化!
Linux nextcloud 个人网盘部署_第11张图片


  • 注意网络安全,密码不要太简单!

本文参考,感谢作者:

【NextCloud】私人云盘搭建指南-摆脱国内网盘梦魇_哔哩哔哩_bilibili

Ubuntu安装NextCloud相关命令_LuckyNiuJY的博客-CSDN博客

史上最全网络端口号汇总,收藏! - 知乎

Ubuntu 22.04 LTS - 开放端口,删除已经开放的端口_ufw 删除端口_好好活着,不要熬夜的博客-CSDN博客

你可能感兴趣的:(linux,运维,服务器,学习)