百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

使用NAS或服务器搭建Alist,手机和电脑轻松实现远程访问

off999 2025-03-03 19:49 16 浏览 0 评论

一、NAS搭建Alist教程

1. 搭建准备事项与费用

项目

准备事项

费用参考(人民币)

硬件设备

群晖、威联通等支持Docker的NAS设备(需具备存储空间)

已有设备无需额外费用

软件工具

群晖Docker套件、SSH工具(如Finalshell、Xshell、PuTTY等)

免费

网络环境

NAS需接入局域网,并开放Web服务端口(如5244)

权限配置

创建共享文件夹,并赋予Alist容器读写权限(群晖需配置用户alist3权限)

2. 硬件与网络环境配置

(1)NAS基础要求

  • 存储空间:至少预留10GB空间用于Alist数据存储。
  • 内存:建议2GB以上(Docker运行需要资源)。
  • 系统版本:群晖DSM 7.0+、威联通QTS 5.0+(需支持Docker)。

(2)网络配置

  • 在路由器中为NAS分配固定内网IP(如192.168.1.100),避免IP变动导致访问失败。
  • 开放端口:进入NAS防火墙设置,允许TCP端口5244(Alist默认端口)。

3. 详细搭建步骤(以群晖NAS为例)

步骤1:安装Docker套件

  1. 登录群晖DSM后台,进入“套件中心”。
  2. 搜索“Docker”并安装,完成后在“主菜单”中打开Docker应用。

步骤2:拉取Alist镜像

  1. 在Docker的“注册表”中搜索xhofe/alist,双击下载最新版本镜像。
  2. 等待下载完成(约300MB,耗时5-10分钟)。

步骤3:创建并配置容器

  1. 进入“映像”列表,双击xhofe/alist镜像启动容器。
  2. 容器设置

容器名称:自定义(如Alist)。.

资源限制:CPU优先级“高”,内存限制设为512MB。

  1. 端口设置:本地端口:5244 → 容器端口:5244(必须一致)。
  2. 存储卷设置:点击“添加文件夹”,选择NAS本地路径(如/volume1/Alist)。挂载路径填写容器内目录:/opt/alist/data(用于持久化存储配置)。
  3. 环境变量:无需修改,直接下一步。

步骤4:启动容器并获取密码

  1. 完成配置后启动容器,进入“容器”列表查看状态(显示“运行中”表示成功)。
  2. 打开“终端机”功能,输入以下命令获取管理员密码:
docker exec -it Alist ./alist admin random

输出示例:

admin密码:zT9KpL2qR7

步骤5:访问Alist后台

  1. 在浏览器输入http://NAS内网IP:5244(如http://192.168.1.100:5244)。
  2. 使用用户名admin和上一步获取的密码登录。

4. 挂载本地存储与网盘

(1)添加本地存储

  1. 在Alist后台点击“存储” → “添加” → 选择“本机存储”。
  2. 填写挂载路径(如/本地文件),存储路径填写容器内映射目录(如/opt/alist/data)。
  3. 点击“保存”后,刷新页面即可查看本地文件。

(2)绑定阿里云盘

  1. 获取阿里云盘refresh_token:访问阿里云盘开放平台,登录后按F12打开开发者工具。在“Application” → “Local Storage”中找到token字段,复制refresh_token值。
  2. 在Alist后台添加存储,选择“阿里云盘Open”,粘贴refresh_token并设置挂载路径(如/阿里云盘)。

5. 远程访问配置

方案1:公网IP+端口转发

  1. 在路由器中配置端口转发:外部端口5244 → 内部端口5244(指向NAS内网IP)。
  2. 通过http://公网IP:5244访问(需运营商支持公网IP)。

方案2:内网穿透工具(如ZeroTier)

  1. 注册ZeroTier账号并创建虚拟网络。
  2. 在NAS中安装ZeroTier套件,加入虚拟网络ID。
  3. 通过ZeroTier分配的虚拟IP(如192.168.192.100)访问Alist。

二、服务器搭建Alist教程

1. 搭建准备事项与费用

项目

准备事项

费用参考(人民币)

服务器选择

云服务器(推荐腾讯云、阿里云ECS等,配置1核1G以上)

约50-200元/年(低配)

系统环境

Linux系统(Ubuntu/CentOS)或Windows Server

免费(系统自带)

软件工具

Docker、SSH工具(Finalshell、Xshell、PuTTY)、域名(可选)

域名约10-50元/年

网络配置

开放服务器防火墙端口(5244、5678等),支持IPv6(可选)

2. Linux服务器详细搭建流程

步骤1:安装Docker环境

# Ubuntu/CentOS通用命令
curl -fsSL https://get.docker.com | bash -s docker
systemctl start docker
systemctl enable docker

步骤2:一键部署Alist

# 使用官方脚本安装
curl -fsSL "https://alist.nn.ci/v3.sh" | bash -s install

安装完成后,脚本会自动创建/opt/alist目录并配置服务。

步骤3:启动服务与获取密码

# 启动服务
systemctl start alist
# 查看运行状态
systemctl status alist
# 获取随机密码
/opt/alist/alist admin random

步骤4:配置防火墙

# 开放5244端口(以UFW为例)
ufw allow 5244/tcp
ufw reload

3. Windows服务器搭建流程

步骤1:下载Alist Windows版

  1. 访问Alist GitHub Releases,下载alist-windows-amd64.zip。
  2. 解压到C:\Alist目录。

步骤2:启动Alist服务

  1. 打开CMD,进入解压目录:
cd C:\Alist
alist.exe server
  1. 首次运行会生成初始密码,记录日志中的password字段。

步骤3:注册为系统服务(实现开机自启)

  1. 下载nssm工具,解压后以管理员身份运行nssm.exe。
  2. 在GUI界面配置:Path:C:\Alist\alist.exeArguments:server点击“Install Service”完成注册。

4. 远程访问高级配置

方案1:域名+HTTPS加密(需域名)

  1. 购买域名(如腾讯云、Namesilo),解析到服务器公网IP。
  2. 安装Nginx并配置反向代理:
server {
    listen 80;
    server_name alist.yourdomain.com;
    location / {
        proxy_pass http://127.0.0.1:5244;
    }
}
  1. 使用Certbot申请免费SSL证书:
certbot --nginx -d alist.yourdomain.com

方案2:IPv6动态解析(无公网IPv4时)

  1. 安装ddns-go工具:
docker run -d --name ddns-go --net=host jeessy/ddns-go
  1. 访问http://服务器IP:9876,选择DNS服务商(如Cloudflare),填写API密钥和域名。

三、成本优化与安全加固

1. 费用节省技巧

  • 云服务器:选择“突发性能实例”(如阿里云t5,约60元/年)。
  • 域名:使用.xyz等低价域名(首年约10元),xyz数字域名续费同价。
  • 内网穿透:使用开源工具如frp替代付费服务。

2. 安全防护措施

  • 修改默认端口:将Alist端口从5244改为非常用端口(如45678)。
  • 限制IP访问:在Nginx配置中仅允许特定IP段:
allow 192.168.1.0/24;
deny all;
  • 定期备份:使用tar命令打包/opt/alist/data目录并上传至云存储。

四、常见问题解答

Q1:Alist无法启动怎么办?

  • 检查端口冲突:netstat -tuln | grep 5244
  • 查看日志:journalctl -u alist -f

Q2:如何更新Alist版本?

  • Docker方案:删除旧容器,重新拉取最新镜像。
  • 脚本安装:运行curl -fsSL "https://alist.nn.ci/v3.sh" | bash -s update

Q3:远程访问速度慢?

  • 启用CDN加速(需域名备案)。
  • 更换内网穿透节点(如cpolar付费版)。

五、总结

本教程详细覆盖了NAS与服务器的Alist部署全流程,并提供了多种远程访问方案和成本优化建议。无论是家庭用户还是企业团队,均可根据需求选择最适合的配置方案,快速构建私有云存储服务。

相关推荐

Python钩子函数实现事件驱动系统(created钩子函数)

钩子函数(HookFunction)是现代软件开发中一个重要的设计模式,它允许开发者在特定事件发生时自动执行预定义的代码。在Python生态系统中,钩子函数广泛应用于框架开发、插件系统、事件处理和中...

Python函数(python函数题库及答案)

定义和基本内容def函数名(传入参数):函数体return返回值注意:参数、返回值如果不需要,可以省略。函数必须先定义后使用。参数之间使用逗号进行分割,传入的时候,按照顺序传入...

Python技能:Pathlib面向对象操作路径,比os.path更现代!

在Python编程中,文件和目录的操作是日常中不可或缺的一部分。虽然,这么久以来,钢铁老豆也还是习惯性地使用os、shutil模块的函数式API,这两个模块虽然功能强大,但在某些情况下还是显得笨重,不...

使用Python实现智能物流系统优化与路径规划

阅读文章前辛苦您点下“关注”,方便讨论和分享,为了回馈您的支持,我将每日更新优质内容。在现代物流系统中,优化运输路径和提高配送效率是至关重要的。本文将介绍如何使用Python实现智能物流系统的优化与路...

Python if 语句的系统化学习路径(python里的if语句案例)

以下是针对Pythonif语句的系统化学习路径,从零基础到灵活应用分为4个阶段,包含具体练习项目和避坑指南:一、基础认知阶段(1-2天)目标:理解条件判断的逻辑本质核心语法结构if条件:...

[Python] FastAPI基础:Path路径参数用法解析与实例

查询query参数(上一篇)路径path参数(本篇)请求体body参数(下一篇)请求头header参数本篇项目目录结构:1.路径参数路径参数是URL地址的一部分,是必填的。路径参...

Python小案例55- os模块执行文件路径

在Python中,我们可以使用os模块来执行文件路径操作。os模块提供了许多函数,用于处理文件和目录路径。获取当前工作目录(CurrentWorkingDirectory,CWD):使用os....

python:os.path - 常用路径操作模块

应该是所有程序都需要用到的路径操作,不废话,直接开始以下是常用总结,当你想做路径相关时,首先应该想到的是这个模块,并知道这个模块有哪些主要功能,获取、分割、拼接、判断、获取文件属性。1、路径获取2、路...

原来如此:Python居然有6种模块路径搜索方式

点赞、收藏、加关注,下次找我不迷路当我们使用import语句导入模块时,Python是怎么找到这些模块的呢?今天我就带大家深入了解Python的6种模块路径搜索方式。一、Python模块...

每天10分钟,python进阶(25)(python进阶视频)

首先明确学习目标,今天的目标是继续python中实例开发项目--飞机大战今天任务进行面向对象版的飞机大战开发--游戏代码整编目标:完善整串代码,提供完整游戏代码历时25天,首先要看成品,坚持才有收获i...

python 打地鼠小游戏(打地鼠python程序设计说明)

给大家分享一段AI自动生成的代码(在这个游戏中,玩家需要在有限时间内打中尽可能多的出现在地图上的地鼠),由于我现在用的这个电脑没有安装sublime或pycharm等工具,所以还没有测试,有兴趣的朋友...

python线程之十:线程 threading 最终总结

小伙伴们,到今天threading模块彻底讲完。现在全面总结threading模块1、threading模块有自己的方法详细点击【threading模块的方法】threading模块:较低级...

Python信号处理实战:使用signal模块响应系统事件

信号是操作系统用来通知进程发生了某个事件的一种异步通信方式。在Python中,标准库的signal模块提供了处理这些系统信号的机制。信号通常由外部事件触发,例如用户按下Ctrl+C、子进程终止或系统资...

Python多线程:让程序 “多线作战” 的秘密武器

一、什么是多线程?在日常生活中,我们可以一边听音乐一边浏览新闻,这就是“多任务处理”。在Python编程里,多线程同样允许程序同时执行多个任务,从而提升程序的执行效率和响应速度。不过,Python...

用python写游戏之200行代码写个数字华容道

今天来分析一个益智游戏,数字华容道。当初对这个游戏颇有印象还是在最强大脑节目上面,何猷君以几十秒就完成了这个游戏。前几天写2048的时候,又想起了这个游戏,想着来研究一下。游戏玩法用尽量少的步数,尽量...

取消回复欢迎 发表评论: