证书,可以用来审计也可以保障安全,k8S组件启动的时候,则需要有对应的证书。
# cfssl方式做证书,需要三个软件,按照我们的架构图,我们部署在200机器:
200 ~]# wget https://pkg.cfssl.org/R1.2/cfssl_linux-amd64 -O /usr/bin/cfssl
200 ~]# wget https://pkg.cfssl.org/R1.2/cfssljson_linux-amd64 -O /usr/bin/cfssl-json
200 ~]# wget https://pkg.cfssl.org/R1.2/cfssl-certinfo_linux-amd64 -O /usr/bin/cfssl-certinfo
200 ~]# chmod +x /usr/bin/cfssl*
200 ~]# which cfssl
200 ~]# which cfssl-json
200 ~]# which cfssl-certinfo
wget :从网络上自动下载文件的自由工具
chmod :给对应的文件添加权限(Linux命令大全)
- +x :给当前用户增加可执行该文件的权限
which :查看相应的东西在哪里
200 ~]# cd /opt/
opt]# mkdir certs
opt]# cd certs/
certs]# vi ca-csr.json
{
"CN": "ben123123",
"hosts": [
],
"key": {
"algo": "rsa",
"size": 2048
},
"names": [
{
"C": "CN",
"ST": "beijing",
"L": "beijing",
"O": "od",
"OU": "ops"
}
],
"ca": {
"expiry": "175200h"
}
}
certs]# cfssl gencert -initca ca-csr.json | cfssl-json -bare ca
certs]# cat ca.pem
# 如果你这时候显示段错误或者json错误,就是之前克隆虚拟机的时候200机器地址和别的机器地址重叠冲突了,需要重建200虚拟机
cd :切换当前工作目录到 dirName
- 语法:cd [dirName]
mkdir :建立名称为 dirName 之子目录
- 语法:mkdir [-p] dirName
- -p: 确保目录存在,不存在则建一个,如mkdir empty/empty1/empty2
cfssl :证书工具
- gencert:生成的意思
ca-csr.json解析:
- CN:Common Name,浏览器使用该字段验证网址是否合法,一般写域名,非常重要
- ST:State,省
- L:Locality,地区
- O:Organization Name,组织名称
- OU:Organization Unit Name,组织单位名称