cht電腦資訊Linux
adm Find login register

做一個加密encrypted 的 loopback 檔案系統 filesystem

eliu
1 做一個加密encrypted 的 loopback 檔案系統 filesystem
Promote 0 Bookmark 12008-09-07quote  
加密檔案系統的用途
  • 我們可以把信用卡號、個人資料(身份證字號、住址)、存在裏面,這樣有需要輸入的時候就直接 copy & paste 貼上就可以了。但是就是怕 notebook 遺失或是系統被入侵,所以我們需要一個可加密的檔案系統來保護。
  • 如果是公用的 pc,我們可以用加密的檔案系統放一些成人電影 大笑

Windows NTFS 有一個 EFS,linux 有沒有類似的呢?有的。

loopback 這個 device 可以把某個檔案當成一個硬碟的 partition 來用,還可以加密。 

# dd if=/dev/urandom of=/home/xxx/t.img bs=1M count=10
# modprobe aes
# losetup -e aes /dev/loop0 t.img

   這邊會 叫你輸入檔案系統的密碼

# mkfs.ext2 /dev/loop0
# mkdir  /priv

這邊我們可以用手動掛載到 /priv,顯然,這樣很難用

# mount /home/xxx/t.img /priv -o loop,encryption=aes 

我們編輯一個 /home/xxx/bin/enc.sh ,根據實驗,其實只要 aes_i586 這個 module 就可以了,用加到 /etc/modprobe.preload也是可以,需要的時候才 load 進來,這樣可以節省 memory

  modprobe aes_i586
  mount /home/dhliu/enc.img /priv -o user,loop,encryption=aes

由於 modprobe,mount 需要 root,最好用 sudo 會更方便,加一行在 /etc/sudoers

 ALL    ALL = NOPASSWD: /home/xxx/bin/menc

執行時就用 sudo /home/xxx/bin/menc,如果還是嫌太長可以用 alias or 寫成 shell script.

直接 umount 就可以了,因為有用 'user' 這個 option

edited: 5

cht電腦資訊Linux
adm Find login register
views:4512