摘要訊息 : 如果閣下難以選擇使用什麼樣的私有雲軟體, 那麼請參考這篇文章.
0. 前言
我們曾在 《Seafile OwnCloud NextCloud 私有云软件比较》中比較過 Seafile, Nextcloud 和 ownCloud 這三個私有雲軟體. 這篇文章寫於 2017 年, 顯得有點過時, 並且當時對三款軟體的調查不是特別細緻.
在這篇文章中, 我們將了解更多的私有雲軟體. 另外, 我們還會對 Seafile 和 Nextcloud 進行更詳細地對比. 對於 ownCloud, 我們不再將其納入對比. 儘管 ownCloud 目前針對社區是有免費版本的, 但是它僅僅支援單個使用者, 而且它是由 Nextcloud 團隊編寫的 (Nextcloud 團隊將 ownCloud 出售後, 創立了 Nextcloud).
1. 私有雲軟體列表
在本節中, 我將列出絕大多數可以自建的私有雲軟體, 大家可以根據自己的實際需要選取適合的軟體自建私有雲 (直接點擊軟體的名稱就可以到達軟體的官方網站進行了解或者下載).
1.1 同步型
同步型的私有雲軟體是指使用者在任意裝置上載檔案或者修改私有雲中的檔案之後, 其它裝置同步地可以看到.
軟體 | 介紹 | 開源協定 | 程式設計語言 |
Git Annex | 在伺服器, 電腦甚至外部裝置中進行同步 | GPL-3.0 | Haskell |
Kinto | 極簡 JSON 儲存服務 | Apache-2.0 | Python |
myDrive | 通過 WEB 在線儲存 | GPL-3.0 | Node.js |
Nextcloud | 從任何裝置訪問和共享檔案, 日曆, 聯絡人和電子郵件等 | AGPL-3.0 | PHP |
OpenSSH SFTP Server | 以安全著稱的檔案傳輸程式 | BSD-2-Clause | C |
ownCloud | 檔案, 日曆和地址簿等多合一私有雲解決方案 | AGPL-3.0 | PHP |
Peergos | 安全私密的私有雲, 還包括了日曆, 新聞提要, 任務列表, 聊天和電子郵件客戶端 | AGPL-3.0 | Java |
Pydio | 主流雲的替代方案 | AGPL-3.0 | Go |
Samba | 為 SMB/CIFS 協議的所有客戶端提供安全、穩定和快速的文件和打印服務 | GPL-3.0 | C |
Seafile | 團隊和組織的檔案託管和共享解決方案 | GPL-2.0/GPL-3.0/AGPL-3.0/Apache-2.0 (不同軟體的協定不同) | C, Python |
SparkleShare | 即時且安全的檔案同步 | GPL-3.0 | C# |
Syncany | 安全地在任意裝置上進行檔案同步 | GPL-3.0 | Java |
Syncthing | 點對點檔案同步 | MPL-2.0 | Go |
Unison | 在不同作業系統上進行檔案同步 | GPL-3.0 | OCaml |
Z-Push | 基於微軟 ActiveSync 協定 | AGPL-3.0 | PHP |
1.2 對象存儲及檔案服務器型
軟體 | 介紹 | 開源協定 | 程式設計語言 |
Minio | 與 Amazon S3 APIs 相容的對象存儲 | Apache-2.0 | Go |
SeaweedFS | 支援 WebDAV, S3 API, FUSE mount, HDFS 等的分布式檔案系統 | Apache-2.0 | Go |
SFTPGo | 支援 FTPS 和 WebDAV 的 SFTP 伺服器 | AGPL-3.0 | Go |
Zenko CloudServer | 支援 Amazon S3 協定的雲伺服器 | Apache-2.0 | Node.js |
1.3 對等網路檔案分享型
軟體 | 介紹 | 開源協定 | 程式設計語言 |
bittorrent-tracker | 簡單且強大的 BitTorrent 客戶端與伺服器 | MIT | Node.js |
cloud-torrent | 帶有 HTTP 檢索和流傳輸的 Torrent 網頁客戶端 | AGPL-3.0 | Go |
Dat Project | 分散式檔案共享程式 | MIT | Node.js |
exatorrent | 支援 HTTP 流傳輸的伺服器 | GPL-3.0 | Go |
FilePizza | 使用你自己的瀏覽器進行對等網路檔案分享 | BSD-3-Clause | Node.js |
instant.io | 支援網頁的流傳輸軟體 | MIT | Node.js |
Magnetico | 自託管的 BitTorrent DHT 搜尋引擎套件 | AGPL-3.0 | Python |
Magnetissimo | Torrent 搜尋引擎 | MIT | Elixir |
Opentracker | 可以在 WLAN 路由器上運作的 BitTorrent 跟蹤器 | Beerware | C |
peerflix-server | Torrent 下載程式 | MIT | Node.js |
qBittorrent | 跨裝置的 BitTorrent 客戶端 | GPL-2.0 | C++ |
rartracker | 私用 BitTorrent 跟蹤器 | WTFPL | PHP |
Send | 簡單且隱密的臨時檔案共享程式 | MPL-2.0 | Node.js |
Torrents.csv | 可自建的 Torrent 搜尋引擎 | GPL-3.0 | Rust |
Transmission | 簡單的 BitTorrent 客戶端 | GPL-3.0 | C |
1.4 拖拽上載/點擊下載型
軟體 | 介紹 | 開源協定 | 程式設計語言 |
ass | 支援跨裝置的自建 ShareX 伺服器 | ISC | Node.js |
BoZoN | 極簡的拖放檔案共享程式 | AGPL-3.0 | PHP |
Chibisafe | 超快的檔案上載器 | MIT | Node.js |
Coquelicot | 注重隱私保護的一鍵式檔案共享程式 | AGPL-3.0 | Ruby |
elixire | 簡單的圖像上載和連結縮短服務 | AGPL-3.0 | Python |
fibridge | 無需上載的瀏覽器流式大檔案傳輸軟體 | MIT | Rust |
File Sharing | 自建的臨時檔案共享程式 | GPL-3.0 | PHP |
FileShelter | 自建的檔案共享程式 | GPL-3.0 | C++ |
FireShare | 訂閱式的實時檔案共享系統 | MIT | Node.js |
Gokapi | 輕量級的臨時檔案共享程式 | GPL-3.0 | Go |
goploader | 通過伺服器端加密共享檔案 | MIT | Go |
image-uploader | 相容於 ShareX 的圖像上載器 | AGPL-3.0 | PHP |
imgpush | 自建的檔案上載服務, 可容易地集成到其它程式中 | MIT | Python |
Jirafeau | 簡單地檔案上載程式 | AGPL-3.0 | PHP |
Kleeja | 檔案上載和共享應用程式 | GPL-2.0 | PHP |
linx-server | 簡單地檔案共享程式 | GPL-3.0 | Go |
lufi | 客戶端加密的上載器 | AGPL-3.0 | Perl |
lutim | 圖像上載器 | AGPL-3.0 | Perl |
OnionShare | 匿名且安全地分享任意大小的檔案 | GPL-2.0 | Python |
PictShare | 多語言的圖像託管服務 | Apache-2.0 | PHP |
Plik | 可擴展的臨時檔案上載系統 | MIT | Go |
Pomf | 簡單的檔案上載和共享 | MIT | PHP |
ProjectSend | 上載檔案並且共享給特定的客戶端 | GPL-2.0 | PHP |
PsiTransfer | 自託管檔案共享系統 | BSD-2-Clause | Node.js |
Pste | 簡單的檔案託管程式 | GPL-3.0 | Python |
QuickShare | 在不同裝置之間快速分享檔案 | LGPL-3.0 | Go |
Share | 簡單而高級的檔案上載器 | MIT | Node.js |
Sharry | 具名或者匿名地分享檔案 | GPL-3.0 | Scala, Java |
transfer.sh | 使用指令分享檔案 | MIT | Go |
Uguu | 帶有過期自刪除的檔案儲存系統 | MIT | PHP |
Up1 | 客戶端加密的圖像託管系統 | MIT | Node.js |
Void | 輕便快捷且支援 ShareX 的自建檔案儲存程式 | MIT | Node.js |
Web-File-Uploader | 簡單的檔案分享程式 | MIT | Node.js |
XBackBone | 輕量級的檔案管理器 | AGPL-3.0 | PHP |
YouTransfer | 簡單的檔案傳輸和共享程式 | Apache-2.0 | Node.js |
Zipline | 快速可靠的檔案共享伺服器 | MIT | Node.js |
1.5 網頁檔案管理器
軟體 | 介紹 | 開源協定 | 程式設計語言 |
Apaxy | 增強的網頁檔案瀏覽主題 | GPL-3.0 | HTLM |
DirectoryLister | PHP 目錄列表器 | MIT | PHP |
explorer | 高度可配置的檔案列表程式 | MIT | Node.js |
filebrowser | 帶有 Material Design 的網頁檔案瀏覽器 | Apache-2.0 | Go |
FileGator | 多使用者的檔案管理器 | MIT | PHP |
Filestash | 支援外部裝置的網路檔案管理器 | AGPL-3.0 | Go |
goBrowser | 簡單的網頁檔案瀏覽器 | GPL-3.0 | Go |
Gossa | 輕量級的網頁檔案管理器 | MIT | Go |
h5ai | 現代的網頁檔案管理器 | MIT | PHP |
IFM | 單個指令碼檔案管理器 | MIT | PHP |
ResourceSpace | 數字資產管理軟體 | BSD-4-Clause | PHP |
s3server | 支援外部裝置的簡單檔案管理器 | MIT | Go |
Surfer | 帶有佈景主題的靜態檔案伺服器 | MIT | Node.js |
TagSpaces | 帶有筆記且離線可跨裝置的檔案管理器及組織器 | AGPL-3.0 | JavaScript |
updog | 支援身分認證的檔案管理器 | MIT | Python |
2. Seafile vs. Nextcloud
上面這些和檔案管理有關的私有雲軟體我也用過一些, 不過還是感覺 Seafile 和 Nextcloud 更勝一籌, 功能更多. 不過, 對於 Seafile 和 Nextcloud, 我個人傾向於 Nextcloud. 因為 Nextcloud 的功能多一些, 且佈景主題更符合我的審美.
接下來, 我們用表格對這兩個私有雲軟體進行比較.
特性 | Nextcloud | Seafile | 備註 |
跨裝置同步/客戶端 | 都支援 macOS, Windows, Linux, iOS 和 Android | ||
流動裝置支援 | 都支援 iOS 和 Android 的流動裝置 | ||
掛載為本地硬碟 | |||
檔案共享 | Nextcloud 支援分享連結和內部連結 (僅針對有權限存取資料夾的使用者生效), 沒有加密和設定過期時間的特性; Seafile 不但支援分享連結和內部連結, 還支援加密和設定過期時間, 分享還支援僅預覽但不可下載. | ||
權限控制 | Nextcloud 需要去應用商店下載並且啟用權限控制套件 | ||
資料庫鏡像 | Nextcloud 本身沒有提供, 但是可以通過 Docker 或者其它方式手動完成 | ||
檔案鎖定 | |||
在線編輯 | 都支援 Markdown 和文本檔案在線編輯, Office 系列需要配置 CollaboraOffice 或者 OnlyOffice. Seafile 針對 Office 在線編輯還可以選擇配置 LibreOffice. | ||
協同編輯 | 需要 CollaboraOffice 或者 OnlyOffice 支援. Seafile 還可以選擇 LibreOffice 支援. | ||
日誌 | 都支援多等級的日誌 | ||
雙重驗證 | |||
遠端刪除 | 不明白遠端刪除的意義, 如果是在客戶端刪除檔案的話, Nextcloud 是支援的. | ||
病毒掃描 | 都需要額外的防毒軟體支援 | ||
檔案夾上載 | |||
子檔案夾存取權限控制 | |||
資料清理 | Nextcloud 可以通過自動或者手動的方式清理垃圾桶中的無用資料; Seafile 由專門的指令碼來清理無用資料. | ||
全文搜尋 | Nextcloud 需要去應用商店下載全文搜尋的套件並且啟用 | ||
訪客帳戶 | Nextcloud 可以通過建立公共使用者來實現 | ||
登陸短信驗證 | Nextcloud 目前僅支援雙重認證 | ||
收藏夾 | |||
評論 | |||
標籤 | |||
外部儲存 | Nextcloud 支援將 FTP 和 WebDAV 的空間掛在到雲上 | ||
定製 | Nextcloud 可以編寫自己的套件並且上載到應用商店 (例如上面的短信驗證就可以通過自行編寫套件來實作). | ||
只寫上載 | 不明白其定義 | ||
SharePoint 集成 | Nextcloud 官方沒有提供教學, 但是網路上有相應的教學可以參考. | ||
保留文件 | 不明白其定義 | ||
檔案所有權轉讓 | Nextcloud 可以通過分享連結將檔案進行轉存, 或者通過控制台中的分享直接分享到指定的使用者 | ||
通知 | |||
應用商店 | |||
使用者管理 | |||
日曆 | |||
通訊錄 | |||
圖像視頻預覽 | |||
分塊上載 | 斷點傳續都是支援的. Nextcloud 本身是分塊非加密儲存的; Seafile 本身是分塊加密儲存的. | ||
大檔案支援 | |||
Outlook 支援 | Nextcloud 需要去應用商店下載套件並啟用 | ||
檔案對外隱藏 | |||
檔案標記 | |||
模擬身分 | |||
訪客功能 | Nextcloud 的未登錄者可以通過分享連結進行預覽或者下載 | ||
檔案完整性檢查 | |||
密碼策略 | |||
指令碼支援 | |||
伺服器監控 | Nextcloud 在伺服器出現問題的時候可以在控制台中看到報告, 還可以看到 CPU/記憶體/硬碟和用戶的使用量; Seafile 僅支援用戶行為監控. | ||
視訊通話/語音通話 | |||
收藏夾搜尋 | |||
標籤搜尋 | |||
配額管理 | |||
配額計費 | |||
聊天 | 目前暫時沒有看到 Nextcloud 有套件可以支援聊天或者對話 | ||
伺服器間共享 | 可以直接通過分享連結轉存到其它 Nexctcloud 伺服器上 | ||
群組 | |||
高可用支援/集群支援 | |||
LDAP/AD 集成 | Nextcloud 需要去應用商店下載套件並且啟用 | ||
WebDAV/FUSE 集成 | |||
AWS S3/Ceph 支援 | |||
專業版免費額度 | 3 | 目前沒有看到 Nextcloud 有專業版的免費額度限制, 官方為 100 使用者及其以上的企業提供付費支援 (有不同的價目表); Seafile 專業版本可以有三個免費的使用者, Seafile 社區版沒有使用者數量限制 | |
多語言 | 都支援幾十種語言. Nextcloud 將正體中文本地化為香港中文和台灣中文; Seafile 沒有對正體中文本地化. | ||
被分享者權限 | Nextcloud 不支援被分享者進行下載或者轉存之外的操作 (支援在線編輯的檔案除外); Seafile 支援僅預覽, 預覽和下載, 檔案夾支援被分享者進行上載和下載. | ||
斷點傳續 | |||
檔案版本 | |||
檔案加密 | Nextcloud 支援伺服器端加密; Seafile 的檔案在上載時就已經被拆分並且加密. | ||
通告 | Nextcloud 支援多種事件又郵件或者內部推送進行通告; Seafile 僅支援使用全站大橫幅進行通告 (見最後一行). | ||
高對比度模式 | |||
暗黑模式 | |||
閱讀困難症模式 | |||
自動更新 | |||
外部監控 | Nextcloud 控制台-[系統] 中提供了外部監控的 API | ||
Redis 支援 | |||
Memcached 支援 | |||
Wiki | |||
機構 | |||
管理員全站通知 |
自創文章, 原著 : Jonny. 如若閣下需要轉發, 在已經授權的情況下請註明本文出處 :