用k3s高效管理SSL证书
安装说明会让你下载 cert-manager 的 YAML 配置文件并将其一步全部应用到你的集群。我们需要将其分为两个步骤,以便为基于 ARM 的树莓派修改文件。我们将下载文件并一步一步进行转换: curl -sL https://github.com/jetstack/cert-manager/releases/download/v0.11.0/cert-manager.yaml | sed-r 's/(image:.*):(v.*)$/1-arm:2/g'> cert-manager-arm.yaml 这会下载配置文件,并将包含的所有 docker 镜像更新为 ARM 版本。来检查一下它做了什么: $ grep image: cert-manager-arm.yaml image:"quay.io/jetstack/cert-manager-cainjector-arm:v0.11.0" image:"quay.io/jetstack/cert-manager-controller-arm:v0.11.0" image:"quay.io/jetstack/cert-manager-webhook-arm:v0.11.0" 如我们所见,三个镜像现在在镜像名称上添加了 -arm。现在我们有了正确的文件,我们只需将其应用于集群: kubectl apply -f cert-manager-arm.yaml 这将安装 cert-manager 的全部。我们可以通过 kubectl --namespace cert-manager get pods 来检查安装何时完成,直到所有 Pod 都处于 Running 状态。 这就完成了 cert-manager 的安装! Let's Encrypt 概述Let's Encrypt 的好处是,它免费为我们提供了经过公共验证的 TLS 证书!这意味着我们可以拥有一个完全有效的、可供任何人访问的 TLS 加密网站,这些家庭或业余的爱好活动挣不到钱,也无需自己掏腰包购买 TLS 证书!以及,当通过 cert-manager 使用 Let's Encrypt 的证书时,获得证书的整个过程是自动化的,证书的续订也是自动的! 但它是如何工作的?下面是该过程的简化说明。我们(或代表我们的 cert-manager)向 Let's Encrypt 发出我们拥有的域名的证书请求。Let's Encrypt 通过使用 ACME DNS 或 HTTP 验证机制来验证我们是否拥有该域。如果验证成功,则 Let's Encrypt 将向我们提供证书,这些证书将由 cert-manager 安装在我们的网站(或其他 TLS 加密的端点)中。在需要重复此过程之前,这些证书可以使用 90 天。但是,cert-manager 会自动为我们更新证书。 在本文中,我们将使用 HTTP 验证方法,因为它更易于设置并且适用于大多数情况。以下是幕后发生的基本过程。cert-manager 向 Let's Encrypt 发出证书请求。作为回应,Let's Encrypt 发出所有权验证的质询challenges。这个质询是将一个 HTTP 资源放在请求证书的域名下的一个特定 URL 上。从理论上讲,如果我们可以将该资源放在该 URL 上,并且让 Let's Encrypt 可以远程获取它,那么我们实际上必须是该域的所有者。否则,要么我们无法将资源放置在正确的位置,要么我们无法操纵 DNS 以使 Let's Encrypt 访问它。在这种情况下,cert-manager 会将资源放在正确的位置,并自动创建一个临时的 Ingress 记录,以将流量路由到正确的位置。如果 Let's Encrypt 可以读到该质询要求的资源并正确无误,它将把证书发回给 cert-manager。cert-manager 将证书存储为“机密信息”,然后我们的网站(或其他任何网站)将使用这些证书通过 TLS 保护我们的流量。 (编辑:好传媒网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- Debian、Ubuntu、Linux Mint,哪款更喜欢?
- Fedora 33希望完善其对64位Arm系统的代码加固
- 狂野飙车8什么时候出 发布时间确定
- linux – 防止bash脚本在处理SIGINT后终止
- 手机酷狗怎么设置铃声
- 20+ Rsync command’s switches and common usages with ex
- Sed - An Introduction and Tutorial by Bruce Barnett
- Linux里Ncat 命令使用实例,你知道几个?
- curl – 使用SSPI进行Kerberos身份验证
- 防火墙 – 如何检查Red Hat Linux / CentOS上的端口是否已打