很多人使用雲端硬碟的方式,其實都是一路累積出來的。工作資料在 OneDrive,個人文件在 Google Drive,朋友共享資料夾在 Dropbox,伺服器備份可能丟在 S3 物件儲存或 WebDAV,內部檔案又散在 NAS 的 SMB 共享資料夾裡,家裡的照片和影片放在 NAS 上、付費買的雲端服務上等等。久了之後,臨時想找個檔案,發現找不到,儘管知道檔案還存在噢,但是不知道在哪個雲,這種困擾,相信你也有過吧?
這時候,QNAP NAS 可以扮演的角色就不只是備份機,而是一個專屬的資料入口。透過 OpenList 這個開放原始碼專案,我們可以把散佈在各處的雲端硬碟、物件儲存、遠端伺服器與 NAS 本機資料夾,全部通通掛載到同一個 Web 介面下管理。部署在 QNAP 上的 Docker (容器工作站) 後,可以在單一 Web 介面看到所有的儲存空間,進行跨雲端的檔案搬移、複製與集中管理。
OpenList 本身支援多種儲存來源,包括本機儲存、OneDrive/SharePoint、Google Drive、FTP/SFTP、Amazon S3、GCP 等標準物件儲存、WebDAV、SMB、Dropbox、GitHub、Google photo、Mega.nz、Azure Blob 等,也提供檔案預覽、影音預覽、Office 文件預覽、離線下載與跨儲存複製等能力。
這和我們之前在這一篇 你的雲端資料真的有被備份到嗎?Backblaze 悄悄排除 OneDrive 與 Dropbox 備份引爆社群危機 中介紹過的 Rclone 是不同屬性和需求的專案,它的設定更為複雜一點,但相對功能也很完整。
為什麼選 OpenList,而不是老字號的 AList?
AList 仍然是這類工具的代表性專案,GitHub 星數與歷史使用者基礎都明顯更大,目前仍有持續釋出版本,但如果是要放在 QNAP NAS 上長期運作,作為小型組織的雲端硬碟整合入口,信任與治理絕對會比單純星數更重要。OpenList 官方將自己定位為 AList 的長期治理、社群驅動分支,核心訴求是降低開源專案因維護權、API 服務或治理不透明所帶來的信任風險。
不過呢,這並不是說 AList 不能用,也不是 OpenList 在所有面向都一定勝出,若你已經有穩定的 AList 環境,不一定要急著搬遷。但鑒於 AList 原開發者 Xhofe 在 2025 年將專案的經營權與主導權出售給科技公司後,此舉引發了社群對於資料安全與隱私的嚴重擔憂,新維護者隨後提交的程式碼更新被發現包含收集用戶系統資訊信息的程式碼,使得部分網路硬碟服務平台基於安全考量撤銷了 AList 的 API 權限。所以 CyberQ 在這個領域中,如果要做自己的資料入口,比較推薦開源社群另外創建的 OpenList 的分支專案。
當你要在 NAS 建置一個自己的雲端硬碟統一管理中心,CyberQ 會建議從 OpenList 開始,其社群治理訴求更貼近自架服務的長期維護需求。OpenList 的遷移文件也提醒,若使用者擔心原 AList API 服務可能由第三方接管,應考慮解除授權或重新登入以確保安全,這是 OpenList 官方文件提出的風險說明,絕對不只是單純的社群八卦而已。
架構概念:QNAP 當底座,OpenList 當入口
這套架構可以這樣理解,QNAP NAS 負責提供穩定的本機儲存、Docker 執行環境與內網服務入口,OpenList 則負責把外部雲端硬碟與遠端儲存掛載進來。使用者之後只要打開一個網址,例如內部網路 http://NAS_IP:5244,經過帳號登入驗證後,就能看到 Google Drive、OneDrive、Dropbox、S3、WebDAV、SMB、SFTP 與 NAS 本機資料夾。
在 QNAP 上部署 OpenList,最合理的方式是透過 Container Station 的 Docker Compose 應用,它可用來安裝與集中管理 Docker/LXD 容器,也支援以 Docker Compose YAML 建立 Applications,這對 OpenList 這類單一容器服務來說很適合,後續也方便維護、升級與備份。
安裝前準備
CyberQ 建議先在 QNAP 建立一個專用資料夾,例如:
/share/CACHEDEV1_DATA/Container/openlist/data
/share/CACHEDEV1_DATA/CloudHub
第一個資料夾用來存放 OpenList 的設定檔、資料庫與快取,第二個資料夾則可作為 NAS 本機資料掛載點,之後在 OpenList 裡把它加入為「Local Storage」。實際路徑請依你的 QNAP 儲存池名稱調整,有些機器可能是 /share/Container 或其他 volume 名稱。想知道自己 QNAP NAS 中的檔案實際路線,可以終端機 SSH 連線去 QNAP NAS ,輸入 df- h 可以看到自己的目錄名稱和結構。
OpenList v4.1.0 之後的 Docker 映像移除了原本常見的 PUID、PGID 環境變數,改以容器內建的 openlist 使用者執行,UID/GID 為 1001,官方文件也提醒,使用者需要自行處理掛載目錄權限,或用 user: UID:GID 指定容器執行身分。這點在 QNAP 上很重要,因為 QNAP 的共享資料夾權限與 Linux 權限略為不同,有對應到適合 QNAP NAS 的設定。
方法一 用 QNAP Container Station 的 Applications 建立
進入 QNAP 的 Container Station,切到 Applications (應用程式),點選 Create (建立),貼上下列 Docker Compose YAML。CyberQ 簡單說明一下,Applications 是以 Docker Compose 建立的多容器資源,可以在建立時貼入 YAML 並驗證格式。
services:
openlist:
image: openlistteam/openlist:latest
container_name: openlist
user: “0:0”
ports:
– “5244:5244”
volumes:
– /share/CACHEDEV1_DATA/Container/openlist/data:/opt/openlist/data
– /share/CACHEDEV1_DATA/CloudHub:/mnt/qnap/CloudHub
environment:
– TZ=Asia/Taipei
– UMASK=022
– OPENLIST_ADMIN_PASSWORD=請改成一組高強度密碼
restart: unless-stopped
這裡先用 user: “0:0” 是為了降低 QNAP 目錄權限造成的初次部署障礙。若你要做更嚴謹的權限控管,可以改成讓資料目錄由 UID/GID 1001 擁有,並移除或調整 user 設定。OpenList 官方文件提供的 Docker Compose 範例也使用 openlistteam/openlist:latest、5244:5244、/opt/openlist/data 與 UMASK=022 這些基本設定。
CyberQ 實際使用的 YAML 設定檔如下,部署的機器是 QNAP NAS TS-855x,是 QuTS 作業系統,檔案系統為 ZFS,結構和範例請參考如下 :

services:
openlist:
image: ‘openlistteam/openlist:latest’
container_name: openlist
# 採用登入帳號的專屬權限執行,落實權限最小化
user: ‘1000:100’
volumes:
# 對應 Container 共享資料夾的 ZFS 絕對路徑
– ‘/share/ZFS18_DATA/Container/openlist/data:/opt/openlist/data’
ports:
# 綁定內部區域網路 IP,阻斷外部直連風險
– ‘192.168.2.2:5244:5244’
environment:
– UMASK=022
– TZ=Asia/Taipei
restart: unless-stopped
設定細節解析說明
權限設定 (user: ‘1000:100’):
系統帳號 cyberq 的 UID 為 1000,所屬群組 everyone 的 GID 為 100。透過這組數值來執行容器,OpenList 產生的所有資料都會完美對應您平常登入 NAS 的帳號權限,避免使用 root (0:0) 帶來的資安風險與後續在網路磁碟機存取時發生檔案權限錯亂的問題。
目錄掛載 (/share/ZFS18_DATA/…):
系統的 Container 共享資料夾實體位置建立在 ZFS18_DATA 這個儲存池上。使用完整的絕對路徑 /share/ZFS18_DATA/Container/openlist/data 能夠確保 Container Station 在執行或系統重啟時,準確無誤地將資料寫入 ZFS 檔案系統,同時也能完整支援 QuTS hero 的快照保護與備份機制。
網路綁定 (192.168.2.2:5244:5244):
將監聽的 IP 嚴格限制在 192.168.2.2。這項設定確保只有透過該內網網卡才能存取 OpenList 的 Web 介面,就算防火牆或路由器有誤開外部連接埠,也能從 Docker 網路層級徹底阻斷來自外部的連線請求。

建立完成後,瀏覽器開啟:
http://QNAP_NAS_IP:5244
帳號使用 admin,密碼就是你在 OPENLIST_ADMIN_PASSWORD 裡設定的值。如果沒有指定密碼,OpenList 官方文件說明可用 docker logs openlist 查看首次啟動產生的初始密碼,也可以用 docker exec -it openlist ./openlist admin set NEW_PASSWORD 手動重設。

方法二 用 SSH 直接部署
如果你習慣用 SSH 管理 QNAP,也可以直接建立 compose 檔,以下是範例,資料夾名稱則可以依據你自己的偏好來調整:
mkdir -p /share/CACHEDEV1_DATA/Container/openlist/data
mkdir -p /share/CACHEDEV1_DATA/CloudHub
cd /share/CACHEDEV1_DATA/Container/openlist
cat > docker-compose.yml <<‘EOF’
services:
openlist:
image: openlistteam/openlist:latest
container_name: openlist
user: “0:0”
ports:
– “5244:5244”
volumes:
– /share/CACHEDEV1_DATA/Container/openlist/data:/opt/openlist/data
– /share/CACHEDEV1_DATA/CloudHub:/mnt/qnap/CloudHub
environment:
– TZ=Asia/Taipei
– UMASK=022
– OPENLIST_ADMIN_PASSWORD=請改成一組高強度密碼
restart: unless-stopped
EOF
docker compose pull
docker compose up -d
OpenList 官方 Docker 文件也採用 docker compose pull 與 docker compose up -d 的方式啟動,後續更新時則可使用 docker compose pull、docker compose down、docker compose up -d 這個流程。
方法三 透過第三方 QPKG 安裝
對於不熟悉 Docker 技術,或是希望軟體能像原生 QNAP 應用程式一樣運作的使用者,開源社群(例如開發者 HisAtri 或Liki4)維護了 OpenList 的第三方開源 QPKG 版本 。QPKG 是 QNAP 自家的軟體套件格式。安裝的流程相對直觀,但需要注意架構相容性。
取得安裝檔可前往開發者的 GitHub Releases 頁面,如 https://github.com/Liki4/qnap-openlist-webdav/ ,下載對應您 NAS 硬體架構的檔案。QNAP NAS 常見的架構分為 x86_64(Intel/AMD 處理器)與 ARM 架構處理器。下載這種 QKPG 來安裝前請務必透過 QNAP 系統資訊確認您的處理器型號。

加入第一個 NAS 本機資料夾
連線登入 OpenList 後,到後台的 Storage 管理頁面,新增一個本機儲存。建議掛載路徑設定為:
/qnap
實際路徑則指向容器內的:
/mnt/qnap/CloudHub
這樣一來,QNAP 本機資料夾就會出現在 OpenList 首頁的 /qnap 目錄。之後你可以在 QNAP 的 File Station、SMB、Qsync、HBS 3 或其他備份流程中,把需要集中管理的檔案放進 CloudHub,再由 OpenList 統一呈現。
OpenList 的掛載路徑是每個儲存項目的唯一識別,若要掛載在根目錄就填 /,但不能使用重複的 mount path,否則會發生資料庫唯一性錯誤。實務上建議將不同來源清楚分層,例如 /qnap、/cloud/google-drive、/cloud/onedrive、/object/s3-backup,你自己不但較好判斷檔案來源,後續維護會比較清楚。
加入 Google Drive、OneDrive、Dropbox、S3 與 WebDAV
接著就可以依序加入外部儲存。可參考的目錄規劃如下:
/qnap/local
/cloud/google-drive
/cloud/onedrive-company
/cloud/dropbox-share
/object/s3-archive
/remote/sftp-server
/webdav/partner
這樣的好處是很直覺:/qnap 是 NAS 本機資料,/cloud 是一般雲端硬碟,/object 是物件儲存,/remote 是遠端伺服器,/webdav 是合作單位或其他系統提供的 WebDAV 端點。對使用者來說,這就像把所有資料來源都收納成 NAS 裡的一棵檔案樹。
另外,還可以透過 Cloudflare Workers 來當代理,在系統中填寫自己的 Cloudflare Workers 地址即可。
搭建 Workers 程式碼可以在 https://github.com/OpenListTeam/OpenList-Proxy/blob/main/openlist-proxy.js 找到,實際使用時需要組態環境變數。在 OpenList 後台掛載組態時填寫下載代理URL的連結結尾 不可以帶 /。
CyberQ 資安與實務設定建議
第一,OpenList 不應該直接裸露在網際網路上。若只是家用或辦公室內部使用,建議先限制在內網,若需要外部存取,優先考慮 VPN、Zero Trust、反向代理 HTTPS 與強密碼。這類工具一旦綁定多個雲端硬碟,實際上就等於握有多個儲存服務的入口權限,駭客一旦掌握你放出去的公共網路 IP ,你這台 NAS 很容易就因為攻擊面暴露,加上自家連上一堆網路硬碟和儲存服務,成為駭客眼中的高價值目標,每天都有人想上門光顧。
第二,建議在 OpenList 的 site_url 中填入正式服務網址,例如 https://cloud.example.com,結尾不要加 /,site_url 會影響本機縮圖、Web proxy 預覽、下載地址與反向代理子目錄等功能,且 URL 結尾不應帶斜線。
第三,如果你不希望自己的 OpenList 被其他 OpenList 掛載或索引,請檢查 Site Configuration 裡的 Allow indexing 與 Allow mounted。OpenList 文件顯示 Allow indexing 預設為關閉,但 Allow mounted 預設為開啟,若是企業或私人 NAS,建議依照實際需求關閉不必要的對外掛載能力,CyberQ 建議這個都是關掉的。

第四,定期備份 /opt/openlist/data 對應的 QNAP 資料夾或其他你對應好的資料夾。這裡面包含 OpenList 的設定、資料庫、儲存掛載資訊與相關狀態。若未來要搬到另一台 QNAP NAS、PVE VM 或其他 Docker 主機,只要保留這個資料目錄,這個移轉流程會簡單很多。
NAS 是最佳資料集中入口
CyberQ 認為,QNAP NAS 原本就很適合用來集中所有的備份、同步與共享檔案,但在多雲時代,真正麻煩的問題不只是容量,而是資料散落在太多地方。OpenList 裝在 QNAP 上的價值,如果辛苦地完成設定,就有機會把這些分散的雲端硬碟、遠端儲存與本機資料夾重新整理成一個入口,讓使用者不必在不同 App、不同帳號、不同協定之間來回切換,且納入 QNAP NAS 的儲存保護傘下,具備快照與友善優良的備份機制,能更有效地善用 QNAP NAS 的價值。
除了 OpenList 外,我們還推薦 Rclone 這個套件也可以做到不錯的辦公室應用效果,讓用戶透過 Windows 檔案總管或蘋果 Mac 電腦上的 Finder 去存取,也相當方便。
OpenList 在 QNAP 上可擔任小型的雲端硬碟整合中心,這個專案並非取代 NAS 的檔案系統或管理介面,而是替 NAS 補上一層跨雲端、跨協定、跨帳號的檔案入口。對家庭實驗室、中小型企業、辦公室、全球影音內容工作者或需要整合多個雲端空間的使用者來說,這也是一個實用的輕量級方案,但設定相對複雜些,好處是功能強大且不限制掛載的網路雲端硬碟數。
我們下一期會介紹 QNAP 的 HybridMount,這也是很值得採用的功能,設定更簡單,唯一的限制就是它要掛載的網路硬碟雲端是免費 2 個,可另外購買授權彈性擴充,屆時也可以再搭配 Rclone 來運用。














