【问题标题】:would I need SSL on Server A and Server B for handling a cURL request or could I just have it on Server B?我是否需要服务器 A 和服务器 B 上的 SSL 来处理 cURL 请求,或者我可以只在服务器 B 上使用它吗?
【发布时间】:2012-02-15 16:38:12
【问题描述】:

我需要从 服务器 A服务器 B 发出 CURL 请求。

将从 Server A 解析一些敏感信息,我需要保护这些信息。

问题是,服务器 A 将是许多不同的服务器: 这将在一个类似于 WordPress 的项目中实现,用户在该项目中下载软件并将其安装在他们的域中(拥有用户域的服务器将是 Server A)。所以我希望我不需要在 Server A 上安装 SSL,因为那意味着我必须强制我的用户购买 SSL 证书。

那么,在 CURL 请求中发送敏感信息时,我是否需要双方都使用 SSL,或者我可以在 服务器 B 上使用它,而它仍然是安全的吗?

也欢迎任何替代建议。 :)

【问题讨论】:

    标签: security ssl curl


    【解决方案1】:

    必须在服务器 A 上安装 SSL,因为从那里您将“机密”数据发送到服务器 B。在服务器 B 上安装 SSL 没有意义。

    如果您真的无法在所有服务器上使用 SSL,请使用一些加密-解密算法。

    服务器 A -> 加密数据 -> 发送到服务器 B -> 在服务器 B 接收加密数据 -> 服务器 B 解密数据

    【讨论】:

    • 内网数据不就可以泄露吗? 43% 的数据丢失来自内部员工。 scmagazine.com/…
    【解决方案2】:

    SSL 不在服务器上;这是一种在服务器之间安全连接的方式。您需要在其中一个上拥有 SSL 证书(在这种情况下,服务器 B 将拥有证书)。然后,服务器 A 将只使用 SSL 客户端/SSL 连接到服务器 B 来传递信息。根据设置,可以使用内置工具轻松完成 SSL 连接(如 CURL 或 PHP,或者几乎所有其他工具都允许以某种方式打开 SSL 连接)

    【讨论】:

      【解决方案3】:

      服务器A服务器B的连接而言,服务器A不是服务器,它是一个客户。您需要针对 SSL/TLS 库编译 cURL 以支持 HTTPS 连接,但 cURL(或任何使用 libcurl 的)将充当客户端。

      我怀疑现在大多数 cURL 安装都是针对 OpenSSL 或 LibNSS 编译的。据推测,您可能是通过 PHP 引用 cURL,在这种情况下,您应该能够在 phpinfo 中进行检查。 (只是尝试连接到https URL 也可能会给您一个提示:如果您收到“这不是使用 SSL 支持编译”的错误,您可能需要升级您的 PHP/cURL 安装.)

      您可能需要在客户端做的是配置您愿意信任的 CA 证书(例如任何 HTTPS 连接)。 cURL 作为设置 CA 文件/CA 路径的选项。

      此外,虽然在 Server A(客户端)上启用 HTTPS 没有严格要求,但您可能需要考虑它,这取决于您是否显示从 获取的任何敏感信息em>服务器 B 在由 服务器 A 提供服务的页面上。是否需要这样做真的取决于您如何处理这些信息。 (请注意,在这种情况下,在 Server A 上启用 SSL 几乎与配置客户端完全分开。)

      【讨论】:

        猜你喜欢
        • 2011-02-24
        • 2013-05-22
        • 1970-01-01
        • 1970-01-01
        • 2018-11-03
        • 1970-01-01
        • 2015-08-20
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多