k8s的集群安全设置
k8s提供了基于CA签名的双向数字证书认证方式和简单的基于HTTP Base或Token的认证方式,其中CA证书方式的安全性最高。
基于CA签名的双向数字证书认证方式
基于CA签名的双向数字证书认证方式如下:
1)为kube-apiserver生成一个数字证书,并用CA证书签名。
2)为kube-apiserver生成进程配置证书相关的启动参数,包括CA证书(用于验证客户端证书的签名真伪)、自己的经过CA签名的证书及私钥。
3)为每个访问kubernetes API Server的客户端(如kube-controller-manager、kube-scheduler、kubelet、kube-proxy及调用API Server的客户端程序等)进程都生成自己的数字证书,也都用CA签名,在相关启动程序的启动参数里增加CA证书、自己的证书等相关参数。
基于HTTP Base或Token的简单认证方式
采用HTTPBase或Token认证时,API Server对外暴露HTTPS端口,客户端提供用户名、密码或token的方式来完成认证过程。
比较特殊的时,kubectl命令行工具比较特殊,它同时支持CA双向认证和简单认证两种模式与API Server通信,其它客户端组件只能配置为双向安全认证或非安全模式与API Server通信。