0

我有一个关于加密磁盘的问题。

我有 2 台服务器:1 台是用于 web/frontend 的 apache,它与服务器 2 对话,即 mysql。它们都只用于 Intranet;没有外部访问。我正在研究使用 PGP 或 GnuPG 来加密磁盘。不过,我不清楚这到底是如何工作的。

密钥将存储在哪里?在客户端?在阿帕奇?如果apache上有key可以访问mysql,是不是每个用户都需要一个key?如果是这样,如果密钥 1 用于更改某些数据,那么使用密钥 2 的用户是否无法访问该数据?还有 apache 密钥,是否只能由具有本地密钥的用户访问?

加密是即时完成的吗?它会降低性能吗?

加密这些服务器上的数据的最佳方法是什么,但用户可以访问它们?

谢谢!

4

1 回答 1

1

在您描述的设置中,可以有很多地方和方式可以加密数据。如果您想加密服务器之间传输的所有数据,那么在它们之间建立一个虚拟专用网络 (VPN) 就可以了。如果你想加密磁盘上的实际数据,你可以在 Linux 上使用像 CFS 这样的加密文件系统。如果你有点偏执,你可能也想加密交换空间。

考虑到加密操作对 CPU 的负担非常重,一直加密所有数据可能效率不高。我猜没有必要加密所有内容,您只想加密一些敏感数据。我认为最直接的方法是使用用户的密码加上随机(为每个用户生成一次)作为密钥,并使用像 AES 这样的对称密钥算法。

您的 Web 应用程序应该以加密形式存储和检索数据库中的数据,并注意不要将未加密的数据保存在内存中的时间超过严格必要的时间。为了(尝试)确保在之后将其发送给客户端时保持机密,您应该使用TLS

于 2010-03-26T18:57:53.973 回答