5.11. 建立安全的 PCP 连接


您可以配置 PCP 收集器和监控组件,以参与安全的 PCP 协议交换。

5.11.1. 确保 PCP 连接安全

您可以在 Performance Co-Pilot (PCP)收集器和监控组件之间建立安全连接。PCP 收集器组件是 PCP 的一部分,它从不同的源收集和提取性能数据。PCP 监控组件是 PCP 的一部分,它显示从安装了 PCP 收集器组件的主机或存档中收集来的数据。在这些组件之间建立安全连接有助于防止未授权方访问或修改正在收集和监控的数据。

所有与性能指标收集器守护进程(pmcd)的连接都是使用基于 TCP/IP 的 PCP 协议建立的。协议代理和 PCP REST API 由 pmproxy 守护进程提供 - REST API 可通过 HTTPS 访问,以确保安全连接。

pmcdpmproxy 守护进程能够在单一端口上同时进行 TLS 和非 TLS 通信。pmcd 的默认端口是 44321 ,44322 用于 pmproxy。这意味着您不必为您的 PCP 收集器系统在 TLS 或非 TLS 通信之间进行选择,您可以同时使用它们。

5.11.2. 为 PCP 收集器组件配置安全连接

所有 PCP 收集器系统必须有有效的证书,以便参与 PCP 协议交换。

注意

从 TLS 的角度来看,pmproxy 守护进程同时作为客户端和服务器运行。

先决条件

  • 已安装 PCP。如需更多信息,请参阅安装并启用 PCP
  • 私有客户端密钥存储在 /etc/pcp/tls/client.key 文件中。如果您使用其他路径,请调整该流程的对应步骤。

    有关创建私钥和证书签名请求(CSR)的详细信息,以及如何从证书颁发机构(CA)请求证书,请参阅您的 CA 文档。

  • TLS 客户端证书存储在 /etc/pcp/tls/client.crt 文件中。如果您使用其他路径,请调整该流程的对应步骤。
  • CA 证书存储在 /etc/pcp/tls/ca.crt 文件中。如果您使用其他路径,请调整该流程的对应步骤。另外,对于 pmproxy 守护进程:
  • 私有服务器密钥存储在 /etc/pcp/tls/server.key 文件中。如果您使用其他路径,请调整流程的相应步骤
  • TLS 服务器证书存储在 /etc/pcp/tls/server.crt 文件中。如果您使用其他路径,请调整该流程的对应步骤。

步骤

  1. 更新收集器系统上的 PCP TLS 配置文件,以使用 CA 发布的证书来建立安全连接:

    # cat > /etc/pcp/tls.conf << END
    tls-ca-cert-file = /etc/pcp/tls/ca.crt
    tls-key-file = /etc/pcp/tls/server.key
    tls-cert-file = /etc/pcp/tls/server.crt
    tls-client-key-file = /etc/pcp/tls/client.key
    tls-client-cert-file = /etc/pcp/tls/client.crt
    END
  2. 重启 PCP 收集器基础架构:

    # systemctl restart pmcd.service
    # systemctl restart pmproxy.service

验证

  • 验证 TLS 配置:

    • pmcd 服务上:

      # grep 'Info:' /var/log/pcp/pmcd/pmcd.log
      [Tue Feb 07 11:47:33] pmcd(6558) Info: OpenSSL 3.0.7 setup
    • pmproxy 服务上:

      # grep 'Info:' /var/log/pcp/pmproxy/pmproxy.log
      [Tue Feb 07 11:44:13] pmproxy(6014) Info: OpenSSL 3.0.7 setup

5.11.3. 为 PCP 监控组件配置安全连接

配置 PCP 监控组件以参与安全 PCP 协议交换。

先决条件

  • 已安装 PCP。如需更多信息,请参阅安装并启用 PCP
  • 私有客户端密钥存储在 ~/.pcp/tls/client.key 文件中。如果您使用其他路径,请调整该流程的对应步骤。

    有关创建私钥和证书签名请求(CSR)的详细信息,以及如何从证书颁发机构(CA)请求证书,请参阅您的 CA 文档。

  • TLS 客户端证书存储在 ~/.pcp/tls/client.crt 文件中。如果您使用其他路径,请调整该流程的对应步骤。
  • CA 证书存储在 /etc/pcp/tls/ca.crt 文件中。如果您使用其他路径,请调整该流程的对应步骤。

步骤

  1. 使用以下信息创建一个 TLS 配置文件:

    $ home=echo ~
    $ cat > ~/.pcp/tls.conf << END
    tls-ca-cert-file = /etc/pcp/tls/ca.crt
    tls-key-file = $home/.pcp/tls/client.key
    tls-cert-file = $home/.pcp/tls/client.crt
    END
  2. 建立安全连接:

    $ export PCP_SECURE_SOCKETS=enforce
    $ export PCP_TLSCONF_PATH=~/.pcp/tls.conf

验证

  • 验证安全连接是否已配置:

    $ pminfo --fetch --host pcps://localhost kernel.all.load
    
    kernel.all.load
        inst [1 or "1 minute"] value 1.26
        inst [5 or "5 minute"] value 1.29
        inst [15 or "15 minute"] value 1.28
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.