FreeBSD 加密盘的使用

FreeBSD 加密盘的使用

yarshure@gmail.com

本文通过FreeBSD geom 框架gbde 和geli 对磁盘,文件的加密,保护计算机系统数据,使数据免受攻击者获得有用的资源。

一使用gbde对磁盘进行加密

1 添加内核选项

options GEOM_BDE

重新编译,安装内核

2 准备imgfile

#dd if=/dev/zero of=newimage bs=1k count=50k

生成1个50MB的image,文件大小=bs*count

3 使用newimage 生成文件系统

#mdconfig -a -t vnode -f newimage -u 0
# ls /dev/md0

验证是否生成

4 创建一个目录来保存 gbde Lock 文件

# mkdir /etc/gbde

初始化 gbde 分区

# gbde init /dev/md0 -I -L /etc/gbde/md0

5把加密分区和内核进行关联

# gbde attach /dev/md0 -l /etc/gbde/md0

6在加密设备上创建文件系统

#newfs -U -O2 /dev/md0.gbde
# mkdir /mnt/md0
#mount /dev/md0.gbde /mnt/md0

#df -H 验证

备份: 备份 newimage,/etc/gbde/md0

卸载:

#umount /mnt/md0
#gbde detach /dev/md0
#mdconfig -d 0

二使用geli加密磁盘

内核选项:

options GEOM_ELI
device crypto

重新编译内核,安装新内核,就可以了。
另外如果想通过模块方式加载,则可以在/boot/loader.conf文件里添加以下内容:
geom_eli_load="YES"

1 准备imgfile

#dd if=/dev/zero of=newimage bs=1k count=50k

生成1个50MB的image,文件大小=bs*count

2使用newimage 生成文件系统

#mdconfig -a -t vnode -f newimage -u 0

# ls /dev/md0 验证是否生成

3 生成主密钥:

#dd if=/dev/random of=/root/md0.key bs=64 count=1
# geli init -s 4096 -K /root/md0.key /dev/md0

如果密钥文件写作 “-”, 则表示使用标准输入。 下面是关于如何使用多个密钥文件的例子:

# cat keyfile1 keyfile2 keyfile3 | geli init -K – /dev/md0

4将md0和密钥关联

# geli attach -k /root/md0.key /dev/md0
Enter passphrase:

新的明文设备将被命名为 /dev/md0.eli。

# ls /dev/md0*
/dev/md0 /dev/md0.eli

5创建文件系统

# dd if=/dev/random of=/dev/md0.eli bs=1m
# newfs /dev/md0.eli
# mount /dev/md0.eli /mnt/md0

使用df -h 检查

6卸下卷并断开

# umount /mnt/md0
# geli detach md0.eli
#mdconfig -d 0

备份:备份newimage, /root/md0.key

详细参考:

FreeBSD 使用手册 17.6, 17.13.1 Manpage: gbde(8), newfs(8), geli(8), crypto(9), mdconfig(8)

原文链接:https://wiki.freebsdchina.org/doc/s/crypto_disk