DeGoogle:用 Syncthing 同步 Obsidian 筆記, 檔案和照片, 擺脫科技大廠的雲端服務

obsidian syncthing E2EE




前言

在上一篇文章中,流浪貓介紹了如何用 gpgCrypt 將筆記進行 PGP 加密,避免你那些令人臉紅心跳的日記被雲端服務商看光光。


用 gpgCrypt 將 Obsidian 加密, 讓雲端廠商看不到你的私密日記


遺憾的是,目前 gpgCrypt 不支援行動裝置版的 Obsidian,且 Google Drive 和 DropBox 的行動版要付費升級才得以將檔案離線同步儲存至裝置,造成站長的夢想倒退了一大步。就在我心灰意冷之際,電腦聖靈趁我在火車上度姑時,為我指引了方向:


『Syncthing~』祂在我耳邊低語習翠


這個東西其實我以前使用過,就是多年前跟 Banana Pi 奮戰時,用來解決裝置間檔案同步的軟體。當時是用 OpenMediaVault 內建的 Syncthing 來進行同步,只是買新電腦之後就再也沒碰過它了。


用 Banana Pi 過生活 (1)



簡述 Syncthing

它是款開放原始碼、去中心化的點對點 (P2P) 檔案同步軟體,不但支援 Windows、Linux 和 Android 等作業系統,還能跨平台與多裝置同步處理。


技術方面,它採用 TLS (Transport Layer Security) 進行檔案傳輸,確保沒有任何中間人能看到你的資料。如果你希望加密層級能更上一層樓,可以將遠端裝置設為不信任,並設定密碼來產生 E2EE 的保密效果。


但對流浪貓來說,最重要的莫過於它不用註冊網路帳號,而是以裝置碼進行溝通。



安裝 Syncthing

如果你是 Linux 的使用者,請洽詢您的軟體管理員。而軟體資料庫中通常會有兩種版本,一種是傳統的 WebGUI 界面,啟動後輸入網址即可進行設定;另外則是 Syncthing GTK,有基本的軟體操作畫面。



https://syncthing.net

https://github.com/syncthing/syncthing

https://f-droid.org/packages/com.nutomic.syncthingandroid/

https://play.google.com/store/apps/details?id=com.nutomic.syncthingandroid




設定 Syncthing

於瀏覽器輸入以下網址進行連線,GTK 版請直接按照它的指示為 Syncthing 設定帳號密碼。


http://localhost:8384


桌機和手機都完成開設帳戶的步驟後,點選手機版的顯示裝置識別碼,並在桌機版上用 Add Device 將手機的 Device ID 加入:


  • 於桌機版用 Add Shared Folder 加入想要分享的資料夾
  • Share With Devices 勾選想要分享的裝置


接著手機版就會跳出請求分享的訊息,之後按照指示為它指定放檔案的資料夾即可。若無法連線,請手動開放防火牆通訊埠。


sudo ufw allow 22000/tcp
sudo ufw allow 22000/udp
sudo ufw allow 21027/udp
sudo ufw reload



端對端加密 (E2EE)

進入以下位置,將桌機手機版皆設為不信任的裝置:


  • 遠端裝置 > 編輯 > 進階 > 勾選不信任習維尼
  • 正在共享 > 設定已共享的資料夾的密碼
  • 資料夾 > 編輯 > 編輯資料夾 > 目前與裝置共享 > 輸入密碼


以上建議用 WebGUI 進行操作,才能看到完整的設定選項。



結語

以上就是 Syncthing 的簡單介紹,相關細節請自行參考官方或其他網路先烈的教學,本文的目的僅為拋磚引玉,探究所有 DeGoogle 的方案和可行性,因此操作的部份不多贅述,請自己去研究。


然而實測後發現,Syncthing 其實不太適合作為筆記管理的基礎服務,因為筆記是最容易發生衝突的檔案類型,只要在同步不完全的狀態下增刪一個字,就會讓這篇筆記以衝突檔的方式區隔開來。


另一方面,由於沒有台全天候二十四小時運轉的伺服器幫你備份,因此如果在尚未同步完成前裝置就被摧毀的話,遺失資料的風險其實相當高。


除非,你自己架一台伺服器,例如以下面這篇教學為基礎,在 Akash 平台上用 Syncthing 模板架設屬於自己的同步平台。


用區塊鏈雲端平台 Akash Network 架設 Stable diffusion 運算 AI 色圖


當然,你也可以買台便宜的手機或樹莓派,安裝 OpenMediaVault 和 Syncthing 把它當作伺服器使用。解決方法很多,端看看你如何選擇罷了。




延伸閱讀

https://en.wikipedia.org/wiki/Syncthing

DeGoogle:從 Proton Mail 開始的去 Google 化生活

更多去 Google 系列文章

用 Proton Mail 的 Pass 和 SimpleLogin 建立別名帳號



留言

這個網誌中的熱門文章

寶鐘瑪琳中之人前世照片、年齡分析