前幾天一個硬盤壞了(SSD),數據無一倖免。還好我有必定的數據備份。新硬盤到了,我想的是不能再這樣下去了。我須要利用現有雲存儲(Dropbox,xx快盤等),實時備份個人重要數據。問題也來了,雲存儲安全嗎?不會出xx門吧? html
雲存儲安全從本質上來講確定是不安全的,因此我須要對本地的文件進行加密。雲端只存儲我加密後的文件,這種方式就算 CIA 也很難搞定。 linux
那咱們採用何種加密方式呢?Zip 加密碼?文件包工具加密仍是顯得太麻煩,編輯一個文檔要先解包再打包。而解包後的數據存在磁盤上也是隱患(能夠被深度數據分析工具發現)。 算法
TrueCrypt 是一種不錯的加密方式,直接把一個文件(或分區)映射爲一個虛擬盤(解密後的文件只會緩存在內存中,因此是安全的),但與雲存儲放在一塊兒好像就不太協調。問題是 TrueCrypt 存儲是按單文件方式,如一個10G的數據文件。不用我說你們也可能會想到,你每次修改你的任何虛擬盤中的數據都會觸發文件變動,致使每次要重傳10G!!!的文件。雖然有些雲存儲客戶端支持對大文件的分析不用所有重傳,但仍是至關不爽。 shell
EncFS 也是一種文件系統加密方式,經過映射一個目錄來作虛擬目錄存儲(解密後的文件只會緩存在內存中,因此是安全的)。EncFS 不像 TrueCrypt 把全部的文件都存放在一個加密文件中。它的加密方式是保持你原有的目錄結構,把文件名、目錄名、文件內容進行加密。 緩存
注:我用的是 Linux(Mint)系統,因此教程會按 Linux 系統來寫。若是你使用 Windows 系統也能夠經過 encfs4win(http://members.ferrara.linux.it/freddy77/encfs.html)或同類工具完成加密。 安全
如:/opt/noah/Dropbox/.encrypted/Photos
我在 Dropbox 中建立了 .encrypted 主目錄,而後專門建立了存放私人內容的目錄 Photos bash
數據是存放在 .encrypted/Photos 中,但你使用 EncFS 時並不直接操做加密目錄。而是映射目錄。
個人映射目錄建立在 /home/noah/EncFS/Photos,空着就能夠或者你能夠放一些不相關的內容進行混淆。 工具
注:EncFS 在映射加密目錄時,不會影響原映射目錄內容。 加密
sudo apt-get install encfs
encfs /opt/noah/Dropbox/.encrypted/Photos/ ~/EncFS/Photos
選擇模式 spa
Creating new encrypted volume. Please choose from one of the following options: enter "x" for expert configuration mode, enter "p" for pre-configured paranoia mode, anything else, or an empty line will select standard mode. ?>
選 p 就能夠,x 爲專家模式(能夠修改加密算法,加密方式等)。
而後輸入密碼。(建議14個字符以上密碼,密碼的長度就是你文件的安全程度,目前暴力破14位以上密碼可能須要幾百年)不使用時,斷開映射關係。EncFs/Photos 中的內容恢復,沒有任何文件痕跡。
sudo umount ~/EncFS/Photos/
指令與初始化時同樣,EncFS 發現目錄已經加密就不會讓你再初始化了。
encfs /opt/noah/Dropbox/.encrypted/Photos/ ~/EncFS/Photos
你也能夠將這個過程作一個 sh 文件,簡化掛載過程
#!/bin/bash # if the script was not launched from a terminal, restart it from a terminal if [[ ! -t 0 ]] && [[ -x /usr/bin/x-terminal-emulator ]]; then /usr/bin/x-terminal-emulator -e "bash -c \"$0 $*; read -s -p 'Press enter to continue...'\"" exit fi mkdir -p ~/EncFS/Photos encfs /opt/noah/Dropbox/.encrypted/Photos/ ~/EncFS/Photos
因爲文件在本地就已經加密。就算雲傳輸通道不安全,雲存儲不安全,對我來講已經足夠安全了。 我再強調一下,安全都是相對而言的。沒有絕對安全的事物,也但願你們不要由於這點問題而爭論不休。