【问题标题】:Linux install Client's SSL "ca-cert" in local?Linux 在本地安装客户端的 SSL“ca-cert”?
【发布时间】:2014-12-11 07:41:37
【问题描述】:

我有 2 个 Linux 服务器(带有 LAMP):

  1. 具有 SSL 的 Web 服务器 (https://www.example.com)
  2. 管理服务器(需要通过 https 连接到 Web 服务器)

当我通过 curl 命令从管理服务器(到 Web 服务器)连接时。它在拒绝。然后,当我将 curl 与 --caeert 选项一起使用时,它会通过。像这样:

# curl --cacert CAchain.crt -I https://www.example.com
HTTP/1.1 200 OK
..

我收到200 OK 只是因为--cacert CAchain.crt

那么显然我需要不定义--cacert 的纯/基本curl 命令才能工作。喜欢:

# curl -I https://www.example.com
HTTP/1.1 200 OK
..

这样我的管理应用程序将肯定能够连接到它(通过 https)。

  • 但是现在,当我从管理服务器(通过其应用程序)连接到https://www.example.com 时,它正在反弹。使用 SSL 无法访问。

如何让我的 Linux (RHEL) 安装客户端的 CA-CERT 内部,以便自动避免定义证书文件。这样通过 CURL 或 Web 浏览器(来自管理员)与“https://www.example.com”的任何通信都可以成功通过。 (是不是类似于我们制作“无密钥的 SSH”逻辑?但是如何?)

【问题讨论】:

    标签: https openssl ssl-certificate


    【解决方案1】:

    您需要将 CA 证书添加到 curl 可以使用它的地方 - 看起来您只是将它保存在本地目录中(这不是 curl 寻找它的地方 - 通常在某些 @ 987654326@-类型位置)。有几种方法可以做到这一点。我在 RHEL(或 CentOS)中没有太多经验,但我为 Debian 做过。

    This ServerFault Post 可能会有所帮助。

    同样,This Post 可能会帮助您正确安装/导入 CA 证书。

    【讨论】:

    • 这样可以“只”帮助卷曲?实际上,我的服务器需要通过 Web 应用程序(不是真正来自 CURL)连接那个远程“https://”。所以我真正需要的是服务器范围的解决方案,无论我通过 curl、Apache、lynx 或 wtv 连接什么。请问您的方法是否适用于此。 (抱歉有点混乱)
    • 答案还是一样——您需要将 CA 证书导入到您的管理服务器的信任链中,但过程可能会有所不同。查看 RedHat 的文档 here
    • 此解决方案有效。但是请问这种方法怎么称呼?换句话说,我们在这里做什么?是“安装根证书”吗? =)
    • 你明白了 - “安装根证书”。 =)
    猜你喜欢
    • 2021-11-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多