openssl 生成证书_使用OpenSSL生成Kubernetes证书的介绍

概述

kubernetes支持Base认证/Token认证/CA认证三种,这篇文章用于记录一下CA认证所需要的最简单程度的命令。


kubernetes构成

649e659b3aa2e9e9ae69690d6c9e01ff.png

测试版本为1.10,但不限于此版本,为openssl证书较为通用的方式。

所需证书

所需要的证书相关文件的说明如下:

bd1a28b8cf7dde46b3cb3290d942bb99.png

CA证书

CA证书私钥

f53f64427f9121422bcb07f7b90dcfc5.png

命令:openssl genrsa -out ca.key 2048

2ea54a0d5c07c7b46cac758f48f358df.png

CA证书

0dd5b6736a3c8ee62da84889931f8d80.png

命令:openssl genrsa -out ca.key 2048

[root@host121 k8scert]# openssl req -x509 -new -nodes -key ca.key -subj "/CN=host121" -days 5000 -out ca.crt[root@host121 k8scert]# lsarchive ca.crt ca.key[root@host121 k8scert]#

XXX用证书

apiserver/ControllerManager/kublet等所需证书可用如下方式创建

证书私钥

43a8248f451cea32e20330f56324c351.png

命令:openssl genrsa -out server.key 2048

[root@host121 k8scert]# openssl genrsa -out server.key 2048Generating RSA private key, 2048 bit long modulus..............................+++........................................................................+++e is 65537 (0x10001)[root@host121 k8scert]#

证书签名请求文件

3ba2dcac1de9a0a2e17e75c55b1f557e.png

命令:openssl req -new -key server.key -subj “/CN=host121” -out server.csr

[root@host121 k8scert]# openssl req -new -key server.key -subj "/CN=host121" -out server.csr[root@host121 k8scert]#

subj中设定的subject的信息为用户自己的数据,一般将CN设定为域名/机器名/或者IP名称,比如kubelet为所在node的IP即可

证书

1500f89c3d6a5897ba9e7ccaaac5818a.png

命令:openssl x509 -req -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out server.crt -days 5000

[root@host121 k8scert]# openssl x509 -req -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out server.crt -days 5000Signature oksubject=/CN=host121Getting CA Private Key[root@host121 k8scert]#

后面小编会分享更多运维方面的干货,感兴趣的朋友走一波关注哩~

fbec0f17646fdbb9ca66d45c01a29352.gif
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值