以下是AList的一些常见配置教程,仅作为个人记录和学习使用

挂载Baidu网盘

挂载Google Drive

挂载本地

  • 我们插上U盘,在System → MountPoint可以看到U盘/dev/sda1被挂载到了/mnt/sda1
  • 进入AList前端页面 → Manage → Storages → Add,Driver选择Local
  • Mount Path随便填,我使用了/local
  • Root folder path填mnt/sda1,这样回到主页面就能访问到U盘的内容了

使用Cloudflared公网访问AList服务

AList服务用来管理网盘是非常方便的,同时AList还允许挂载本机的文件。这让我突然想起一个场景,假如我和小伙伴出去玩用单反拍了许多照片,体积非常大,分享这些照片就非常麻烦了,如果上传到百度云,那么小伙伴下载完不知道要等多久,而且也没开其他云的会员账号。

假如使用AList挂载本地的SD卡,再让小伙伴访问我的AList服务不就解决问题了嘛。但是如何让小伙伴在家也能访问我的OpenWrt呢,可以使用Cloudflare的内网穿透服务。

本教程参考:【韩风Talk】这期玩Alist的网络安全防护,随便折腾一下免费的内网穿透 哔哩哔哩_bilibili

前置条件

  • 需要一个域名
  • OpenWrt安装luci-app-cloudflared

配置

  • 首先在Cloudflare开启Zero Trust,选择免费版即可

  • 在LuCI开启Cloudflared服务,位于VPN → Cloudflare Zero Trust Tunnel,勾选Enable

  • ssh登录到OpenWrt,运行

    cloudflared tunnel login
    

    点击显示的连接,登录

  • 登录成功后会下载一个授权证书,位于/root/.cloudflared/cert.pem,我们把授权证书复制到cloudflared的配置文件夹下

    cp /root/.cloudflared/cert.pem /etc/cloudflared
    
  • 创建隧道,后面是隧道名称,可以随便填

    cloudflared tunnel create alist
    
  • 创建完成之后,会在之前的文件夹(/root/.cloudflared/cert.pem)创建一个.json文件,把它也复制到cloudflared的配置文件夹中

    cp /root/.cloudflared/xxx.json /etc/cloudflared
    
  • 进入cloudflared配置文件夹(/etc/cloudflared),修改config.yml

    # url: http://localhost:8000
    tunnel: <Tunnel-UUID>
    credentials-file: /etc/cloudflared/<Tunnel-UUID>.json
    

    <Tunnel-UUID>替换为刚才的.json文件名

  • 重启cloudflared服务

    /etc/init.d/cloudflared restart
    
  • 回到Cloudflare官网,Zero Trust → Networks → Tunnels就能找到刚才创建的隧道了,我们点击Edit,把本地配置迁移到云端,一直点击Confirm即可

  • 迁移完成后,重新点击Edit,进入Public Hostname,我们添加一个子域名,Type选择HTTP协议,URL就是局域网内AList服务器的地址和端口。

  • 这样就可以直接在公网通过域名访问家中的服务器了

  • 还有一些其他的安全配置

    • Cloudflare → SSL/TLS → Overview → Configure encryption mode,选择Full
    • Cloudflare → SSL/TLS → Edge Certificates → Always Use HTTPS,选择True
    • 开启2FA