![(如何)我可以使用 VirtualBox(Linux 客户机)来解锁 Windows 8(主机)上的 LUKS 和 EcryptFS?](https://linux22.com/image/1392427/%EF%BC%88%E5%A6%82%E4%BD%95%EF%BC%89%E6%88%91%E5%8F%AF%E4%BB%A5%E4%BD%BF%E7%94%A8%20VirtualBox%EF%BC%88Linux%20%E5%AE%A2%E6%88%B7%E6%9C%BA%EF%BC%89%E6%9D%A5%E8%A7%A3%E9%94%81%20Windows%208%EF%BC%88%E4%B8%BB%E6%9C%BA%EF%BC%89%E4%B8%8A%E7%9A%84%20LUKS%20%E5%92%8C%20EcryptFS%EF%BC%9F.png)
我跑Linux(Ubuntu 13.10
和Mint 16
)大部分时间,无论是在工作还是在家。偶尔我需要启动到视窗(我Windows 8
在家里或Windows 7
工作场所双重启动)。
在 Windows 中,我希望能够访问我的卢克斯驱动器并解锁我的加密文件系统目录(例如“加密主页”*以及一些定制的)。
(* 我想要从 Windows 访问的物理 Linux 驱动器上的那个,而不是客户操作系统上的那个。)
有没办法后者才能做到,而前者只能通过破坏安全设置来破解 Windows,以便使用一个名为自由OTFE作者是谁传闻已死。
所以我想知道,既然宇宙中没有人将这种加密功能移植到 Windows,有没有办法让运行 Linux 的开源虚拟机进行翻译?
您可以使用对话框添加共享文件夹VirtualBox
:
并像这样将它们挂载到 Linux 客户机中:
mkdir /mnt/mySharedFolder
mount -t vboxsf mySharedFolder /mnt/mySharedFolder
但该文件夹的物理位置在主机上。我可以共享物理位置在客户机上的文件夹吗?
例如,我ecryptfs
在 (Windows) 主机上有一个文件夹。我将其与 (Linux) 客户机共享。然后,我将其以解密形式挂载到客户机上的另一个文件夹中。然后,我想将这个挂载的 (虚拟/解密) 文件夹共享回 Windows 主机。
这样我就可以EcryptFS
在 Windows 上访问我的文件了。
同样的问题LUKS
。是否涉及与客户机共享整个物理硬盘,并将已安装的解密文件夹共享回 Windows 主机。
答案1
哇,我很惊讶还没有人回答这个问题。
当我启动 Windows 时,我做过类似的事情,但想使用一些在 cygwin 中无法运行的 Linux 程序。将此方法转换为加密驱动器解锁应该同样简单。
[免责声明] 我不是安全专家,我在这方面的经验也并不比普通人丰富。我无法保证这种方法不会危及/破坏加密的安全性。但是,无论如何,我都相信这种方法能保证我自己的安全。
(针对 LUKS 分区/磁盘)
在主机上,您将设置虚拟机以将加密磁盘/分区转发给客户机。
要转发到分区/磁盘,请确保 Windows 可以在磁盘管理或 Diskpart 中看到该磁盘。
打开命令提示符并运行以下命令。
C:\> diskpart
Microsoft DiskPart version 6.1.7601
Copyright (C) 1999-2008 Microsoft Corporation.
On computer:
DISKPART> lis dis
Disk ### Status Size Free Dyn Gpt
-------- ------------- ------- ------- --- ---
Disk 0 Online 298 GB 9692 GB
Disk 1 Online 1910 MB 960 KB
Disk 2 Online 8 GB 0 B *
假设磁盘 2 是您的加密 LUKS 磁盘。
现在我们可以通过退出 diskpart 来重新使用该命令提示符,exit
或者直接打开一个新的命令提示符。(提升为管理员权限)
C:\> PUSHD "C:\Program Files\Oracle\VirtualBox"
C:\Program Files\Oracle\VirtualBox> VBoxManage.exe internalcommands createrawvmdk -filename C:\VirtualDisks\LUKS.vmdk -rawdisk \\.\PhysicalDrive2
对于磁盘 2 的分区,添加-partitions x,y,z
(x、y、z 是您要使用的分区的编号。)
现在在 Linux vm 的 VM 设置中,添加 vmdk 磁盘,将网络设置为 hostonly 或 birdged,以便您可以通过网络访问 VM。
启动 LiveCD 或安装您选择的 Linux 版本。如果您还没有这样做。
启动后,磁盘应出现在您使用的任何磁盘实用程序/cli 程序中。按您的需要解密并安装它。
现在,您可以使用多种方式访问数据。我更喜欢 sshfs 或 sftp,因为它简单又安全。
一旦您的客户机通过网络提供数据,请使用主机上的适当客户端来获取访问权限。
对于 Windows 中的 sshfs/sftp,您可以使用 Swish、Cygwin 或任何您喜欢的。
(对于位于 Windows 主机 ntfs 驱动器上的加密容器(假设这是您的意思))
我实际上只是将这些数据移动到其他磁盘/分区,然后使用上述方法。
或者更好的是,将其移动到 VHD 并将其附加到 VM 并使用上述方法。
答案2
根据给出的示例:使用带有 Linux GUEST 的 Windows HOST,并且 GUEST 附加了加密文件夹。
问:Windows HOST 能否通过 Linux GUEST 读取文件夹的内容?... 是的!!!
答:最简单的方法是在 Linux GUEST 中设置 FTP/SFTP 帐户,允许用户遍历该文件夹。
=====
这是一个扩展的答案,因为我不确定 LUX 分区隐藏在哪里。
您的计算机配置为:
- 双启动到 Windows 和 Linux(每次启动一个操作系统),或者
- 在 Virtual Box 中使用 Windows GUEST 运行 Linux HOST,或者
- 在 Virtual Box 中运行 Windows HOST 和 Linux GUEST
此外,
- 硬盘上有你想要与访客共享的加密文件夹,或者
- 其中一个GUESTS的vmdk已被加密。
=====
我假设您有权访问该盒子,无论运行哪种操作系统,都可以远程控制 VM 会话。
=====
假设 GUEST 的 vmdks 已加密,并且您希望远程启动它,或者无头启动。有几种方法可以解锁加密分区。
- DropBear 和 BusyBox
- VirtualBox 远程显示 RDP 端口
- wget 全局服务器 -> 解锁密钥 -> 销毁密钥
如果它是共享加密文件夹,您将需要 GUEST OS 启动并请求加密密钥。您可以在 Dracut 期间操作系统启动时执行此操作,也可以稍后手动安装该文件夹。
但是,您需要告诉 VirtualBox 在哪里找到该文件夹,以便它看起来像 GUEST OS 的驱动器。
虽然该文件夹可以驻留在任一驱动器分区上,但我建议将共享文件夹放在单独的分区上/中,以避免操作系统篡改彼此的引导扇区的问题。
======
至于共享文件夹,上面的答案同样适用。创建 FTP 或 Samba 服务器来共享内容。FTP 要容易得多,因为它几乎随每个 Linux 操作系统提供。如果 GUEST 是 Windows,则使用 Samba [又名文件和打印服务]。