分类: LINUX
2008-04-26 18:19:24
上面讨论到的加密文件系统使用的是ext3,你可以在/etc/cryptmount/cmtab中自己指定文件系统(ext2,ext3,XFS等)。cryptmount-setup将创建一个cmtab。
$ cat /etc/cryptmount/cmtab ... # entry automatically generated by setup-script: my-encrypted-files { dev=/home/crypto.fs dir=/home/crypt fstype=ext3 fsoptions=defaults cipher=aes keyformat=builtin keyfile=/etc/cryptmount/my-encrypted-files.key } |
dev选项指出了块设备的名字或存储加密文件系统的文件名,dir选项指出了加密文件系统真实的挂载点,fstype指出了文件系统的类型,fsoptions指出了与在fstab中一样的文件系统选项,keyformat意思就相当明了。请查看cmtab的帮助文档()了解全部描述。keyfile指定了在一个USB闪存盘里存储密钥文件,这样可以保证密钥与机器分离。
cipher选项让你选择一个加密算法,默认是aes,对所有用户来说它都工作得很好。下面的命令显示了你正在运行的内核支持cipher。如果你有其他的加密算法集成到你的内核中,或当前载入的内核模块中,它将显示在/proc/crypto中。要查看内核模块中哪个选项是可用的,使用modprobe载入它,然后在/proc/crypto中检查它的信息。
$ ls -l /lib/modules/$(uname -r)/kernel/crypto/ $ cat /proc/crypto ... $ sudo modprobe twofish $ cat /proc/crypto name : twofish driver : twofish-generic module : twofish priority : 100 refcnt : 1 type : cipher blocksize : 16 min keysize : 16 max keysize : 32 |
cryptmount-setup脚本必须以root身份运行,手动配置一个加密文件系统的过程在cryptmount的帮助文档【man手册或man page】中有描述。因此我在本文中将通过修改一些选项做一点变化,指定加密文件系统完全存储在用户的home目录。