AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 34794
Accepted
cjs
cjs
Asked: 2009-07-02 18:18:05 +0800 CST2009-07-02 18:18:05 +0800 CST 2009-07-02 18:18:05 +0800 CST

使用加密文件系统自动引导和保护 Linux 服务器

  • 772

我正在设置一些新的 Ubuntu 服务器,我想保护它们上的数据以防被盗。威胁模型是想要硬件的攻击者,或者更确切地说是想要数据的天真的攻击者。


请注意本节。

威胁模型不包括需要数据的聪明攻击者;我认为他们会执行以下一项或多项操作:

  1. 将 UPS 拼接到电源线中,以保持机器连续运行。

  2. 在计算机和网络终端点之间插入一对以太网网桥,该网桥将通过无线网络桥接通信,该无线网络的范围足以使主机保持网络连接。

  3. 打开盒子并使用内存总线上的探针来抓取有趣的东西。

  4. 使用 TEMPEST 设备来探测主机正在做什么。

  5. 使用法律手段(例如法院命令)强制我披露数据

  6. 等等等等。


所以我想要的是在磁盘上的加密分区上拥有一些或理想情况下的全部数据,以及在某种外部媒体上访问它所必需的密钥材料。我能想到的存储密钥材料的两种方法是:

  1. 将其存储在可通过网络访问的远程主机上,并配置足够的网络以在引导过程中检索它。仅允许检索分配给受保护主机的 IP 地址(因此,如果在另一个网络连接上启动,则不允许访问加密数据),并且如果发现机器被盗,管理员可能会禁用它。

  2. 将其存储在 USB 存储设备上,该设备以某种方式比主机本身更难以窃取。将其放置在远离主机的位置,例如连接到房间另一个角落甚至另一个房间的 5 米 USB 电缆的末端,可能会显着降低攻击者获取它的机会。以某种方式保护它,例如将其链接到固定不动的东西上,甚至将其放入保险箱中,效果会更好。

那么我有哪些设置选项?正如我之前所说,我希望对所有内容(可能除了一个不包含 /etc 的小型引导分区)进行加密,这样我就不必担心我将文件放在哪里,或者它们在哪里重新意外着陆。

我们正在运行 Ubuntu 9.04,如果它有什么不同的话。

security boot encrypting-file-system
  • 2 2 个回答
  • 5701 Views

2 个回答

  • Voted
  1. Best Answer
    Haakon
    2009-07-02T19:53:31+08:002009-07-02T19:53:31+08:00

    我知道选项 1 的一个巧妙变体,称为 Mandos。

    它使用 GPG 密钥对、Avahi、SSL 和 IPv6 的组合,所有这些都添加到您的初始 RAM 磁盘中,以安全地检索其根分区的密钥密码。如果 LAN 上不存在 Mandos 服务器,则您的服务器是加密的砖块,或者 Mandos 服务器在给定时间段内没有看到来自 Mandos 客户端软件的心跳,它将忽略未来对该密钥对和服务器的请求下次启动时是加密砖。

    万都首页

    曼多斯自述文件

    • 8
  2. Evan Anderson
    2009-07-02T18:34:04+08:002009-07-02T18:34:04+08:00

    如果您只是想防御非技术攻击者,我认为最好的选择是更好的物理安全性。

    我的想法是这样的:

    如果您正在寻找一种无需人工干预即可输入密钥材料的靴子,那么您将不会想出任何解决方案,即使是具有任何技术技能的随员(或者更恰当地说,有能力支付技术技能的人)。

    将密钥材料放入 USB 拇指驱动器之类的东西不会提供任何真正的安全性。攻击者可以从拇指驱动器中读取密钥。拇指驱动器无法知道它所插入的计算机是服务器计算机还是攻击者的笔记本电脑。攻击者所要做的就是确保他们要么拿走所有东西,要么如果你的 USB 密钥在一个 15 英尺长的 USB 延长电缆的末端卡在保险箱内,只需将延长电缆插入他们的 PC 并读取钥匙。

    如果您要通过网络传输密钥,您可能会“加密”它。攻击者所要做的就是窃听密钥过程,窃取服务器,然后对您通过网络发送密钥时所做的任何“加密”进行逆向工程。根据定义,从网络上接收“加密”密钥的服务器计算机必须能够“解密”该密钥才能使用它。所以,真的,你不是在加密密钥——你只是在编码它。

    最终,您需要一个(人工?)智能来将密钥输入服务器。可以说“我知道除了服务器计算机我没有向任何人泄露密钥,而且我知道它没有被盗”。人类可以做到这一点。USB 拇指驱动器不能。如果您找到可以做到这一点的另一种智能,那么我认为您将拥有一些适销对路的东西。>微笑<

    我认为,您很可能会丢失密钥并破坏您的数据,而不会获得任何安全性。代替您的加密游戏策略,我认为您最好拥有更强的物理安全性。

    编辑:

    我认为我们可能正在从“威胁模型”一词的不同定义中工作。

    如果您的威胁模型是硬件盗窃,那么您提出的解决方案 re: 磁盘加密,在我看来,对抵御威胁没有任何作用。您提出的解决方案看起来像是针对数据盗窃而不是硬件盗窃的对策。

    如果你想阻止硬件被盗,你需要用螺栓固定它,把它锁起来,用混凝土包起来,等等。

    我已经说了我想说的关于:数据盗窃,所以我不会再强调这个了,只是说:如果你要将密钥放入物理设备并且你无法保护服务器计算机不被盗,那么您也无法保护密钥设备不被盗。

    我想您最好的“便宜”解决方案是操纵某种基于网络的密钥交换。我会让一个或多个人进入循环,以在重新启动时验证密钥的“释放”。它会导致停机,直到人类“释放”密钥,但至少它会让您有机会找出为什么请求密钥“释放”并决定是否这样做。

    • 6

相关问题

  • 为什么使用authorized_keys通过ssh自动登录不起作用?

  • 如何启用与 SQL Server 实例的加密连接?

  • 从多个位置保护远程服务器/工具访问的最佳方法是什么?

  • 在 SOHO 环境中实施的最佳 VPN 技术是什么?[关闭]

  • 保护新的 Ubuntu 服务器 [关闭]

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve