在Linux中使用Bitlocker
在使用Windows平台的磁盘加密功能时,Bitlocker已经是使用量极高的加密工具了。但是当有跨平台的加密磁盘访问需求时就得使用第三方程序进行访问了,比如在Linux和OS X的环境下,就可以考虑:GitHub - Aorimn/dislocker: FUSE driver to read/write Windows' BitLocker-ed volumes under Linux / Mac OSX,本文使用的dislocker,也已经诞生蛮久了,对于Linux上的支持也很完善了。可以参考教程:如何在 Linux 中挂载 Bitlocker 加密的 Windows 分区,原文好像是在linux.cn上的,哎。
虽然还有VeraCrypt - 为偏执狂提供强大安全保障的免费开源磁盘加密工具,这类免费开源工具,但是奈何Windows的装机量实在是太高了,在使用体验上确实要稍差一些,但是VeraCrypt在文件的写入读取上有更高的性能,还有假密码这类更进阶的功能,其实是更完善的。
我的已经加密的硬盘是1T的机械硬盘,整个分区都已经是Bitlocker加密,如下图:
使用参数
翻译一下dislocker的使用参数:
dislocker [-hqrsv] [-l LOG_FILE] [-O OFFSET] [-V VOLUME DECRYPTMETHOD -F[N]] [-- ARGS...]
其中 DECRYPTMETHOD
可以是以下之一:
-p[RECOVERY_PASSWORD]
:使用恢复密码解密-f BEK_FILE
:使用 BEK 文件(通常位于 USB 密钥中)解密-u[USER_PASSWORD]
:使用用户密码解密-k FVEK_FILE
:直接使用 FVEK 文件解密-K VMK_FILE
:直接使用 VMK 文件解密-c
:使用明文密钥解密(默认)
选项说明
选项 | 描述 |
---|---|
-c , --clearkey | 使用明文密钥解密卷(默认) |
-f , --bekfile BEKFILE | 使用 BEK 文件解密卷(通常位于 USB 钥匙上) |
-F , --force-block=[N] | 强制使用第 N 个元数据块(1、2 或 3) |
-h , --help | 显示帮助并退出 |
-k , --fvek FVEK_FILE | 使用 FVEK 文件直接解密卷 |
-K , --vmk VMK_FILE | 使用 VMK 文件直接解密卷 |
-l , --logfile LOG_FILE | 将日志输出到指定文件(默认为 stdout) |
-O , --offset OFFSET | 指定 BitLocker 分区的偏移量(单位为字节,默认为 0) |
-p , --recovery-password=[RECOVERY_PASSWORD] | 使用恢复密码解密卷 |
-q , --quiet | 不显示任何输出 |
-r , --readonly | 禁止对 BitLocker 卷进行写操作 |
-s , --stateok | 不检查卷状态,假设可以安全挂载 |
-u , --user-password=[USER_PASSWORD] | 使用用户密码解密卷 |
-v , --verbosity | 增加输出详细程度(默认显示严重错误) |
-V , --volume VOLUME | 指定要从中获取元数据和密钥的卷 |
环境配置
我使用的是Ubuntu,安装dislocker:
sudo apt install dislocker
# 如果你的分区是NTFS或者exFAT,可能还需要安装,不过新版Ubuntu一般是安装了的:
sudo apt-get install ntfs-3g
sudo apt install exfat-utils
开始挂载
使用时和普通的mount相同,只是挂载点成了两个,一个是加密文件的挂载点,一个是解密后文件的挂载点,这里使用的和教程里面的路径相同:
sudo mkdir -p /media/decrypt
sudo mkdir -p /media/windows-mount
直接使用-u
,然后输入用户密码即可:
dislocker /dev/sda1 -u -- /media/decrypt
然后使用以下命令即可挂载解密后的硬盘。
mount -o loop /media/decrypt/dislocker-file /media/windows-mount
就这样简单,两行命令就完成了Bitlocker在Linux上的使用,并且dislocker对嵌入式平台的支持也很好,使用流畅。
卸载硬盘就使用umount
即可。如果需要恢复密码解密卷或者直接解密,可以看参数里面的其他内容。
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。