Nfs
通過 NFS 共享 encfs 加密的“.directory”
encfs 使用 FUSE 將加密目錄(按慣例隱藏的“.directory”)安裝到使用者指定的另一個目錄上。
我想通過 NFS 共享加密的“.directory”,它將在客戶端上解密(按需)。
當我嘗試這樣做時,mount 命令成功並且沒有報告錯誤(即使使用“-vvv”參數)。但是,**客戶端上的掛載始終為空。**為什麼?我該如何解決這個問題?
我的計劃是客戶端不必一直掛載解密的目錄,從而提高安全性(我希望如此)。
另一種共享方式是在 NFS 伺服器上對其進行解密,這意味著它必須始終保持解密狀態(afaik)。
更新:我想澄清一下,我沒有在 NFS 伺服器上安裝解密的目錄,然後嘗試共享它。我正在嘗試共享原始加密目錄。
NFS 伺服器(192.168.1.1 文件伺服器)
/etc/fstab:
/home/.shared /export/home/.shared none bind 0 0
/etc/出口:
/export/home/.shared 192.168.1.10(fsid=2,rw,no_root_squash,sync,no_subtree_check,nohide)
NFS 客戶端(192.168.1.10)
我嘗試了兩種方法:
首先嘗試:
fileserver:/export/home/.shared /home/.shared nfs4 noauto,x-systemd.automount,x-systemd.device-timeout=10,timeo=14,rw,relatime,vers=4.0,rsize=1048576,wsize=1048576,namlen=255,intr,timeo=600,retrans=2,sec=sys,clientaddr=192.168.1.10,local_lock=none,addr=192.168.1.1 0 0
我也試過:
fileserver:/export/home/.shared /home/.shared nfs4 noauto,_netdev,relatime,vers=4.0,rsize=1048576,wsize=1048576,namlen=255,intr 0 0
儲存在加密目錄中的數據對於文件系統來說就像普通文件(只是名稱和加密數據不同)。因此,導出加密的掛載點將正常工作。
因此,在伺服器上
test1
我們可以創建一個測試目錄:$ cd /home/sweh $ mkdir encrypted decrypted $ encfs ~/encrypted ~/decrypted [...] $ echo hello > decrypted/foo $ ls encrypted C-1Ky9g41JBTIYaBJC7EeiiH
現在我們可以導出它了。
/etc/exports
擁有:/home/sweh/encrypted *(rw,no_root_squash,sync,no_subtree_check,nohide)
我們跑去
exports -a
導出它。現在
test2
我們可以掛載它了:$ mkdir encrypted decrypted $ sudo mount test1:/home/sweh/encrypted encrypted $ ls encrypted C-1Ky9g41JBTIYaBJC7EeiiH
我們可以
encfs
在客戶端上使用它:$ encfs /home/sweh/encrypted /home/sweh/decrypted EncFS Password: $ cat decrypted/foo hello