每当我将 TLS 密钥添加到配置文件时,我的 Kraken(版本 2)部署都会崩溃。
第 1 步:我使用 OpenSSL 生成了一个公钥和私钥对。
> openssl genrsa -out private-key.pem 4096
> openssl rsa -in private-key.pem -pubout -out public-key.pem
第 2 步:我在容器中启动了 KrakenD,并安装了以下卷
/etc/krakend
:/run/desktop/mnt/host/c/apitest/conf
容器不会崩溃。
第 3 步:我关闭容器并将以下内容添加到我的 kraken 配置文件中。
"tls": {
"private_key": "/etc/krakend/private-key.pem",
"public_key": "/etc/krakend/public-key.pem"
}
当我重新启动容器时,容器会崩溃。我已经检查过容器是否可以从该位置读取(毕竟它正在读取配置文件)。我使用 JSONLint.com 验证了我的 JSON 文件,它是有效的。
kubectl logs...
显示此错误:“2022/02/15 16:06:51 错误:[tls:跳过以下类型的 PEM 块后,在证书输入中找不到“CERTIFICATE”PEM 块:[PUBLIC KEY]]”
为什么会崩溃?我不知道如何从这里调试它。
我应该使用私钥还是应该使用从私钥生成的自签名证书?