V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Recommended Services
Amazon Web Services
LeanCloud
New Relic
ClearDB
abc950309
V2EX  ›  云计算

在阿里云 CLB 上使用 Let's Encrypt

  •  
  •   abc950309 · 2 天前 · 1103 次点击

    之前一直使用阿里云 K8S + CLB 来实现动态扩所容,降低成本。阿里云改了免费证书的策略,三个月就要换一遍证书,每次都要操作好多个 CLB 实例,十分头疼。证书管理还要另外交好几百,感觉做了冤大头。

    写了这个脚本,只需要在 K8S 里加个 Cronjob ,就可以自动刷新 Let's Encrypt 的证书,并更新到 CLB 配置里了。再也不用给阿里云交冤枉钱了!

    https://github.com/samuelncui/certbot-aliyun

    各位大佬如果有其他的证书部署目标的话,也可以提 PR 。

    第 1 条附言  ·  1 天前
    可能没说明白,不是更新集群的证书,是更新 Aliyun CLB 的证书。CLB 之前必须要手动填证书,或者买阿里云的高价通配证书/证书管理服务。现在可以直接使用 Let's Encrypt 的证书了。
    14 条回复    2025-03-20 11:29:01 +08:00
    privil
        1
    privil  
       2 天前
    Let's Encrypt 三个月操作一次,大部分人还是会买便宜的泛域名证书一年更换一次吧。
    defunct9
        2
    defunct9  
       2 天前
    腾讯云和 AWS
    sampeng
        3
    sampeng  
       2 天前
    @privil 早就是自动的了。

    @abc950309 如果你是 k8s ,哪需要这么麻烦。cert-manager 全自动。我几十个域名都是全自动的。都不用管他。
    Lockeysama
        4
    Lockeysama  
       2 天前
    额,有个 Cert Manager ,直接搞好,配 ingress 就行了。。
    lasuar
        5
    lasuar  
       2 天前
    acme 不是自动更新吗
    huangsen365
        6
    huangsen365  
       2 天前 via Android
    用阿里云 ESA 边缘安全加速免费自动 ssl
    jqknono
        7
    jqknono  
       2 天前 via Android
    阿里云 esa 使用 cname 托管不能申请泛域名证书,免费证书申请限制为 10 张,cname 域名限制为 100 个。可能不够用。
    集群证书管理用 cert-manager 就好了
    abc950309
        8
    abc950309  
    OP
       1 天前
    @privil 这个的目的就是自动更新 Let's Encrypt ,配上之后就可以通过 Aliyun 的 OpenAPI 自动更新 CLB 上的证书了。
    abc950309
        9
    abc950309  
    OP
       1 天前
    @sampeng 这个处理的是外部流量接入 K8S 集群的问题。内部是 HTTP 裸跑的,外部需要最后加一下 HTTPS 。当时选用的是 CLB 来接入外部流量。
    abc950309
        10
    abc950309  
    OP
       1 天前
    @huangsen365 这个看了下的确不错,之前 DCDN 回源太贵了,这个如果不限制次数可以试一下。
    sampeng
        11
    sampeng  
       1 天前
    @abc950309 是你没理解。。clb 直接穿透 tcp 到 ingress 就好了。就没 clb 证书什么事了。简单有效。我所有环境都是 cert-manager 管理的免费证书
    abc950309
        12
    abc950309  
    OP
       1 天前
    @sampeng 证书和域名管理都是耦合的,ingress 和这些混在一起,配置起来又要加一步了。如果单个域名还好,如果经常变动,感觉还是有点麻烦。
    sampeng
        13
    sampeng  
       1 天前
    @abc950309 只有配置前时候麻烦。后期管理完全不用 care 证书的事。远比 clb 强太多了。
    最后的效果是:

    ingress 管理:所有的域名都是配置化管理在 git 里的。或者说 k8s 的。增删改查只需要改 ingress 的 yaml 就行了。
    clb 混合 k8s 。你得 k8s 搞 ingress 路由,还得去 clb 加减域名。。

    你是没碰到迁移的活。。只改一个地方是多香。只要一个通了所有就都好了。
    bobawujh
        14
    bobawujh  
       23 小时 47 分钟前 via Android
    clb 自带 ssl 卸载 如果把 ssl 下放到应用服务器的话 那负载又得上升了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5250 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 03:16 · PVG 11:16 · LAX 20:16 · JFK 23:16
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.