cert-manager 1.0 เชฐเชฟเชฒเซ€เช เชฅเชฏเซเช‚

เชœเซ‹ เชคเชฎเซ‡ เช…เชจเซเชญเชตเซ€, เชธเชฎเชœเชฆเชพเชฐ เชเชจเซเชœเชฟเชจเชฟเชฏเชฐเชจเซ‡ เชชเซ‚เช›เซ‹ เช•เซ‡ เชคเซ‡ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ-เชฎเซ‡เชจเซ‡เชœเชฐ เชตเชฟเชถเซ‡ เชถเซเช‚ เชตเชฟเชšเชพเชฐเซ‡ เช›เซ‡ เช…เชจเซ‡ เชถเชพ เชฎเชพเชŸเซ‡ เชฆเชฐเซ‡เช• เชคเซ‡เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‡ เช›เซ‡, เชคเซ‹ เชจเชฟเชทเซเชฃเชพเชค เชจเชฟเชธเชพเชธเซ‹ เชจเชพเช–เชถเซ‡, เช†เชคเซเชฎเชตเชฟเชถเซเชตเชพเชธเชฅเซ€ เชคเซ‡เชจเซ‡ เช—เชณเซ‡ เชฒเช—เชพเชตเชถเซ‡ เช…เชจเซ‡ เช•เช‚เชŸเชพเชณเชพเชœเชจเช• เชฐเซ€เชคเซ‡ เช•เชนเซ‡เชถเซ‡: โ€œเชฆเชฐเซ‡เช• เชตเซเชฏเช•เซเชคเชฟ เชคเซ‡เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‡ เช›เซ‡, เช•เชพเชฐเชฃ เช•เซ‡ เชคเซเชฏเชพเช‚ เช•เซ‹เชˆ เชธเชฎเชœเชฆเชพเชฐ เชตเชฟเช•เชฒเซเชชเซ‹ เชจเชฅเซ€. เช…เชฎเชพเชฐเชพ เช‰เช‚เชฆเชฐ เชฐเชกเซ‡ เช›เซ‡, เชชเซเชฐเชฟเช• เช•เชฐเซ‡ เช›เซ‡, เชชเชฐเช‚เชคเซ เช† เช•เซ‡เช•เซเชŸเชธ เชธเชพเชฅเซ‡ เชœเซ€เชตเชตเชพเชจเซเช‚ เชšเชพเชฒเซ เชฐเชพเช–เซ‡ เช›เซ‡. เช†เชชเชฃเซ‡ เชถเชพ เชฎเชพเชŸเซ‡ เชชเซเชฐเซ‡เชฎ เช•เชฐเซ€เช เช›เซ€เช? เช•เชพเชฐเชฃ เช•เซ‡ เชคเซ‡ เช•เชพเชฎ เช•เชฐเซ‡ เช›เซ‡. เช†เชชเชฃเซ‡ เชชเซเชฐเซ‡เชฎ เช•เซ‡เชฎ เชจเชฅเซ€ เช•เชฐเชคเชพ? เช•เชพเชฐเชฃ เช•เซ‡ เชจเชตเชพ เชธเช‚เชธเซเช•เชฐเชฃเซ‹ เชธเชคเชค เชฌเชนเชพเชฐ เช†เชตเซ€ เชฐเชนเซเชฏเชพ เช›เซ‡ เชœเซ‡ เชจเชตเซ€ เชธเซเชตเชฟเชงเชพเช“เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‡ เช›เซ‡. เช…เชจเซ‡ เชคเชฎเชพเชฐเซ‡ เช•เซเชฒเชธเซเชŸเชฐเชจเซ‡ เชตเชพเชฐเช‚เชตเชพเชฐ เช…เชชเชกเซ‡เชŸ เช•เชฐเชตเซเช‚ เชชเชกเชถเซ‡. เช…เชจเซ‡ เชœเซ‚เชจเชพ เชธเช‚เชธเซเช•เชฐเชฃเซ‹ เช•เชพเชฎ เช•เชฐเชตเชพเชจเซเช‚ เชฌเช‚เชง เช•เชฐเซ‡ เช›เซ‡, เช•เชพเชฐเชฃ เช•เซ‡ เชคเซเชฏเชพเช‚ เชเช• เช•เชพเชตเชคเชฐเซเช‚ เช…เชจเซ‡ เชเช• เชฎเชนเชพเชจ เชฐเชนเชธเซเชฏเชฎเชฏ เชถเชพเชฎเชจเชฟเชเชฎ เช›เซ‡.

เชชเชฐเช‚เชคเซ เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเช“ เชฆเชพเชตเซ‹ เช•เชฐเซ‡ เช›เซ‡ เช•เซ‡ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ-เชฎเซ‡เชจเซ‡เชœเชฐ 1.0 เชฌเชงเซเช‚ เชฌเชฆเชฒเชพเชˆ เชœเชถเซ‡.

เชถเซเช‚ เช†เชชเชฃเซ‡ เชฎเชพเชจเซ€เช เช›เซ€เช?

cert-manager 1.0 เชฐเชฟเชฒเซ€เช เชฅเชฏเซเช‚

เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ-เชฎเซ‡เชจเซ‡เชœเชฐ เช เชฎเซ‚เชณ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ เชตเซเชฏเชตเชธเซเชฅเชพเชชเชจ เชจเชฟเชฏเช‚เชคเซเชฐเช• เช›เซ‡. เชคเซ‡เชจเซ‹ เช‰เชชเชฏเซ‹เช— เชตเชฟเชตเชฟเชง เชธเซเชคเซเชฐเซ‹เชคเซ‹เชฎเชพเช‚เชฅเซ€ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐเซ‹ เช†เชชเชตเชพ เชฎเชพเชŸเซ‡ เชฅเชˆ เชถเช•เซ‡ เช›เซ‡: เชšเชพเชฒเซ‹ เชเชจเซเช•เซเชฐเชฟเชชเซเชŸ เช•เชฐเซ€เช, เชนเชพเชถเซ€เช•เซ‹เชฐเซเชช เชตเซ‰เชฒเซเชŸ, เชตเซ‡เชจเชพเชซเซ€, เชธเชนเซ€ เช…เชจเซ‡ เชธเซเชต-เชธเชนเซ€ เช•เชฐเซ‡เชฒ เช•เซ€ เชœเซ‹เชกเซ€. เชคเซ‡ เชคเชฎเชจเซ‡ เชธเชฎเชพเชชเซเชคเชฟ เชคเชพเชฐเซ€เช– เชฆเซเชตเชพเชฐเชพ เช•เซ€เชจเซ‡ เช…เชช-เชŸเซ‚-เชกเซ‡เชŸ เชฐเชพเช–เชตเชพ เชฎเชพเชŸเซ‡ เชชเชฃ เชชเชฐเชตเชพเชจเช—เซ€ เช†เชชเซ‡ เช›เซ‡, เช…เชจเซ‡ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐเซ‹เชจเซ€ เชธเชฎเชฏเชธเซ€เชฎเชพ เชธเชฎเชพเชชเซเชค เชฅเชพเชฏ เชคเซ‡ เชชเชนเซ‡เชฒเชพเช‚ เชšเซ‹เช•เซเช•เชธ เชธเชฎเชฏเซ‡ เช†เชชเชฎเซ‡เชณเซ‡ เชฐเชฟเชจเซเชฏเซ‚ เช•เชฐเชตเชพเชจเซ‹ เชชเซเชฐเชฏเชพเชธ เช•เชฐเซ‡ เช›เซ‡. Cert-manager kube-lego เชชเชฐ เช†เชงเชพเชฐเชฟเชค เช›เซ‡ เช…เชจเซ‡ เชคเซ‡เชฃเซ‡ kube-cert-manager เชœเซ‡เชตเชพ เช…เชจเซเชฏ เชธเชฎเชพเชจ เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸเชฎเชพเช‚เชฅเซ€ เช•เซ‡เชŸเชฒเซ€เช• เชฏเซเช•เซเชคเชฟเช“เชจเซ‹ เชชเชฃ เช‰เชชเชฏเซ‹เช— เช•เชฐเซเชฏเซ‹ เช›เซ‡.

เชชเซเชฐเช•เชพเชถเชจ เชจเซ‹เช‚เชงเซ‹

เชธเช‚เชธเซเช•เชฐเชฃ 1.0 เชธเชพเชฅเซ‡, เช…เชฎเซ‡ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ-เชฎเซ‡เชจเซ‡เชœเชฐ เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸเชจเชพ เชตเชฟเช•เชพเชธเชจเชพ เชคเซเชฐเชฃ เชตเชฐเซเชท เชฎเชพเชŸเซ‡ เชตเชฟเชถเซเชตเชพเชธเชจเซเช‚ เชšเชฟเชนเซเชจ เชฎเซ‚เช•เซเชฏเซเช‚ เช›เซ‡. เช† เชธเชฎเชฏ เชฆเชฐเชฎเชฟเชฏเชพเชจ, เชคเซ‡ เช•เชพเชฐเซเชฏเช•เซเชทเชฎเชคเชพ เช…เชจเซ‡ เชธเซเชฅเชฟเชฐเชคเชพเชฎเชพเช‚ เชจเซ‹เช‚เชงเชชเชพเชคเซเชฐ เชฐเซ€เชคเซ‡ เชตเชฟเช•เชธเชฟเชค เชฅเชฏเซเช‚ เช›เซ‡, เชชเชฐเช‚เชคเซ เชฎเซ‹เชŸเชพเชญเชพเช—เซ‡ เชธเชฎเซเชฆเชพเชฏเชฎเชพเช‚. เช†เชœเซ‡, เช†เชชเชฃเซ‡ เช˜เชฃเชพ เชฒเซ‹เช•เซ‹ เชคเซ‡เชจเซ‹ เช‰เชชเชฏเซ‹เช— เชคเซ‡เชฎเชจเชพ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เช•เซเชฒเชธเซเชŸเชฐเซ‹เชจเซ‡ เชธเซเชฐเช•เซเชทเชฟเชค เช•เชฐเชตเชพ เชคเซ‡เชฎเชœ เชคเซ‡เชจเซ‡ เช‡เช•เซ‹เชธเชฟเชธเซเชŸเชฎเชจเชพ เชตเชฟเชตเชฟเชง เชญเชพเช—เซ‹เชฎเชพเช‚ เชœเชฎเชพเชตเชคเชพ เชœเซ‹เชˆ เชฐเชนเซเชฏเชพ เช›เซ€เช. เช›เซ‡เชฒเซเชฒเซ€ 16 เชฐเซ€เชฒเซ€เชเชฎเชพเช‚ เช˜เชฃเซ€ เชฌเชงเซ€ เชญเซ‚เชฒเซ‹ เช เซ€เช• เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เช›เซ‡. เช…เชจเซ‡ เชœเซ‡ เชคเซ‚เชŸเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชนเชคเซ€ เชคเซ‡ เชคเซ‚เชŸเซ€ เช—เชฏเซเช‚ เช›เซ‡. API เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เช˜เชฃเซ€ เชฎเซเชฒเชพเช•เชพเชคเซ‹เช เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเช“ เชธเชพเชฅเซ‡ เชคเซ‡เชจเซ€ เช•เซเชฐเชฟเชฏเชพเชชเซเชฐเชคเชฟเช•เซเชฐเชฟเชฏเชพเชฎเชพเช‚ เชธเซเชงเชพเชฐเซ‹ เช•เชฐเซเชฏเซ‹ เช›เซ‡. เช…เชฎเซ‡ 1500 เชธเชฎเซเชฆเชพเชฏเชจเชพ เชธเชญเซเชฏเซ‹เชจเซ€ เชตเชงเซ เชชเซเชฒ เชตเชฟเชจเช‚เชคเซ€เช“ เชธเชพเชฅเซ‡ GitHub เชชเชฐ 253 เชธเชฎเชธเซเชฏเชพเช“ เช‰เช•เซ‡เชฒเซ€ เช›เซ‡.

1.0 เชจเชพ เชชเซเชฐเช•เชพเชถเชจ เชธเชพเชฅเซ‡, เช…เชฎเซ‡ เชธเชคเซเชคเชพเชตเชพเชฐ เชฐเซ€เชคเซ‡ เชœเชพเชนเซ‡เชฐ เช•เชฐเซ€เช เช›เซ€เช เช•เซ‡ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ-เชฎเซ‡เชจเซ‡เชœเชฐ เชเช• เชชเชฐเชฟเชชเช•เซเชต เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸ เช›เซ‡. เช…เชฎเซ‡ เช…เชฎเชพเชฐเชพ API เชจเซ‡ เชธเซเชธเช‚เช—เชค เชฐเชพเช–เชตเชพเชจเซเช‚ เชชเชฃ เชตเชšเชจ เช†เชชเซ€เช เช›เซ€เช v1.

เช† เชคเซเชฐเชฃเซ‡เชฏ เชตเชฐเซเชทเซ‹เชฎเชพเช‚ เช…เชฎเชจเซ‡ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ-เชฎเซ‡เชจเซ‡เชœเชฐ เชฌเชจเชพเชตเชตเชพเชฎเชพเช‚ เชฎเชฆเชฆ เช•เชฐเชจเชพเชฐ เชฆเชฐเซ‡เช•เชจเซ‹ เช–เซ‚เชฌ เช–เซ‚เชฌ เช†เชญเชพเชฐ! เช†เชตเซƒเชคเซเชคเชฟ 1.0 เช เช†เชตเชจเชพเชฐเซ€ เช˜เชฃเซ€ เชฎเซ‹เชŸเซ€ เชตเชธเซเชคเซเช“เชฎเชพเช‚เชฅเซ€ เชชเซเชฐเชฅเชฎ เชฌเชจเชตเชพ เชฆเซ‹.

เชชเซเชฐเช•เชพเชถเชจ 1.0 เช เช˜เชฃเชพ เช…เช—เซเชฐเชคเชพ เช•เซเชทเซ‡เชคเซเชฐเซ‹ เชธเชพเชฅเซ‡ เชธเซเชฅเชฟเชฐ เชชเซเชฐเช•เชพเชถเชจ เช›เซ‡:

  • v1 API;

  • เชŸเซ€เชฎ kubectl cert-manager status, เชธเชฎเชธเซเชฏเชพเชจเชพ เชตเชฟเชถเซเชฒเซ‡เชทเชฃเชฎเชพเช‚ เชฎเชฆเชฆ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡;

  • เชจเชตเซ€เชจเชคเชฎ เชธเซเชฅเชฟเชฐ Kubernetes API เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡;

  • เชธเซเชงเชพเชฐเซ‡เชฒ เชฒเซ‹เช—เซ€เช‚เช—;

  • ACME เชธเซเชงเชพเชฐเชพเช“.

เช…เชชเช—เซเชฐเซ‡เชก เช•เชฐเชคเชพ เชชเชนเซ‡เชฒเชพ เช…เชชเช—เซเชฐเซ‡เชก เชจเซ‹เช‚เชงเซ‹ เชตเชพเช‚เชšเชตเชพเชจเซ€ เช–เชพเชคเชฐเซ€ เช•เชฐเซ‹.

API v1

เชธเช‚เชธเซเช•เชฐเชฃ v0.16 เช API เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเซเชฏเซเช‚ v1beta1. เช†เชจเชพเชฅเซ€ เช•เซ‡เชŸเชฒเชพเช• เชฎเชพเชณเช–เชพเช•เซ€เชฏ เชซเซ‡เชฐเชซเชพเชฐเซ‹ เชฅเชฏเชพ เช…เชจเซ‡ API เชซเซ€เชฒเซเชก เชฆเชธเซเชคเชพเชตเซ‡เชœเซ€เช•เชฐเชฃเชฎเชพเช‚ เชชเชฃ เชธเซเชงเชพเชฐเซ‹ เชฅเชฏเซ‹. เชธเช‚เชธเซเช•เชฐเชฃ 1.0 เช†เชจเชพ เชชเชฐ API เชธเชพเชฅเซ‡ เชฌเชฟเชฒเซเชก เช•เชฐเซ‡ เช›เซ‡ v1. เช† API เช…เชฎเชพเชฐเซเช‚ เชชเซเชฐเชฅเชฎ เชธเซเชฅเชฟเชฐ เช›เซ‡, เชคเซ‡ เชœ เชธเชฎเชฏเซ‡ เช…เชฎเซ‡ เชชเชนเซ‡เชฒเชพเชฅเซ€ เชœ เชธเซเชธเช‚เช—เชคเชคเชพ เช—เซ‡เชฐเช‚เชŸเซ€ เช†เชชเซ€ เช›เซ‡, เชชเชฐเช‚เชคเซ API เชธเชพเชฅเซ‡ v1 เช…เชฎเซ‡ เช†เชตเชจเชพเชฐเชพ เชตเชฐเซเชทเซ‹ เชธเซเชงเซ€ เชธเซเชธเช‚เช—เชคเชคเชพ เชœเชพเชณเชตเชตเชพเชจเซเช‚ เชตเชšเชจ เช†เชชเซ€เช เช›เซ€เช.

เช•เชฐเซ‡เชฒเชพ เชซเซ‡เชฐเชซเชพเชฐเซ‹ (เชจเซ‹เช‚เชง: เช…เชฎเชพเชฐเชพ เชฐเซ‚เชชเชพเช‚เชคเชฐเชฃ เชธเชพเชงเชจเซ‹ เชคเชฎเชพเชฐเชพ เชฎเชพเชŸเซ‡ เชฆเชฐเซ‡เช• เชตเชธเซเชคเซเชจเซ€ เช•เชพเชณเชœเซ€ เชฒเซ‡ เช›เซ‡):

เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ:

  • emailSANs เชนเชตเซ‡ เช•เชนเซ‡เชตเชพเชฏ เช›เซ‡ emailAddresses

  • uriSANs - uris

เช† เชซเซ‡เชฐเชซเชพเชฐเซ‹ เช…เชจเซเชฏ SAN เชธเชพเชฅเซ‡ เชธเซเชธเช‚เช—เชคเชคเชพ เช‰เชฎเซ‡เชฐเซ‡ เช›เซ‡ (เชตเชฟเชทเชฏ Alt เชจเชพเชฎเซ‹, เช†เชถเชฐเซ‡ เช…เชจเซเชตเชพเชฆเช•), เชคเซ‡เชฎเชœ Go API เชธเชพเชฅเซ‡. เช…เชฎเซ‡ เช…เชฎเชพเชฐเชพ API เชฎเชพเช‚เชฅเซ€ เช† เชถเชฌเซเชฆ เชฆเซ‚เชฐ เช•เชฐเซ€ เชฐเชนเซเชฏเชพ เช›เซ€เช.

เช…เชชเชกเซ‡เชŸ เช•เชฐเซ‹

เชœเซ‹ เชคเชฎเซ‡ Kubernetes 1.16+ เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€ เชฐเชนเซเชฏเชพเช‚ เช›เซ‹, เชคเซ‹ เชตเซ‡เชฌเชนเซเช•เซเชธเชจเซ‡ เช•เชจเซเชตเชฐเซเชŸ เช•เชฐเชตเชพเชฅเซ€ เชคเชฎเชจเซ‡ API เชธเช‚เชธเซเช•เชฐเชฃเซ‹ เชธเชพเชฅเซ‡ เชเช•เชธเชพเชฅเซ‡ เช…เชจเซ‡ เชเช•เซ€เช•เซƒเชค เชฐเซ€เชคเซ‡ เช•เชพเชฎ เช•เชฐเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เชฎเชณเชถเซ‡ v1alpha2, v1alpha3, v1beta1 ะธ v1. เช†เชจเซ€ เชธเชพเชฅเซ‡, เชคเชฎเซ‡ เชคเชฎเชพเชฐเชพ เชœเซ‚เชจเชพ เชธเช‚เชธเชพเชงเชจเซ‹เชจเซ‡ เชฌเชฆเชฒเซเชฏเชพ เชตเชฟเชจเชพ เช…เชฅเชตเชพ เชชเซเชจเชƒเชธเซเชฅเชพเชชเชฟเชค เช•เชฐเซเชฏเชพ เชตเชฟเชจเชพ API เชจเชพ เชจเชตเชพ เชธเช‚เชธเซเช•เชฐเชฃเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€ เชถเช•เชถเซ‹. เช…เชฎเซ‡ เชคเชฎเชพเชฐเชพ เชฎเซ‡เชจเชฟเชซเซ‡เชธเซเชŸเชจเซ‡ API เชชเชฐ เช…เชชเช—เซเชฐเซ‡เชก เช•เชฐเชตเชพเชจเซ€ เช–เซ‚เชฌ เชญเชฒเชพเชฎเชฃ เช•เชฐเซ€เช เช›เซ€เช v1, เชœเซ‡เชฎ เช•เซ‡ เช…เช—เชพเช‰เชจเชพ เชธเช‚เชธเซเช•เชฐเชฃเซ‹ เชŸเซ‚เช‚เช• เชธเชฎเชฏเชฎเชพเช‚ เชจเชพเชชเชธเช‚เชฆ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเชถเซ‡. เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเช“ legacy cert-manager เชจเชพ เชธเช‚เชธเซเช•เชฐเชฃเซ‹ เชชเชพเชธเซ‡ เชนเชœเซ เชชเชฃ เชซเช•เซเชค เชเช•เซเชธเซ‡เชธ เชนเชถเซ‡ v1, เช…เชชเช—เซเชฐเซ‡เชก เชชเช—เชฒเชพเช‚เช“ เชถเซ‹เชงเซ€ เชถเช•เชพเชฏ เช›เซ‡ เช…เชนเซ€เช‚.

kubectl cert-manager status เช†เชฆเซ‡เชถ

เชธเซเชงเซ€เชจเชพ เช…เชฎเชพเชฐเชพ เชตเชฟเชธเซเชคเชฐเชฃเชฎเชพเช‚ เชจเชตเชพ เชธเซเชงเชพเชฐเชพเช“ เชธเชพเชฅเซ‡ kubectl เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐเซ‹ เชœเชพเชฐเซ€ เชจ เช•เชฐเชตเชพ เชธเชพเชฅเซ‡ เชธเช‚เช•เชณเชพเชฏเซ‡เชฒเซ€ เชธเชฎเชธเซเชฏเชพเช“เชจเซ€ เชคเชชเชพเชธ เช•เชฐเชตเชพเชจเซเช‚ เชธเชฐเชณ เชฌเชจเซเชฏเซเช‚. kubectl cert-manager status เชนเชตเซ‡ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐเซ‹ เชธเชพเชฅเซ‡ เชถเซเช‚ เชฅเชˆ เชฐเชนเซเชฏเซเช‚ เช›เซ‡ เชคเซ‡ เชตเชฟเชถเซ‡ เช˜เชฃเซ€ เชตเชงเซ เชฎเชพเชนเชฟเชคเซ€ เช†เชชเซ‡ เช›เซ‡ เช…เชจเซ‡ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ เชœเชพเชฐเซ€ เช•เชฐเชตเชพเชจเซ‹ เชคเชฌเช•เซเช•เซ‹ เชชเชฃ เชฌเชคเชพเชตเซ‡ เช›เซ‡.

เชเช•เซเชธเซเชŸเซ‡เช‚เชถเชจ เช‡เชจเซเชธเซเชŸเซ‹เชฒ เช•เชฐเซเชฏเชพ เชชเช›เซ€, เชคเชฎเซ‡ เชšเชฒเชพเชตเซ€ เชถเช•เซ‹ เช›เซ‹ kubectl cert-manager status certificate <ะธะผั-ัะตั€ั‚ะธั„ะธะบะฐั‚ะฐ>, เชœเซ‡ เช†เชชเซ‡เชฒ เชจเชพเชฎ เชธเชพเชฅเซ‡ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ เช…เชจเซ‡ เช•เซ‹เชˆเชชเชฃ เชธเช‚เชฌเช‚เชงเชฟเชค เชธเช‚เชธเชพเชงเชจเซ‹ เชœเซ‡เชฎ เช•เซ‡ CertificateRequest, Secret, Issuer, and Order and Challenges เชœเซ‹ ACME เชจเชพ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐเซ‹เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชคเชพ เชนเซ‹เชฏ เชคเซ‹ เชคเซ‡ เชœเซ‹เชถเซ‡.

เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐเชจเซ‡ เชกเซ€เชฌเช— เช•เชฐเชตเชพเชจเซเช‚ เช‰เชฆเชพเชนเชฐเชฃ เชœเซ‡ เชนเชœเซ€ เชคเซˆเชฏเชพเชฐ เชจเชฅเซ€:

$ kubectl cert-manager status certificate acme-certificate

Name: acme-certificate
Namespace: default
Created at: 2020-08-21T16:44:13+02:00
Conditions:
  Ready: False, Reason: DoesNotExist, Message: Issuing certificate as Secret does not exist
  Issuing: True, Reason: DoesNotExist, Message: Issuing certificate as Secret does not exist
DNS Names:
- example.com
Events:
  Type    Reason     Age   From          Message
  ----    ------     ----  ----          -------
  Normal  Issuing    18m   cert-manager  Issuing certificate as Secret does not exist
  Normal  Generated  18m   cert-manager  Stored new private key in temporary Secret resource "acme-certificate-tr8b2"
  Normal  Requested  18m   cert-manager  Created new CertificateRequest resource "acme-certificate-qp5dm"
Issuer:
  Name: acme-issuer
  Kind: Issuer
  Conditions:
    Ready: True, Reason: ACMEAccountRegistered, Message: The ACME account was registered with the ACME server
error when finding Secret "acme-tls": secrets "acme-tls" not found
Not Before: <none>
Not After: <none>
Renewal Time: <none>
CertificateRequest:
  Name: acme-certificate-qp5dm
  Namespace: default
  Conditions:
    Ready: False, Reason: Pending, Message: Waiting on certificate issuance from order default/acme-certificate-qp5dm-1319513028: "pending"
  Events:
    Type    Reason        Age   From          Message
    ----    ------        ----  ----          -------
    Normal  OrderCreated  18m   cert-manager  Created Order resource default/acme-certificate-qp5dm-1319513028
Order:
  Name: acme-certificate-qp5dm-1319513028
  State: pending, Reason:
  Authorizations:
    URL: https://acme-staging-v02.api.letsencrypt.org/acme/authz-v3/97777571, Identifier: example.com, Initial State: pending, Wildcard: false
Challenges:
- Name: acme-certificate-qp5dm-1319513028-1825664779, Type: DNS-01, Token: J-lOZ39yNDQLZTtP_ZyrYojDqjutMAJOxCL1AkOEZWw, Key: U_W3gGV2KWgIUonlO2me3rvvEOTrfTb-L5s0V1TJMCw, State: pending, Reason: error getting clouddns service account: secret "clouddns-accoun" not found, Processing: true, Presented: false

เช†เชฆเซ‡เชถ เชคเชฎเชจเซ‡ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐเชจเซ€ เชธเชพเชฎเช—เซเชฐเซ€ เชตเชฟเชถเซ‡ เชตเชงเซ เชœเชพเชฃเชตเชพ เชฎเชพเชŸเซ‡ เชชเชฃ เชฎเชฆเชฆ เช•เชฐเซ€ เชถเช•เซ‡ เช›เซ‡. Letsencrypt เชฆเซเชตเชพเชฐเชพ เชœเชพเชฐเซ€ เช•เชฐเชพเชฏเซ‡เชฒ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ เชฎเชพเชŸเซ‡ เชตเชฟเช—เชคเชตเชพเชฐ เช‰เชฆเชพเชนเชฐเชฃ:

$ kubectl cert-manager status certificate example
Name: example
[...]
Secret:
  Name: example
  Issuer Country: US
  Issuer Organisation: Let's Encrypt
  Issuer Common Name: Let's Encrypt Authority X3
  Key Usage: Digital Signature, Key Encipherment
  Extended Key Usages: Server Authentication, Client Authentication
  Public Key Algorithm: RSA
  Signature Algorithm: SHA256-RSA
  Subject Key ID: 65081d98a9870764590829b88c53240571997862
  Authority Key ID: a84a6a63047dddbae6d139b7a64565eff3a8eca1
  Serial Number: 0462ffaa887ea17797e0057ca81d7ba2a6fb
  Events:  <none>
Not Before: 2020-06-02T04:29:56+02:00
Not After: 2020-08-31T04:29:56+02:00
Renewal Time: 2020-08-01T04:29:56+02:00
[...]

เชจเชตเซ€เชจเชคเชฎ เชธเซเชฅเชฟเชฐ Kubernetes API เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡

เชธเชฐเซเชŸเชฟ-เชฎเซ‡เชจเซ‡เชœเชฐ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เชธเซ€เช†เชฐเชกเซ€เชจเซ‹ เช…เชฎเชฒ เช•เชฐเชจเชพเชฐ เชธเซŒเชชเซเชฐเชฅเชฎเชฎเชพเช‚เชจเชพ เชเช• เชนเชคเชพ. เช†, เช…เชจเซ‡ 1.11 เชธเซเชงเซ€เชจเชพ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เชตเชฐเซเชเชจ เชฎเชพเชŸเซ‡เชจเชพ เช…เชฎเชพเชฐเชพ เชธเชฎเชฐเซเชฅเชจเชจเซ‹ เช…เชฐเซเชฅ เช เชฅเชฏเซ‹ เช•เซ‡ เช…เชฎเชพเชฐเซ‡ เชตเชพเชฐเชธเชพเชจเซ‡ เชธเชฎเชฐเซเชฅเชจ เช†เชชเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡ apiextensions.k8s.io/v1beta1 เช…เชฎเชพเชฐเชพ CRD เชฎเชพเชŸเซ‡ เชชเชฃ admissionregistration.k8s.io/v1beta1 เช…เชฎเชพเชฐเชพ เชตเซ‡เชฌเชนเซเช•เซเชธ เชฎเชพเชŸเซ‡. เชคเซ‡เช“ เชนเชตเซ‡ เชฆเซ‚เชฐ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเชพ เช›เซ‡ เช…เชจเซ‡ เช†เชตเซƒเชคเซเชคเชฟ 1.22 เชฎเชพเช‚เชฅเซ€ Kubernetes เชฎเชพเช‚ เชฆเซ‚เชฐ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเชถเซ‡. เช…เชฎเชพเชฐเชพ 1.0 เชธเชพเชฅเซ‡ เช…เชฎเซ‡ เชนเชตเซ‡ เชธเช‚เชชเซ‚เชฐเซเชฃ เชธเชชเซ‹เชฐเซเชŸ เช“เชซเชฐ เช•เชฐเซ€เช เช›เซ€เช apiextensions.k8s.io/v1 ะธ admissionregistration.k8s.io/v1 Kubernetes 1.16 (เชœเซเชฏเชพเช‚ เชคเซ‡เช“ เช‰เชฎเซ‡เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเชพ เชนเชคเชพ) เช…เชจเซ‡ เชจเชตเชพ เชฎเชพเชŸเซ‡. เชชเชพเช›เชฒเชพ เชธเช‚เชธเซเช•เชฐเชฃเซ‹เชจเชพ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเช“ เชฎเชพเชŸเซ‡, เช…เชฎเซ‡ เชธเชชเซ‹เชฐเซเชŸ เช“เชซเชฐ เช•เชฐเชตเชพเชจเซเช‚ เชšเชพเชฒเซ เชฐเชพเช–เซ€เช เช›เซ€เช v1beta1 เช…เชฎเชพเชฐเชพ เชฎเชพเช‚ legacy เช†เชตเซƒเชคเซเชคเชฟเช“.

เชธเซเชงเชพเชฐเซ‡เชฒ เชฒเซ‹เช—เซ€เช‚เช—

เช† เชชเซเชฐเช•เชพเชถเชจเชฎเชพเช‚, เช…เชฎเซ‡ เชฒเซ‹เช—เซ€เช‚เช— เชฒเชพเช‡เชฌเซเชฐเซ‡เชฐเซ€เชจเซ‡ เช…เชชเชกเซ‡เชŸ เช•เชฐเซ€ เช›เซ‡ klog/v2, Kubernetes 1.19 เชฎเชพเช‚ เชตเชชเชฐเชพเชฏเซ‡เชฒ. เช…เชฎเซ‡ เชฆเชฐเซ‡เช• เชœเชฐเซเชจเชฒเชจเซ€ เชธเชฎเซ€เช•เซเชทเชพ เช•เชฐเซ€เช เช›เซ€เช เชœเซ‡ เช…เชฎเซ‡ เชฒเช–เซ€เช เช›เซ€เช เชคเซ‡เชจเซ€ เช–เชพเชคเชฐเซ€ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เช•เซ‡ เชคเซ‡เชจเซ‡ เชฏเซ‹เช—เซเชฏ เชธเซเชคเชฐ เชธเซ‹เช‚เชชเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เช›เซ‡. เช…เชฎเชจเซ‡ เช†เชจเชพ เชฆเซเชตเชพเชฐเชพ เชฎเชพเชฐเซเช—เชฆเชฐเซเชถเชจ เช†เชชเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เชนเชคเซเช‚ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เชคเชฐเชซเชฅเซ€ เชฎเชพเชฐเซเช—เชฆเชฐเซเชถเชจ. เชคเซเชฏเชพเช‚ เชชเชพเช‚เชš เช›เซ‡ (เช–เชฐเซ‡เช–เชฐ เช›, เช†เชถเชฐเซ‡ เช…เชจเซเชตเชพเชฆเช•) เชฅเซ€ เชถเชฐเซ‚ เชฅเชคเชพ เชฒเซ‹เช—เซ€เช‚เช— เชธเซเชคเชฐเซ‹ Error (เชธเซเชคเชฐ 0), เชœเซ‡ เชฎเชพเชคเซเชฐ เชฎเชนเชคเซเชตเชจเซ€ เชญเซ‚เชฒเซ‹เชจเซ‡ เช›เชพเชชเซ‡ เช›เซ‡ เช…เชจเซ‡ เชคเซ‡เชจเซ€ เชธเชพเชฅเซ‡ เชธเชฎเชพเชชเซเชค เชฅเชพเชฏ เช›เซ‡ Trace (เชธเซเชคเชฐ 5) เชœเซ‡ เชคเชฎเชจเซ‡ เชฌเชฐเชพเชฌเชฐ เชœเชพเชฃเชตเชพเชฎเชพเช‚ เชฎเชฆเชฆ เช•เชฐเชถเซ‡ เช•เซ‡ เชถเซเช‚ เชฅเชˆ เชฐเชนเซเชฏเซเช‚ เช›เซ‡. เช† เชซเซ‡เชฐเชซเชพเชฐ เชธเชพเชฅเซ‡, เช…เชฎเซ‡ เชฒเซ‹เช—เชจเซ€ เชธเช‚เช–เซเชฏเชพเชฎเชพเช‚ เช˜เชŸเชพเชกเซ‹ เช•เชฐเซเชฏเซ‹ เช›เซ‡ เชœเซ‹ เชคเชฎเชจเซ‡ cert-manager เชšเชฒเชพเชตเชคเซ€ เชตเช–เชคเซ‡ เชกเซ€เชฌเช— เชฎเชพเชนเชฟเชคเซ€เชจเซ€ เชœเชฐเซ‚เชฐ เชจ เชนเซ‹เชฏ.

เชŸเซ€เชช: เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ-เชฎเซ‡เชจเซ‡เชœเชฐ เชฎเซ‚เชณเชญเซ‚เชค เชฐเซ€เชคเซ‡ เชธเซเชคเชฐ 2 เชชเชฐ เชšเชพเชฒเซ‡ เช›เซ‡ (Info), เชคเชฎเซ‡ เช†เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เช“เชตเชฐเชฐเชพเช‡เชก เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹ global.logLevel เชนเซ‡เชฒเซเชฎเชšเชพเชฐเซเชŸเชฎเชพเช‚.

เชจเซ‹เช‚เชง: เชธเชฎเชธเซเชฏเชพเชจเชฟเชตเชพเชฐเชฃ เช•เชฐเชคเซ€ เชตเช–เชคเซ‡ เชฒเซ‹เช— เชœเซ‹เชตเชพ เช เช›เซ‡เชฒเซเชฒเซ‹ เช‰เชชเชพเชฏ เช›เซ‡. เชตเชงเซ เชฎเชพเชนเชฟเชคเซ€ เชฎเชพเชŸเซ‡ เช…เชฎเชพเชฐเซเช‚ เชคเชชเชพเชธเซ‹ เชจเซ‡เชคเซƒเชคเซเชต.

เชธเช‚เชชเชพเชฆเช•เชจเชพ เชเชจ.เชฌเซ€.: เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธเชจเชพ เชนเซ‚เชก เชนเซ‡เช เชณ เช† เชฌเชงเซเช‚ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เช•เชพเชฐเซเชฏ เช•เชฐเซ‡ เช›เซ‡ เชคเซ‡ เชตเชฟเชถเซ‡ เชตเชงเซ เชœเชพเชฃเชตเชพ เชฎเชพเชŸเซ‡, เชชเซเชฐเซ‡เช•เซเชŸเชฟเชธ เช•เชฐเชคเชพ เชถเชฟเช•เซเชทเช•เซ‹ เชชเชพเชธเซ‡เชฅเซ€ เชฎเซ‚เชฒเซเชฏเชตเชพเชจ เชธเชฒเชพเชน เชฎเซ‡เชณเชตเซ‹, เชคเซ‡เชฎเชœ เช—เซเชฃเชตเชคเซเชคเชพเชฏเซเช•เซเชค เชŸเซ‡เช•เชจเชฟเช•เชฒ เชธเชชเซ‹เชฐเซเชŸ เชธเชนเชพเชฏ เชฎเซ‡เชณเชตเซ‹, เชคเชฎเซ‡ เช‘เชจเชฒเชพเช‡เชจ เชธเช˜เชจเชคเชพเชฎเชพเช‚ เชญเชพเช— เชฒเชˆ เชถเช•เซ‹ เช›เซ‹. เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เชฌเซ‡เช, เชœเซ‡ เชธเชชเซเชŸเซ‡เชฎเซเชฌเชฐ 28-30 เชฏเซ‹เชœเชพเชถเซ‡, เช…เชจเซ‡ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เชฎเซ‡เช—เชพเชœเซ‡ 14-16 เช“เช•เซเชŸเซ‹เชฌเชฐเซ‡ เชฏเซ‹เชœเชพเชถเซ‡.

ACME เชธเซเชงเชพเชฐเชพเช“

เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ-เชฎเซ‡เชจเซ‡เชœเชฐเชจเซ‹ เชธเซŒเชฅเซ€ เชธเชพเชฎเชพเชจเซเชฏ เช‰เชชเชฏเซ‹เช— เช•เชฆเชพเชš ACME เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ Let's Encrypt เชคเชฐเชซเชฅเซ€ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐเซ‹ เชœเชพเชฐเซ€ เช•เชฐเชตเชพ เชธเชพเชฅเซ‡ เชธเช‚เชฌเช‚เชงเชฟเชค เช›เซ‡. เชธเช‚เชธเซเช•เชฐเชฃ 1.0 เช…เชฎเชพเชฐเชพ ACME เชฐเชœเซ‚เช•เชฐเซเชคเชพเชฎเชพเช‚ เชฌเซ‡ เชจเชพเชจเชพ เชชเชฐเช‚เชคเซ เชฎเชนเชคเซเชตเชชเซ‚เชฐเซเชฃ เชธเซเชงเชพเชฐเชพเช“ เช‰เชฎเซ‡เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชธเชฎเซเชฆเชพเชฏ เชชเซเชฐเชคเชฟเชธเชพเชฆเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชจเซ‹เช‚เชงเชชเชพเชคเซเชฐ เช›เซ‡.

เชเช•เชพเช‰เชจเซเชŸ เช•เซ€ เชœเชจเชฐเซ‡เชถเชจเชจเซ‡ เช…เช•เซเชทเชฎ เช•เชฐเซ‹

เชœเซ‹ เชคเชฎเซ‡ เชฎเซ‹เชŸเชพ เชœเชฅเซเชฅเชพเชฎเชพเช‚ ACME เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐเซ‹เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‹ เช›เซ‹, เชคเซ‹ เชคเชฎเซ‡ เชฌเชนเซเชตเชฟเชง เช•เซเชฒเชธเซเชŸเชฐเซ‹ เชชเชฐ เชธเชฎเชพเชจ เชเช•เชพเช‰เชจเซเชŸเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹, เชคเซ‡เชฅเซ€ เชคเชฎเชพเชฐเชพ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ เชœเชพเชฐเซ€ เช•เชฐเชตเชพเชจเชพ เชจเชฟเชฏเช‚เชคเซเชฐเชฃเซ‹ เชคเซ‡ เชฌเชงเชพ เชชเชฐ เชฒเชพเช—เซ เชฅเชถเซ‡. เชฎเชพเช‚ เช‰เชฒเซเชฒเซ‡เช–เชฟเชค เช—เซเชชเซเชคเชจเซ€ เชจเช•เชฒ เช•เชฐเชคเซ€ เชตเช–เชคเซ‡ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ-เชฎเซ‡เชจเซ‡เชœเชฐเชฎเชพเช‚ เช† เชชเชนเซ‡เชฒเซ‡เชฅเซ€ เชœ เชถเช•เซเชฏ เชนเชคเซเช‚ privateKeySecretRef. เช† เช‰เชชเชฏเซ‹เช—เชจเซ‹ เช•เซ‡เชธ เชเช•เชฆเชฎ เชฌเช—เชกเซเชฏเซ‹ เชนเชคเซ‹, เช•เชพเชฐเชฃ เช•เซ‡ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ-เชฎเซ‡เชจเซ‡เชœเชฐเซ‡ เชฎเชฆเชฆเชฐเซ‚เชช เชฅเชตเชพเชจเซ‹ เชชเซเชฐเชฏเชพเชธ เช•เชฐเซเชฏเซ‹ เชนเชคเซ‹ เช…เชจเซ‡ เชœเซ‹ เชคเซ‡เชจเซ‡ เชเช• เชจ เชฎเชณเซ€ เชคเซ‹ เช–เซเชถเซ€เชฅเซ€ เชจเชตเซ€ เชเช•เชพเช‰เชจเซเชŸ เช•เซ€ เชฌเชจเชพเชตเซ€. เชคเซ‡เชฅเซ€ เชœ เช…เชฎเซ‡ เช‰เชฎเซ‡เชฐเซเชฏเซเช‚ disableAccountKeyGenerationเชœเซ‹ เชคเชฎเซ‡ เช† เชตเชฟเช•เชฒเซเชช เชชเชฐ เชธเซ‡เชŸ เช•เชฐเซ‹ เช›เซ‹ เชคเซ‹ เชคเชฎเชจเซ‡ เช† เชตเชฐเซเชคเชจเชฅเซ€ เชฌเชšเชพเชตเชตเชพ เชฎเชพเชŸเซ‡ true - เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ-เชฎเซ‡เชจเซ‡เชœเชฐ เช•เซ€ เชœเชจเชฐเซ‡เชŸ เช•เชฐเชถเซ‡ เชจเชนเซ€เช‚ เช…เชจเซ‡ เชคเชฎเชจเซ‡ เชšเซ‡เชคเชตเชฃเซ€ เช†เชชเชถเซ‡ เช•เซ‡ เชคเซ‡เชจเซ‡ เชเช•เชพเช‰เชจเซเชŸ เช•เซ€ เชชเซเชฐเชฆเชพเชจ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เชจเชฅเซ€.

apiVersion: cert-manager.io/v1
kind: Issuer
metadata:
  name: letsencrypt
spec:
  acme:
    privateKeySecretRef:
      name: example-issuer-account-key
    disableAccountKeyGeneration: false

เชชเชธเช‚เชฆเช—เซ€เชจเซ€ เชธเชพเช‚เช•เชณ

เชธเชชเซเชŸเซ‡เชฎเซเชฌเชฐ 29 เชšเชพเชฒเซ‹ เชเชจเซเช•เซเชฐเชฟเชชเซเชŸ เช•เชฐเซ€เช เชชเชพเชธ เชฅเช‡ เชœเชถเซ‡ เชคเชฎเชพเชฐเชพ เชชเซ‹เชคเชพเชจเชพ เชฐเซ‚เชŸ CA เชชเชฐ ISRG Root. เช•เซเชฐเซ‹เชธ เชธเชนเซ€ เช•เชฐเซ‡เชฒ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐเซ‹ เชฆเซเชตเชพเชฐเชพ เชฌเชฆเชฒเชตเชพเชฎเชพเช‚ เช†เชตเชถเซ‡ Identrust. เช† เชซเซ‡เชฐเชซเชพเชฐเชจเซ‡ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ-เชฎเซ‡เชจเซ‡เชœเชฐ เชธเซ‡เชŸเชฟเช‚เช—เซเชธเชฎเชพเช‚ เชซเซ‡เชฐเชซเชพเชฐเชจเซ€ เชœเชฐเซ‚เชฐ เชจเชฅเซ€, เช† เชคเชพเชฐเซ€เช– เชชเช›เซ€ เชœเชพเชฐเซ€ เช•เชฐเชพเชฏเซ‡เชฒเชพ เชคเชฎเชพเชฎ เช…เชชเชกเซ‡เชŸ เช…เชฅเชตเชพ เชจเชตเชพ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐเซ‹ เชจเชตเชพ เชฐเซ‚เชŸ CA เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชถเซ‡.

เชšเชพเชฒเซ‹ เชชเชนเซ‡เชฒเชพเชฅเซ€ เชœ เช† CA เชธเชพเชฅเซ‡ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐเซ‹เชจเซ‡ เชเชจเซเช•เซเชฐเชฟเชชเซเชŸ เช•เชฐเซ€เช เช›เซ€เช เช…เชจเซ‡ เชคเซ‡เชฎเชจเซ‡ ACME เชฆเซเชตเชพเชฐเชพ "เชตเซˆเช•เชฒเซเชชเชฟเช• เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ เชธเชพเช‚เช•เชณ" เชคเชฐเซ€เช•เซ‡ เช‘เชซเชฐ เช•เชฐเซ€เช เช›เซ€เช. เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ-เชฎเซ‡เชจเซ‡เชœเชฐเชจเชพ เช† เชธเช‚เชธเซเช•เชฐเชฃเชฎเชพเช‚, เช‡เชถเซเชฏเซเช…เชฐ เชธเซ‡เชŸเชฟเช‚เช—เซเชธเชฎเชพเช‚ เช† เชธเชพเช‚เช•เชณเซ‹เชจเซ€ เชเช•เซเชธเซ‡เชธ เชธเซ‡เชŸ เช•เชฐเชตเซ€ เชถเช•เซเชฏ เช›เซ‡. เชชเชฐเชฟเชฎเชพเชฃเชฎเชพเช‚ preferredChain เชคเชฎเซ‡ เช‰เชชเชฏเซ‹เช—เชฎเชพเช‚ เชฒเซ‡เชตเชพเชคเชพ CA เชจเซเช‚ เชจเชพเชฎ เชธเซเชชเชทเซเชŸ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹, เชœเซ‡เชจเซ€ เชธเชพเชฅเซ‡ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ เชœเชพเชฐเซ€ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเชถเซ‡. เชœเซ‹ เชตเชฟเชจเช‚เชคเซ€ เชธเชพเชฅเซ‡ เชฎเซ‡เชณ เช–เชพเชคเซเช‚ CA เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ เช‰เชชเชฒเชฌเซเชง เชนเชถเซ‡, เชคเซ‹ เชคเซ‡ เชคเชฎเชจเซ‡ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ เช†เชชเชถเซ‡. เชฎเชนเซ‡เชฐเชฌเชพเชจเซ€ เช•เชฐเซ€เชจเซ‡ เชจเซ‹เช‚เชง เช•เชฐเซ‹ เช•เซ‡ เช† เชชเชธเช‚เชฆเช—เซ€เชจเซ‹ เชตเชฟเช•เชฒเซเชช เช›เซ‡, เชœเซ‹ เช•เช‚เชˆ เชจ เชฎเชณเซ‡, เชคเซ‹ เชกเชฟเชซเซ‹เชฒเซเชŸ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ เชœเชพเชฐเซ€ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเชถเซ‡. เช† เชธเซเชจเชฟเชถเซเชšเชฟเชค เช•เชฐเชถเซ‡ เช•เซ‡ เชคเชฎเซ‡ ACME เชฐเชœเซ‚เช•เชฐเซเชคเชพ เชฌเชพเชœเซ เชชเชฐ เชตเซˆเช•เชฒเซเชชเชฟเช• เชธเชพเช‚เช•เชณ เช•เชพเชขเซ€ เชจเชพเช–เซเชฏเชพ เชชเช›เซ€ เชชเชฃ เชคเชฎเชพเชฐเซเช‚ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ เชฐเชฟเชจเซเชฏเซ‚ เช•เชฐเชถเซ‹.

เช†เชœเซ‡ เชคเชฎเซ‡ เชธเชนเซ€ เช•เชฐเซ‡เชฒ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐเซ‹ เชชเซเชฐเชพเชชเซเชค เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹ ISRG Root, เชคเซ‡เชฅเซ€:

apiVersion: cert-manager.io/v1
kind: Issuer
metadata:
  name: letsencrypt
spec:
  acme:
    server: https://acme-v02.api.letsencrypt.org/directory
    preferredChain: "ISRG Root X1"

เชœเซ‹ เชคเชฎเซ‡ เชธเชพเช‚เช•เชณ เช›เซ‹เชกเชตเชพเชจเซเช‚ เชชเชธเช‚เชฆ เช•เชฐเซ‹ เช›เซ‹ IdenTrust - เช† เชตเชฟเช•เชฒเซเชชเชจเซ‡ เชธเซ‡เชŸ เช•เชฐเซ‹ DST Root CA X3:

apiVersion: cert-manager.io/v1
kind: Issuer
metadata:
  name: letsencrypt
spec:
  acme:
    server: https://acme-v02.api.letsencrypt.org/directory
    preferredChain: "DST Root CA X3"

เช•เซƒเชชเชพ เช•เชฐเซ€เชจเซ‡ เชจเซ‹เช‚เชงเซ‹ เช•เซ‡ เช† เชฐเซ‚เชŸ CA เชŸเซ‚เช‚เช• เชธเชฎเชฏเชฎเชพเช‚ เชจเชพเชชเชธเช‚เชฆ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเชถเซ‡, เชšเชพเชฒเซ‹ เชเชจเซเช•เซเชฐเชฟเชชเซเชŸ เช† เชธเชพเช‚เช•เชณเชจเซ‡ 29 เชธเชชเซเชŸเซ‡เชฎเซเชฌเชฐ, 2021 เชธเซเชงเซ€ เชธเช•เซเชฐเชฟเชฏ เชฐเชพเช–เชถเซ‡.

เชธเซ‹เชฐเซเชธ: www.habr.com

เชเช• เชŸเชฟเชชเซเชชเชฃเซ€ เช‰เชฎเซ‡เชฐเซ‹