笔者前面的博文使用nexus3作为Docker镜像仓库介绍了如何使用nexus3来作为容器的镜像仓库,在生成证书时,使用了有效期限。如果证书过期了,使用podman或者docker登录,则会提示类似如下的信息:
x509: certificate has expired or is not yet valid: current time 2023-09-12T09:47:03+08:00 is after XXXX-XX-XXTXX:XX:XXX
那如果证书过期了该如何处理呢?
一、重新生成证书,并更新系统的证书
可以将下列脚本保存为文件,修改为自己的IP,并执行:
# 所有操作在子目录中完成
mkdir -p output
cd output
MYIP=192.168.1.8
# 创建辅助文件
echo subjectAltName=IP:${MYIP} > extfile.cnf
# 生成ca证书
openssl genrsa -out ca.key 2048
openssl req -x509 -new -nodes -key ca.key -days 365 -out ca.crt
# 如果不想交互输入证书的国家,城市,公司名等等信息,可以在上面的命令加上参数:-subj "/CN=*"
# 生成server证书
openssl genrsa -out server.key 2048
openssl req -new