使用口是心非的安全遠端備份

使用口是心非的安全遠端備份

最近的刪除程式碼空間讓我想到了異地備份過程(我目前透過輸入密碼手動執行)。我一直在閱讀教學展示如何透過口是心非來自動執行備份。這些往往圍繞著使用 SSH 金鑰來自動執行備份伺服器的驗證過程。

然而,這對我來說似乎充滿了漏洞。如果正在備份的伺服器受到損害,惡意使用者可以獲得存取權限,那麼他們可以自動登入備份伺服器並刪除備份。假設備份使用者的檔案/usr/bin/nologin中使用了管理員/etc/passwd(我不知道這在多大程度上可以依賴,或者它是否會防止口是心非地遠端工作),那麼惡意使用者仍然可以透過使用口是心非來擦除備份命令duplicity remove-older-than [time now]

是使用rsync 透過ssh 將檔案傳送到備份伺服器並讓備份伺服器上的「主使用者」將所有使用者帳戶執行本機迭代備份到其自己的儲存區域(例如,只有它有權存取其儲存區域)的唯一安全解決方案自己的文件,但它有權讀取所有其他帳戶文件)?或者有沒有辦法防止口是心非刪除備份並防止遠端登入?

答案1

據我所知,口是心非無法將遠端目錄備份到本機目錄。我分兩步驟解決問題。在備份伺服器上執行以下操作:

  1. 使用 ssh 金鑰透過 ssh 執行 rsync 將遠端目錄同步到本機目錄

    rsync -avz -e ssh user@remote:/remote/目錄 local_directory

  2. 從一個目錄到另一個目錄運行口是心非。使用非對稱 GnuPG 金鑰,因此在加密過程中不需要密碼。

    口是心非 --encrypt-key=YOUR_KEYID local_directory file://backup_directory

或不加密備份:

duplicity --no-encryption local_directory file://backup_directory

答案2

上傳備份後,您可以使用chattr +i它們使它們不可變,這樣它們就不能被修改或刪除。只有 root 可以設定或清除該標誌。

作為替代方案,您可以chown在上傳後將檔案傳送給另一個用戶,以便備份帳戶不再有權存取它們。

相關內容