栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

docker20.10.8及以上版本安装registry镜像库存在san ssl 证书

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

docker20.10.8及以上版本安装registry镜像库存在san ssl 证书

问题

Get “https://dockerhub.kubekey.local/v2/”: x509: certificate relies on legacy Common Name field, use SANs or temporarily enable Common Name matching with GODEBUG=x509ignoreCN=0
分析

由于docker20.10.8及以上版本编译使用的go版本过高(>1.15.1)。go 1.15版本开始废弃CommonName,需要使用SAN证书

以下是registry服务端的服务器生成SAN证书的方式

mkdir -p /mnt/registry/certs
cd /mnt/registry/certs
cp /etc/pki/tls/openssl.cnf /mnt/registry/certs

修改 操作目录的openssl.cnf
vi /mnt/registry/certs/openssl.cnf
修改如下 (去掉144 行的# 添加 145 146 行 146 可以写多个域名 )
144 req_extensions = v3_req # The extensions to add to a certificate request
145 [ alt_names ]
146 DNS.1 = dockerhub.kubekey.local

生成默认 ca
openssl genrsa -out ca.key 2048
openssl req -x509 -new -nodes -key ca.key -subj “/CN=example.ca.com” -days 5000 -out ca.crt
生成证书请求
openssl req -new -sha256
-key ca.key
-subj “/C=CN/ST=Beijing/L=Beijing/O=UnitedStack/OU=Devops/CN=dockerhub.kubekey.local”
-reqexts SAN
-config <(cat ./openssl.cnf
<(printf “[SAN]nsubjectAltName=DNS:dockerhub.kubekey.local”))
-out domain.csr
生成证书
openssl x509 -req -days 365000
-in domain.csr -CA ca.crt -CAkey ca.key -CAcreateserial
-extfile <(printf “subjectAltName=DNS:dockerhub.kubekey.local”)
-out domain.crt

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/757162.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号