我的 RPI 是 1。原来的。
对于我来说至关重要的是,为了基本的底线安全,我的所有机器都经过加密,一旦断电,如果没有人输入正确的密码,就无法启动/读取。
在我确定可以轻松启用其“磁盘”(闪存卡)加密之前,我无法将 RPI 用于其目的。
是否有一个简单的命令可以在运行后使用,对其进行加密并开始要求我输入密码,就像我对普通 PC 和 VeraCrypt(以前称为 TrueCrypt)所做的那样?
它必须不是需要一些硬件“安全模块”!
如果它变得“太慢”也没关系,因为我发现未加密的 RPI 1 的功能足以为我的系统提供动力。它不会连接屏幕。它将执行轻型“服务器”任务,不需要真正的“快速”。当然,如果它变得很慢,需要30分钟才能启动,而且它不能在不跪着的情况下计算1 + 1,那做成为一个问题,但我有一种感觉,事实并非如此!
在我问的同时,我也想知道如果这是 RPI 4,这是否有任何不同?当然,无论 RPI 版本如何,它仍然必须使用相同的命令,只是后来的型号更快?
RPI从根本上来说是1吗?无法以某种方式做到这一点?
请不要链接到那些充满命令的长达一英里的“教程”。我只想做:
encrypt-pi
Please enter password: **********************
Working... 1%...
Working... 50%...
Working... 97%...
Done! Reboot now to enter the password and enter encrypted mode? y
Rebooting...
如果这是不可能的,那么到底是什么阻止了这件事的发生呢?我真的是唯一担心小偷和其他窥探者窃取我的 RPI 并从而掌握我的整个客户数据库和商业项目记录等的人吗?我什至希望将其用于“媒体中心”RPI;我可能会在客厅展示私人照片或视频,我不希望外部人员看到/拥有这些照片或视频。
我发现每当我在任何地方询问有关加密的问题时,人们都会显得不舒服或者不愿意明确回答。我希望这次不是这样。
答案1
我相信 Raspbian 的衍生发行版 Debian 确实支持加密磁盘。
但是将未加密的磁盘更改为加密的磁盘并不像您希望的那么容易。我认为您将需要备份和恢复文件系统。
(我正在进行一些实验......会让你知道的。)
编辑:实验完成、成功,但并不像您希望的那么容易。
在下面的描述中,我使用/dev/physicaldisk
、encryptedname
、 654321
和/backup/location
作为占位符。第一个是您现有的设备名称(并且在 PI 和另一个 Linux 设备中可能有不同的名称来完成大部分设置)。第二个是要应用于加密磁盘的逻辑名称。第三个是步骤 2 中报告的大小。第四个是存储文件系统映像的位置(但不在加密的文件系统上)。
您需要安装 cryptsetup 和 cryptsetup-initramfs (如果可用)
首先缩小现有的文件系统:
fsck -f /dev/physicaldisk resize2fs -M /dev/physicaldisk
这将报告一个新的大小,我将在下面将其写为 654321。确保你做对了。
将现有文件系统备份到另一个位置。
dd if=/dev/physicaldisk of=/backup/location bs=4096 count=654321
在磁盘上设置加密,然后将其打开。这破坏了那里的一切
cryptsetup luksFormat /dev/physicaldisk cryptsetup luksOpen /dev/physicaldisk encryptedname
恢复文件系统。
dd if=/backup/location of=/dev/mapper/encryptedname bs=4096 count=654321
如果 /backup/location 位于文件系统上,您可以安全地省略 bs= 和 count= 选项。
调整恢复的文件系统的大小以使用所有空间:
resize2fs /dev/mapper/encryptedname
修改引导加载程序中的根文件系统条目。对于 PI 来说,这应该在 中
config.txt
,我认为是在 条目 中cmdline
。我认为你需要改变:root=/dev/physicaldisk
到
root=/dev/mapper/encryptedname cryptopts=target=encryptedname,source=/dev/physicaldisk
我想应该是这样。尝试启动。
对于 Raspberry PI,如果您有两张 Micro-SD 卡并且可以同时安装它们,则可以跳过 /backup/location 并从一张卡上的物理磁盘转到另一张卡上的加密文件系统。
注意:我在 debian amd64 笔记本电脑上测试了这个,而不是在 raspbian PI 上。您的里程可能会有所不同。