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 / 问题 / 650339
Accepted
David Thielen
David Thielen
Asked: 2014-12-10 09:09:16 +0800 CST2014-12-10 09:09:16 +0800 CST 2014-12-10 09:09:16 +0800 CST

如何对我们网站的 ssl 密钥保密?

  • 772

我想对我们网站的 SSL 密钥保密。它存储在 2 个 USB 记忆棒上,一个在保险箱中,一个由我保管。然后我是唯一一个将它应用到网络服务器的人,这样它就完全安全了。

除了...

至少在 IIS 上,您可以导出密钥。因此,任何管理员都可以获得密钥的副本。有没有办法解决?或者根据定义,所有管理员都可以完全访问所有密钥吗?

更新: 我确实有我完全信任的系统管理员。导致这种情况的原因是其中一个人辞职了(他们有一个小时通勤到我们公司,有 5 分钟通勤到新公司)。虽然我信任这个人,就像我们在有人离开时禁用他们的 Active Directory 帐户一样,我认为我们应该有办法确保他们不会保留使用我们 SSL 的能力。

最让我印象深刻的是,如果我是唯一拥有它的人。我们的证书在一月份到期,所以如果可以的话,现在是时候改变做法了。根据答案,我们似乎做不到。

因此,这导致了一个新问题 - 当有权访问证书的人离开时,获取新证书并撤销现有证书是否是标准做法。或者如果离开的人是值得信赖的,那么我们是否继续使用我们拥有的证书?

ssl
  • 4 4 个回答
  • 1836 Views

4 个回答

  • Voted
  1. Best Answer
    Hyppy
    2014-12-10T10:17:30+08:002014-12-10T10:17:30+08:00

    对服务器具有管理(甚至通常是物理)访问权限的人将能够提取私钥。无论是通过导出、内存嗅探还是其他此类诡计。

    您的管理员有权访问您的 Web 服务器的私钥。接受这个事实,然后解决这个问题。如果您的系统管理员不值得信任,那么您可能需要更好的系统管理员,或者至少需要更少的系统管理员来访问 Web 服务器。如果这是一个管理安全偏执的问题,那么他们信任系统管理员的能力可能存在更深层次的问题。

    这并不是说您应该让每个人都可以访问私钥。在授予访问权限之前,应该始终需要访问权限。考虑到这一点,您是否会采取极端措施来确保完全控制网站的系统管理员无法导出私钥,但仍然可以以任何数量几乎无法追踪的方式操纵网站本身?我们在这里重新信任,我认为这是需要解决的问题的核心。

    • 26
  2. Grant
    2014-12-10T10:25:48+08:002014-12-10T10:25:48+08:00

    导入密钥时,您可以选择将其标记为不可导出。这将阻止您使用 IIS 或证书 MMC 来导出它。至少,它让它变得更难一些。

    但是,如果他们在计算机上拥有管理员帐户,或者可以物理访问它 - 他们仍然能够通过其他方式获取密钥。

    • 11
  3. LawrenceC
    2014-12-11T05:12:43+08:002014-12-11T05:12:43+08:00

    这就是“中间 CA”可以提供帮助的地方。

    以下示例中的“根 CA”由 SSL 公司拥有,而不是您。

    您无法直接控制根 CA 创建的密钥,因此如果根 CA 签名的密钥被泄露,您必须通过它们来撤销它。

    但:

    Root CA (SSL company)
     |
     +-Intermediate CA (You)
       |
       +-Server Key for site
    

    如果您将另一个 CA 放在中间,并让您购买的 SSL 证书签署您自己的 CA 证书,而不是直接签署您的服务器证书,您可以保留对下面的服务器证书的控制权并颁发吊销证书,或者在它下面的东西受到损害时做任何其他事情.

    您将中间 CA 私钥留给自己,管理员不需要看到它。

    你也可以这样做:

    Root CA (SSL company)
     |
     +-Intermediate CA (You)
       |
       +-Server Key 1 for site
       +-Server Key 2 for site 
       +-Server Key 3 for site
    

    您可以为妥协做好准备,并提前生成证书,这样您就可以在单个密钥被吊销时快速切换。管理员在 1 妥协之前不会获得 2 或 3 的密钥。您可以在您的网站上发布有关此方案的通知,这也会向您的管理员传达您已准备好应对妥协以及他们的有趣业务end 不会破坏您的网站。

    • 0
  4. CodingYoshi
    2019-03-05T18:09:01+08:002019-03-05T18:09:01+08:00

    有许多文章建议将私钥存储在服务器以外的地方,但这些私钥用于代码签名证书。想象一下,您在离线计算机上拥有只有您可以访问的密钥,编写了一些软件,您从离线服务器获取私钥,对代码进行签名,然后在需要签名之前不再需要私钥再次编码。

    最好的解决方案一直是并将继续离线存储您的密钥。如何操作完全取决于您(有几种方法),只需记住将其妥善保管在办公室保险箱或不易被人带入口袋的地方。

    阅读更多:https ://www.thesslstore.com/blog/heres-what-happens-when-your-private-key-gets-compromised/

    相比之下,SSL 证书用于网站启用 HTTPS 通信:在 Web 服务器的每次握手期间都需要私钥。因此,离线存储它是行不通的。

    • 0

相关问题

  • 如何使用 Tomcat 5.5 更新 SSL 证书

  • 为 IIS6 自行生成 SSL 证书?

  • plesk 上的域和子域 ssl 访问

  • 如何设置 SSL 邮件服务器?

  • 如何通过 SVN 命令行接受 SSL 证书?

Sidebar

Stats

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

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

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

    • 9 个回答
  • Marko Smith

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

    • 3 个回答
  • Marko Smith

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

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +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