更新 LetsEncrypt 证书

简介: 更新 LetsEncrypt 证书

场景

LetsEncrypt 可以自动续期,突然有一天自动续期不好使了,


解决方案

手动续期

根据官方文档手动执行证书续期后发现出现了 bug

$ sudo gitlab-ctl renew-le-certs
Traceback (most recent call last):
    7: from /opt/gitlab/embedded/bin/omnibus-ctl:23:in `<main>'
    6: from /opt/gitlab/embedded/bin/omnibus-ctl:23:in `load'
    5: from /opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/omnibus-ctl-0.6.0/bin/omnibus-ctl:31:in `<top (required)>'
    4: from /opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/omnibus-ctl-0.6.0/lib/omnibus-ctl.rb:746:in `run'
    3: from /opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/omnibus-ctl-0.6.0/lib/omnibus-ctl.rb:204:in `block in add_command_under_category'
    2: from /opt/gitlab/embedded/service/omnibus-ctl/letsencrypt.rb:21:in `block in load_file'
    1: from /opt/gitlab/embedded/service/omnibus-ctl/lib/gitlab_ctl/util.rb:62:in `get_node_attributes'
/opt/gitlab/embedded/service/omnibus-ctl/lib/gitlab_ctl/util.rb:47:in `parse_json_file': Attributes not found in /opt/gitlab/embedded/nodes/hecs-210984.json, has reconfigure been run yet? (GitlabCtl::Errors::NodeError)点击复制复制失败已复制

由于时间紧迫,这个报错信息看不太明白,不要纠结了,手动生成证书并替换吧。


证书替换

首先查看一下证书所在位置:

$ sudo cat /var/opt/gitlab/nginx/conf/gitlab-http.conf | grep ssl_certificate
  ssl_certificate /etc/gitlab/ssl/git.xxx.cn.crt;
  ssl_certificate_key /etc/gitlab/ssl/git.xxx.cn.key;点击复制复制失败已复制


可以看到证书的存放位置为: /etc/gitlab/ssl/ 目录,将手动生成的公钥和私钥文件上传到这里,并修改为同名后重启服务:

$ sudo gitlab-ctl restart
ok: run: crond: (pid 25546) 0s
ok: run: gitaly: (pid 25553) 0s
ok: run: gitlab-workhorse: (pid 25555) 1s
ok: run: logrotate: (pid 25574) 0s
ok: run: nginx: (pid 25585) 0s
ok: run: postgresql: (pid 25596) 0s
ok: run: puma: (pid 25611) 0s
ok: run: redis: (pid 25616) 0s
ok: run: registry: (pid 25628) 1s
ok: run: sidekiq: (pid 25644) 0s
目录
相关文章
|
2月前
|
安全 测试技术 API
在实际应用中,如何判断是否需要创建信任所有证书的 TrustManager
在实际应用中,判断是否需要创建信任所有证书的TrustManager时,需考虑安全性与便捷性的平衡。通常,开发和测试环境可使用信任所有证书的TrustManager,但生产环境应严格验证证书,确保通信安全。
102 56
|
弹性计算 网络安全 容器
SSL证书更新后不生效
SSL证书更新后不生效
|
关系型数据库 MySQL
wget下载软件包时,遇到不信任问题,除了跳过证书检验,更新或者下载ca证书也是个解决办法
wget下载软件包时,遇到不信任问题,除了跳过证书检验,更新或者下载ca证书也是个解决办法
911 0
|
存储 安全 网络安全
|
3月前
|
Linux 应用服务中间件 Shell
利用 ACME 实现SSL证书自动化配置更新
【10月更文挑战第11天】多项式承诺原理是密码学中的重要工具,允许证明者向验证者承诺一个多项式并证明其某些性质。Kate多项式承诺是一种知名方案,基于有限域上的多项式表示,通过生成和验证简洁的证明来确保多项式的正确性和隐私。其安全性基于离散对数假设。应用场景包括区块链中的零知识证明和可验证计算,以及多方计算和身份认证协议。在区块链中,Kate多项式承诺可用于保护隐私币和智能合约中的敏感信息。
183 2
|
3月前
|
存储 缓存 安全
https访问提示不安全,证书密钥验证上如何解决
【10月更文挑战第4天】访问提示不安全,证书密钥验证上如何解决
481 2
|
8月前
|
算法 数据安全/隐私保护
客户端验证 证书解析
客户端验证 证书解析
98 7
|
8月前
|
存储 弹性计算 运维
客户端证书自动颁发脚本
【4月更文挑战第30天】
61 1
|
8月前
|
Kubernetes Linux 调度
K8S证书过期解决办法之替换证书
K8S证书过期解决办法之替换证书
1257 0
|
安全 网络安全
免费分享CT Log工具,方便查询SSL证书签发记录
如何查询企业使用了哪些SSL证书?最近发现了一个相当不错的工具——CT Log查询工具,它是由锐安信sslTrus提供的一个证书查询工具,支持输入域名或公司名称一键查询此域名或者公司名下的全部SSL证书签发记录日志,了解证书透明度,也叫SSL证书透明日志查询工具。
免费分享CT Log工具,方便查询SSL证书签发记录