Chinaunix首页 | 论坛 | 博客
  • 博客访问: 51796
  • 博文数量: 16
  • 博客积分: 657
  • 博客等级: 上士
  • 技术积分: 170
  • 用 户 组: 普通用户
  • 注册时间: 2008-07-29 09:11
文章分类

全部博文(16)

文章存档

2009年(4)

2008年(12)

我的朋友

分类: LINUX

2008-08-14 09:41:49

    luks已经成为linux系统下的加密文件系统标准,具备易用,稳定,安全高效等诸多优点,值得注意的是,luks加密是底层的,与其上的文件系统无关,也就是说你可以在上层创建包括fat32在内的文件系统,luks具备了跨平台的特点(似乎有个win32移植,但俺没用过)。
    由于linux下软件的灵活性,经常可挖掘出一些奇特用法,luks除了用来老老实实作硬盘分区加密,交换区(swap)加密,也有一些不常见,但实用的用法。
    考虑如下需求:
1>备份且加密机密/敏感数据到光盘
2>备份加密并压缩机密数据到硬盘,且要能快速读取其中的部分内容
    在luks出现之前,我不知道是否有简单易用的办法,我的办法是用gpg加密需备份的整个目录文件,虽然安全性得到保证,但是不容易只读取其中的部分内容,且由于gpg的特性,拿到其他PC读取恢复会非常麻烦,不是一个简单实用的办法。
     我们来看LUKS在linux下的特性:可以在一个大的假装自己是个块设备的文件上创建,其上可创建各种文件系统,嗯,这个各种应该包括iso9660和squashfs(一种压缩只读文件系统,广泛的被各种linux livecd使用)。看起来,只要作些简单的工作,就可以用luks完成任务了。考虑到本人没那么聪明,又是最近不太忙了才来想这个问题,不可能是首先想到这种办法的人,决定问问google大神,是否别人全搞好了,拿来用就可以了,果然,找到了如下两篇文章。

backups-with-squashfs-and-luks
其中第一篇文章介绍了如何刻录加密光盘,并有写好的脚本可用(需要根据自己的实际环境修改),第二篇文章详细分析讲述了如何使用luks建立加密的squashfs文件系统,完美完成我们上边提到的第二点需求,原理分析的很清楚,就是没有提供一个完整的自动化脚本。两篇文章各有所长,均值得一看。
     简单介绍一下第二篇文章的思路:把需要备份的目录压缩为squashfs格式的一个文件,计算出以512字节为一个块的该文件块数,将其加上1032得到能包含该squashfs文件系统的最小luks块数目,根据数建立文件,在此文件上建立luks系统,将squashfs文件系统放入luks系统。
     为方便使用,根据第一篇文章提供的脚本大幅修改,得到可以自动建立luks+squashfs文件的脚本。
使用办法举例如下:
     sudo ./cryptosqu -d /src1 -d /src2 -f
以上命令可将/src1 /src2两个目录压缩加密到当前目录的back_squ.img文件,注意,运行过程需要约两倍于压缩文件的磁盘空间,你可能需要修改该脚本来适合你得需求。
文件:cryptosqu.gz
大小:2KB
下载:下载
阅读(3342) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~