1.2. 配置 Sensor 以信任自定义证书
如果您使用不全局信任的自定义证书,您必须将 Sensor 配置为信任您的自定义证书。否则,您可能会遇到错误。具体类型的错误会因您的设置和您使用的证书可能会有所不同。通常,它是一个与 x509 验证
相关的错误。
如果您使用全局可信证书,则不需要将 Sensor 配置为信任您的自定义证书。
1.2.1. 下载 Sensor 捆绑包
Sensor 捆绑包包括安装 Sensor 所需的配置文件和脚本。您可以从 RHACS 门户下载 Sensor 捆绑包。
流程
-
在 RHACS 门户中,进入 Platform Configuration
Clusters。 - 点 New Cluster 并为集群指定一个名称。
如果您要在同一集群中部署 Sensor,请接受所有字段的默认值。否则,如果您要部署到不同的集群中,请将地址
central.stackrox.svc:443
替换为负载均衡器、节点端口或其他地址(包括端口号),该地址可从您要安装的其他集群访问。注意如果您使用一个支持非 gRPC 的负载均衡器,如 HAProxy、AWS Application Load Balancer (ALB) 或 AWS Elastic Load Balancing (ELB),请使用 WebSocket Secure (
wss
) 协议。使用ws
:-
使用
wss://
为地址加上前缀,以及 -
在地址后添加端口号,例如
ws://stackrox-central.example.com:443
。
-
使用
- 点 Next 继续。
- 点 Download YAML File and Keys。
1.2.2. 在部署新的 Sensor 时将 Sensor 配置为信任自定义证书
前提条件
- 您已下载了 Sensor 捆绑包。
流程
如果您使用
sensor.sh
脚本:解压 Sensor 捆绑包:
$ unzip -d sensor sensor-<cluster_name>.zip
运行
sensor.sh
脚本:$ ./sensor/sensor.sh
运行传感器(
./sensor/sensor.sh
)脚本时会自动应用证书。在运行sensor.sh
脚本前,您还可以将额外的自定义证书放在sensor/additional-cas/
目录中。
如果没有使用
sensor.sh
脚本:解压 Sensor 捆绑包:
$ unzip -d sensor sensor-<cluster_name>.zip
运行以下命令来创建 secret:
$ ./sensor/ca-setup-sensor.sh -d sensor/additional-cas/ 1
- 1
- 使用
-d
选项指定包含自定义证书的目录。
注意如果收到 "secret already exists" 错误消息,请使用 the
-u
选项重新运行脚本:$ ./sensor/ca-setup-sensor.sh -d sensor/additional-cas/ -u
- 使用 YAML 文件继续 Sensor 部署。
1.2.3. 配置现有 Sensor 以信任自定义证书
前提条件
- 您已下载了 Sensor 捆绑包。
流程
解压 Sensor 捆绑包:
$ unzip -d sensor sensor-<cluster_name>.zip
运行以下命令来创建 secret:
$ ./sensor/ca-setup-sensor.sh -d sensor/additional-cas/ 1
- 1
- 使用
-d
选项指定包含自定义证书的目录。
注意如果收到 "secret already exists" 错误消息,请使用 the
-u
选项重新运行脚本:$ ./sensor/ca-setup-sensor.sh -d sensor/additional-cas/ -u
- 使用 YAML 文件继续 Sensor 部署。
如果将证书添加到现有传感器中,您必须重启 Sensor 容器。
1.2.3.1. 重启 Sensor 容器
您可以通过终止容器或删除 Sensor pod 来重启 Sensor 容器。
流程
运行以下命令来终止 Sensor 容器:
注意您必须至少等待 1 分钟,直到 OpenShift Container Platform 或 Kubernetes 传播您的更改并重启 Sensor 容器。
在 OpenShift Container Platform 中:
$ oc -n stackrox deploy/sensor -c sensor -- kill 1
对于 Kubernetes:
$ kubectl -n stackrox deploy/sensor -c sensor -- kill 1
或者,运行以下命令来删除 Sensor pod:
在 OpenShift Container Platform 中:
$ oc -n stackrox delete pod -lapp=sensor
对于 Kubernetes:
$ kubectl -n stackrox delete pod -lapp=sensor