Etcd教程 — 第四章 Etcd集群安全配置_etcd 集群配置

2.2 下载 cfssl

/usr/local/src 下载

cd /usr/local/src

wget https://github.com/cloudflare/cfssl/releases/download/v1.6.1/cfssl_1.6.1_linux_amd64

wget https://github.com/cloudflare/cfssl/releases/download/v1.6.1/cfssljson_1.6.1_linux_amd64

wget https://github.com/cloudflare/cfssl/releases/download/v1.6.1/cfssl-certinfo_1.6.1_linux_amd64

#拷贝文件到/usr/local/bin/目录下

cp cfssl_1.6.1_linux_amd64 /usr/local/bin/cfssl

cp cfssljson_1.6.1_linux_amd64 /usr/local/bin/cfssljson

cp cfssl-certinfo_1.6.1_linux_amd64 /usr/local/bin/cfssl-certinfo

2.3 赋予执行权限

chmod +x /usr/local/bin/cfssl*

2.4 查看安装结果

cfssl version

结果:

[root@etcd01 src]# cfssl version
Version: 1.6.1
Runtime: go1.12.12

3 TLS 加密实践

3.1 介绍

client certificate: 用于服务端认证客户端,例如etcdctl、etcd proxy、fleetctl、docker客户端。
server certificate: 服务端使用,客户端以此验证服务端身份,例如docker服务端、kube-apiserver。
peer certificate: 双向证书,用于etcd集群成员间通信。

3.2 配置CA并创建TLS证书

仅需要在单个节点上生成相关证书即可,然后再把证书复制到其他节点上。

3.2.1 创建ca配置文件 (ca-config.json)

"ca-config.json":可以定义多个 profiles,分别指定不同的过期时间、使用场景等参数;后续在签名证书时使用某个 profile;

"signing":表示该证书可用于签名其它证书;生成的 ca.pem 证书中 CA=TRUE;

"server auth":表示client可以用该 CA 对server提供的证书进行验证;

"client auth":表示server可以用该CA对client提供的证书进行验证;

/opt/cfssl/ 下创建配置文件

vim ca-config.json

{
    "signing": {
        "default": {
            "expiry": "87600h"
        },
        "profiles": {
            "etcd": {
                "expiry": "87600h",
                "usages": [
                    "signing",
                    "key encipherment",
                    "server auth",
                    "client auth"
                ]
            }
        }
    }
}

3.2.2 创建ca证书签名(ca-csr.json)

“CN”:Common Name,从证书中提取该字段作为请求的用户名 (User Name);浏览器使用该字段验证网站是否合法;
“O”:Organization,从证书中提取该字段作为请求用户所属的组 (Group);
这两个参数在后面的kubernetes启用RBAC模式中很重要,因为需要设置kubelet、admin等角色权限,那么在配置证书的时候就必须配置对了,具体后面在部署kubernetes的时候会进行讲解。
“在etcd这两个参数没太大的重要意义,跟着配置就好。”

创建配置文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值