Red Hat Linux 7 中分区加密技术

一 分区加密简介
军工方面重要的保密安全措施技术,国际安全组织采取的一种对磁盘内容加密的解决方案,因为杀毒软件的后觉性是无法保证安全性更高的领域。所以在机密级别较高的领域采取主动性的安全解决方案,而分区加密是其中一种,其加密算法是运用当今国际最尖端的采用256位软硬件结合加密算法,除了密码之外还需要一个u-key, 同时支持256位数据加密,采用先进的数据隐藏技术、32位嵌入式微处理器和"真"随机数发生器,确保了分区加密的安全性和密钥的唯一性。

二  实验环境及内容
环境:  Red Hat Linux 7

内容:  先分出一个分区,然后现在上面加密,然后再铺上文件系统,这样做的好处就是,当那个密码破解失败,那么文件内容也就会毁坏,能有效地保护我们的隐私内容。 

三  具体操作
因为我们是做实验,所以首先先建立几个新的分区,
1>用命令  cat /proc/partitions  查看
如下:

[root@localhost Desktop]# cat /proc/partitions
major minor #blocks name

253 0 10485760 vda
253 1 10484142 vda1
253 16 10485760 vdb
7 0 3655680 loop0
接下来我们在 /dev/vdb  划分一个新的分区:
用命令  fdisk  /dev/vdb  然后根据里面的提示划分一个:
在用cat  /proc/partitions 查看
显然 我们的 /dev/vdb1已经划分成功

[root@localhost Desktop]# cat /proc/partitions
major minor #blocks name

253 0 10485760 vda
253 1 10484142 vda1
253 16 10485760 vdb
253 17 1048576 vdb1
7 0 3655680 loop0
2> 为新建立的分区进行加密
1:
使用命令    cryptsetup luksFormat  /dev/vdb1
然后输入大写      YES            小写会没反应  我估计这里应该有个bug
然后输入密码:  大于 8 位  且不能太简单

[root@localhost Desktop]# cryptsetup luksFormat /dev/vdb1

WARNING!
========
This will overwrite data on /dev/vdb1 irrevocably.

Are you sure? (Type uppercase yes): YES
Enter passphrase:
Verify passphrase:
2:
接下来进行解密以及使用:
首先使用命令  cryptsetup open /dev/vdb1 haha(这个名字可以随便取)  进行解密
然后输入你刚才加密的密码:
然后对分区进行格式化:mkfs.xfs /dev/mapper/haha
在接着进行 挂载 mount /dev/mapper/haha /mnt  你可以随意挂载,这是我个人习惯
然后用  df 查看挂载有没有成功

[root@localhost Desktop]# cryptsetup open /dev/vdb1 haha
Enter passphrase for /dev/vdb1:
[root@localhost Desktop]# mkfs.xfs /dev/mapper/
control haha
[root@localhost Desktop]# mkfs.xfs /dev/mapper/haha
meta-data=/dev/mapper/haha isize=256 agcount=4, agsize=65408 blks
= sectsz=512 attr=2, projid32bit=1
= crc=0
data = bsize=4096 blocks=261632, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=0
log =internal log bsize=4096 blocks=853, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
[root@localhost Desktop]# mount /dev/mapper/haha /mnt
[root@localhost Desktop]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/vda1 10473900 7014964 3458936 67% /
devtmpfs 927072 0 927072 0% /dev
tmpfs 942660 80 942580 1% /dev/shm
tmpfs 942660 17024 925636 2% /run
tmpfs 942660 0 942660 0% /sys/fs/cgroup
/dev/loop0 3654720 3654720 0 100% /var/www/html/pub
/dev/mapper/haha 1043116 32928 1010188 4% /mnt
3:
然我们现在就可以在这个加密的分区中进行操作了,比如说,你建立一些文件
然后将其卸载
然后关闭设备加密      》记得关闭之前必须先卸载》
然后 /mnt中就没有东西了

[root@localhost mnt]# touch file{1..10}
[root@localhost mnt]# ls
file1 file10 file2 file3 file4 file5 file6 file7 file8 file9
[root@localhost /]# umount /mnt
[root@localhost /]# cryptsetup close /dev/mapper/haha
[root@localhost /]# cd /mnt
[root@localhost mnt]# ls

4:
如果想打开之前那个机密设备可这样
cryptsetup open /dev/vdb1 heihei  解密
 mount /dev/mapper/heihei /mnt    挂载
ls                                  查看

[root@localhost mnt]# cryptsetup open /dev/vdb1 heihei
Enter passphrase for /dev/vdb1:
[root@localhost mnt]# cd ..
[root@localhost /]# mount /dev/m
mapper/ mcelog mem mqueue/
[root@localhost /]# mount /dev/mapper/heihei /mnt
[root@localhost /]# cd /mnt
[root@localhost mnt]# ls
file1 file10 file2 file3 file4 file5 file6 file7 file8 file9
[root@localhost mnt]#
5:
如果你解密之后,还格式化,那么之前建立的那些文件也就不再了(格式化你们懂得,就相当于一个全新的一样)

四:附加内容,开机自动挂载(当然这个必要性不大,这里仅仅只供参考,还有这种方式)

接下来这些有兴趣的可以操作操作,我是实际操作成功的,因为必要性不是很大,所以仅仅提供文字形式。
有linux 基础的都可以看懂下面的操作,已经够直白,如有不明白,请留言。。。

vim /etc/crypttab    这个命令用来设定开机解密 
如里面写:    heihei        /dev/vdb1    /root/passwd

vim /etc/fstab          开机自动挂载加密设备
/dev/mapper/heihei                      /mnt              xfs                defaults      0  0

vim  /root/passwd      系统自动读取密码记录文件
 这里面写解密密码: 如  2015haha

cryptsetup  luksAddKey    /dev/vdb1          /root/passwd    把密码记录文件和设备关联
 Enter  any  passphrase:    输入密码就可如:2015haha

然后你就可以重起了。

相关推荐