dimanche 8 mars 2009

Ubuntu 8.10新特性“私人文件夹“

   一、建立你的私人文件夹
1、安装ecryptfs-utils
     sudo apt-get install ecryptfs-utils
2、建立私人文件夹
     ecryptfs-setup-private
3、输入你的登陆密码,然后输入一个挂载密码或者(不输)随机产生一个 (在安全位置记好这两个密码,你手动恢复时要用到。)
4、注销,然后再登陆,建立挂载点
  
   二、使用私人文件夹
   登陆后,你写进的所有文件或者文件夹 ~/Private 将会被加密,写进隐藏的目录。~/.Private. 将你的密码、Email、其他数据储存在 ~/Private
    教你个好主意,将你的.evolution/, .ssh/ .gpg/文件夹中的内容移到 ~/Private中,在原来的文件夹中建个软连接替代他们。
确保你要保护的应用程序的内容没有在运行 (例如Firefox或者 Evolution)
    ps -ef | grep evolution 
将应用程序的数据文件夹 (例如 ~/.mozilla or ~/.evolution)移动到 ~/Private 目录
    mv ~/.evolution   ~/Private 
建立旧位置到新位置的连接
    ln -s ~/Private/.evolution   ~/.evolution 
    
    三、手动恢复你的数据
    (关于这一条,无论是在当然用户,还是其他用户,我试了多次没有成功,不知道为什么)

    这些步骤仅仅是用在非正常,或者紧急情况下,你必须手动挂载你的加密私人文件夹来恢复数据。你可以用这些步骤来挂载,如果它被备份在不同的系统下,或者使用live-cd,但至少是运行在 Linux 2.6.26 kernel下
使用sudo:
   sudo mount -t ecryptfs /home/username/.Private    /home/username/Private 
  •    Selection(选择模式): 4  (使用密码模式,原文是选择3,但是3是ssh)
  •    Passphrase:  (输入 mount 你建立挂载点的密码,这不同于你的 登陆 密码。)
  •    Selection: aes  (使用 aes加密方法)
  •    Selection: 16  (使用16位的密码)
  •    Enable plaintext passthrough: n 
假设你键入正确的密码你就可以临时进入 /home/username/Private . 既然你是使用的超级用户,你会得到一个警告,你也许会输错密码:

警告: 参见 [/root/.ecryptfs/sig-cache.txt],你从来没有用这个密码来挂载。
it looks like you have never mounted with this key
before.这意味着你输错密码。
忽略这个警告没什么问题

    四、恢复你的挂载密码
(这一条恢复密码没有问题,在其他用户下都可以用)

假如,你没有写下挂载密码,你可用登陆密码来解密这个文件来恢复。
(~/.ecryptfs/wrapped-passphrase )
命令:  ecryptfs-unwrap-passphrase ~/.ecryptfs/wrapped-passphrase "login passphrase"(" "输入你的登陆密码)

然后最好清除你的shell历史这样就可以删除你的登陆密码,这是个很好的主意。
命令:  history -c 
如果你的登陆密码是正确的。你的挂载密码会出现在屏幕上 。
如果你丢失了 wrapped-passphrase 文件,并且忘记了密码。那是不可能进入你的加密区的。
注意!!
  • 如果你设置了没有密码自动登陆,那么加密目录 ~/Private是不会自动挂载的。
  • 文件和文件夹名不会被加密(Bug #264977).
  • 挂载为/home的网络挂载(NFS, CIFS, Samba),在这下面加密私人文件夹会有点问题 bug#277578 & #289747).
  • 登陆的超级用户可以进入到文件夹。一个例子就是如果~/Private被挂载了,那么做备份也会备份到私人文件夹,除非~/Private文件夹排除在外。
  • 如果你把所有的.ssh放在 ~/Private中, 一些用户会报告说不能用公共密匙远程登陆到系统。在这种情况下你或许仅仅只要把自己的私匙放在 ~/Private中, 其他的不动。
  • 如果你把应用程序数据储存在加密的私人文件夹中,当你没有挂载私人文件夹时,你的应用程序会运行不正常。
以上为本人翻译自:https://help.ubuntu.com/community/EncryptedPrivateDirectory
如有错误,请及时指出!
个人测试的小体验:
  • 其实真正的文件是储存在~./Private下。
  • 使用其他用户登陆时,~/Private 是不会自动挂载的。
  • 使用其他用户登陆, ./Private 下的文件是可以看到的,但是即使你cp出来,文件内容是看不到的(被加密了)
  • 在本用户下,当你运行sudo umount  ~/Private 时,私人文件夹将被卸载,卸载后可以直接在~/Private 文件夹中点击运行那个文件,,或者运行命令mount.ecryptfs_private就就可以mount了。
  • 由上面我想到,如果你的电脑数据是机密的话,当前用戶是不能让其他人使用的,实在要用电脑,另开个临时会话。


更多精彩:http://blog.sina.com.cn/5yong

clicksor