如何保护您的 Raspberry Pi 数据免遭丢失或被盗

Raspberry Pi 的数据存储在 microSD 卡或 HDD/SSD 的操作系统分区中。 在安装操作系统期间,没有设置加密分区的选项(在任何流行的 Pi 操作系统中)。 如果 Pi 的媒体丢失或被盗,它可以连接到另一台计算机并且可以读取所有数据,而不管强登录密码或自动登录状态(关闭或打开)。

受损数据可能包括敏感信息,例如“Firefox 配置文件数据”,其中包含登录凭据(保存的各种网站的用户名和密码)。 这些敏感数据落入坏人之手可能会导致身份盗窃。 本文是使用加密保护数据的分步指南。 为简单起见,它是使用 GUI 工具完成的一次性配置。

Raspberry Pi 上丢失媒体的风险

与台式机或笔记本电脑相比,Pi 既没有螺丝,也没有任何用于媒体的物理锁。 虽然这种灵活性可以方便地切换操作系统,但通过更换 microSD 卡,这对安全性不利。 坏演员只需一秒钟就可以删除其媒体。 此外,microSD 卡非常小,无法追踪它们。

此外,Raspberry Pi 上的 microSD 卡插槽没有夹子。 当您随身携带 Pi 时,如果卡片在某处滑落,则很有可能有人会查看其中的内容。

在 Pi 上保护个人数据的不同方法

一些 Pi 用户了解风险并主动加密单个文件。 为浏览器设置主密码也是一种常见做法。 但是,每次都需要付出额外的努力。

考虑到这些因素,明智的做法是为整个磁盘设置加密。 除非他们有加密密码,否则其他人将无法读取磁盘,当然他们不知道也无法询问您。 使用密码字典进行暴力破解也不会破坏它,因为您将设置一个足以抵抗此类攻击的密码。

使用现有磁盘与在新磁盘上设置

这个想法是创建一个加密分区并将其设置为主目录。 由于所有个人数据通常都在主目录中,因此数据安全性将保持不变。

有两种不同的方法可以做到这一点:

  1. 为当前用于操作系统的磁盘上的加密分区腾出空间。
  2. 使用新的 SSD 或硬盘,将其连接到 Pi USB 转 SATA 适配器 (如果需要),并将其用作加密分区。

两种配置都有一定的优势:

  • 第一种配置使用现有的 microSD 卡或 SSD,不需要任何额外的硬件。 作为单个磁盘,它可以保持紧凑并且有利于便携性。
  • 第二种配置有利于延长磁盘寿命,因为写入次数较少。 由于读/写分布在两个磁盘之间,因此速度也稍快一些。

这里讨论第一个配置,因为它还有几个步骤。 第二种配置是第一种配置的一部分,排除的步骤很容易理解。

这里的安装展示了在树莓派操作系统上的安装过程; 可以为 Ubuntu 桌面操作系统及其版本(例如 MATE)复制相同的过程。

准备加密磁盘

由于加密分区将位于 OS 磁盘本身,因此必须从根分区中切出所需的空间。 这不能在引导的 Pi 上完成,因为根分区已经挂载。 因此,请使用另一台可以运行 gnome-disk-utility 的计算机,例如 Linux PC。

或者,您也可以双启动 Raspberry Pi 或运行一个临时操作系统,并使用 USB 连接媒体。

将您的 Pi 的操作系统磁盘连接到另一台计算机并安装该工具来管理磁盘:

sudo apt update
sudo apt install gnome-disk-utility

打开 磁盘 从菜单或使用命令:

gnome-disks

此时的一个可选步骤是备份磁盘,尤其是在磁盘上有重要数据的情况下。 磁盘工具具有将整个磁盘保存为图像的内置功能。 如果需要,可以将此图像恢复回媒体。

为加密磁盘分配所需的空间。 选择 根分区, 点击 齿轮 控制和选择 调整大小

如果使用容量为 32GB 或更大容量的 microSD 卡或驱动器,请分配 15GB 用于根分区,其余部分留给要加密的分区。

点击 调整大小可用空间 将被创建。

完成后,从这台计算机中弹出媒体。 将它连接到您的 Raspberry Pi 并启动它。

安装加密所需的工具

打开终端并在 Pi 上安装 Disks 工具:

sudo apt install gnome-disk-utility -y

由于需要加密,请安装以下加密插件:

sudo apt install libblockdev-crypto2 -y

重新启动磁盘服务:

sudo systemctl restart udisks2.service

使用 GUI 设置加密:简单的方法

从菜单或使用以下命令打开磁盘工具:

gnome-disks

选择 可用空间 并点击 + 创建分区的符号。

将分区大小保留为默认最大值,然后单击 下一个.

给一个 卷名; 例如, 加密. 选择 EXT4 并检查 密码保护卷 (LUKS).

给一个密码,一个强大的。 虽然建议使用数字和特殊字符的组合,但仅密码的绝对长度就无法通过暴力破解进行破解。 例如,一个 17 个字符的密码将需要几百万年才能强行使用当今最快的计算机。 因此,您可以在截断空格后使用非常长的句子。

点击 创造加密分区应该已经准备好了。

如果你遇到一个 错误/etc/crypttab 条目,使用以下命令创建一个空白文件:

sudo touch /etc/crypttab

然后重复使用创建分区的过程 + 象征。

该分区现在已被 LUKS 加密,但必须在启动时解锁。 需要在 /etc/crypttab 文件。 选择分区,点击 齿轮 控制和选择 编辑加密选项.

切换 用户会话默认值, 查看 系统启动时解锁提供 密码,然后单击 好的.

现在选择 加密 分区并使用 图标。 复制 挂载点.

将主目录移动到加密驱动器

为安全起见,现在克隆主目录并稍后在该过程成功后删除源目录(将“arjunandvishnu”替换为您的用户名)。

sudo rsync -av /home/* /media/arjunandvishnu/Encrypted/

将复制文件的所有权授予正确的用户:

sudo chown -Rv arjunandvishnu:arjunandvishnu /media/arjunandvishnu/Encrypted/arjunandvishnu

如果有多个用户,请重复:

sudo chown -Rv pi:pi /media/arjunandvishnu/Encrypted/pi

自动挂载磁盘

此加密分区必须在启动时自动挂载。 选择 加密 磁盘,点击 齿轮 控制和选择 编辑安装选项.

切换 用户会话默认值 并设置 安装点/家. 这将添加一个条目到 /etc/fstab 文件。

重启 Pi 并登录。首先,主目录必须有 755 权限:

sudo chmod 755 /home

要检查加密分区是否用于 /home,请在桌面上创建一个空白文件夹并通过导航到该文件夹​​进行验证 加密 目录。

请注意,在 Raspberry Pi OS 上,默认文件管理器 (pcmanfm) 确实允许删除可移动驱动器上的回收站。 要启用删除到回收站,请取消选中首选项中的设置。

删除保存的加密密码

早些时候,在配置加密时,密码被保存了。 此配置是在 /etc/crypttab 文件。

您的 luks-key 文件未加密存储,打开它会显示密码。 这是一个安全风险,必须加以解决。 把锁和钥匙放在一起是不好的。

删除您的 luks-key 文件并从 /etc/crypttab.

sudo rm /etc/luks-keys/YOUR-KEY

现在,每次启动时,树莓派都会在开始时询问加密密码。 这是预期的行为。

如果出现空白屏幕,请使用 向上/向下箭头 用于显示登录屏幕的键。 利用 退格 清除加密密码中的任何字符和密钥。 它将解锁加密分区。

删除旧的主目录

早些时候,您没有移动,而是复制了主目录。 旧目录的内容仍然未加密,如果信息敏感,必须删除。 要轻松完成此操作,请将媒体安装到另一台计算机上。 导航到已挂载的外部驱动器根分区中的 OLD 主目录并将其删除(小心)。

Raspberry Pi 上的加密很容易

保护您的数据是一个主题,通常会让您在开始时多走一步,但以后会得到很好的回报。 这里涵盖了很多关于加密的如果和但是。 但从根本上说,指令很简单,实现也很容易。 没有理由对加密感到害怕; 只要您不要忘记加密密码,恢复数据也很容易。

如果此加密与 RAID-1 数据镜像一起设置,它将为您的数据提供安全性和安全性,使其免受物理驱动器故障的影响,并完成完美的设置。