如果用ApiFox调用Kubernetes API,需要怎么设置证书?
针对Docker Desktop中Kubernetes访问报SSL/TLS信任关系错误的问题,以下是综合解决方案:
要在Postman中调用Kubernetes API并设置证书,需按以下步骤操作:
🔐 证书设置步骤
提取证书文件
从kubeconfig文件(~/.kube/config
)解码证书:
# 提取CA证书 grep certificate-authority-data ~/.kube/config | cut -d" " -f6 | base64 -d > ca.pem
# 提取客户端证书 grep client-certificate-data ~/.kube/config | cut -d" " -f6 | base64 -d > client.pem
# 提取客户端密钥 grep client-key-data ~/.kube/config | cut -d" " -f6 | base64 -d > client-key.pem
获得ca.pem
、client.pem
和client-key.pem
三个文件。
在ApiFox添加CA证书
- 打开接口,运行,设置,证书管理:
- 选择上传CA证书
- 打开接口,运行,设置,证书管理:
添加客户端证书(双向TLS)
- 在Certificates界面点击添加客户端证书
- Host字段输入API域名(如
kubernetes.docker.internal
) - 端口填写
6443
(或留空使用默认443端口) - 选择
client.pem
作为CRT文件,client-key.pem
作为密钥文件 - 若无密码则留空,点击Add
⚡ 请求发送示例
GET https://kubernetes.docker.internal:6443/api/v1/nodes
- 无需额外Headers:证书已通过双向TLS自动认证
- 成功响应状态码为
200
,返回JSON格式节点数据。
⚠️ 注意事项
- 证书需定期更新(如Let's Encrypt证书90天有效期)2
- 同一域名只能绑定一个客户端证书,重复添加会被覆盖2
- 生产环境不建议禁用SSL验证,仅限测试使用4。
参考——百度ai,deepseek搜索结果