GNU/Linux >> Znalost Linux >  >> Linux

Jak vytvořit certifikát TLS/SSL pomocí Cert-Manager Operator na OpenShift

cert-manager staví na Kubernetes a zavádí certifikační autority a certifikáty jako prvotřídní typy prostředků v Kubernetes API. Tato funkce umožňuje poskytovat certifikáty jako službu vývojářům pracujícím ve vašem clusteru Kubernetes.

cert-manager je projekt s otevřeným zdrojovým kódem založený na Apache License 2.0 poskytuje Jetstack . Od cert-manager je open source aplikace, má vlastní stránku GitHub.

Tato příručka vám ukáže, jak nainstalovat cert-manager v Red Hat OpenShift s operátorem . Poté prostřednictvím nainstalovaného cert-manager vystavíte certifikát s vlastním podpisem . Tento výukový program můžete sledovat také sledováním tohoto videa.

[ Také by se vám mohlo líbit: Zpřístupnění certifikátů CA nástrojům příkazového řádku Linuxu ]

KROK 1:Přečtěte si dokumentaci správce certifikátů

Webová stránka projektu poskytuje bohaté informace o cert-manager , včetně přehledu, architektury a návodů k použití.

Pokud si prozkoumáte jeho dokumentaci, můžete objevit podrobnou dokumentaci týkající se konceptů, instalace, konfigurace, použití, výukových programů, nejčastějších dotazů a tak dále. Na úvodní stránce vidíte schéma architektury na vysoké úrovni cert-manager .

V jeho repozitářích GitHub také najdete další dokumentaci nebo přispíváte k projektu.

Můžete si nainstalovat cert-manager buď pro vanilkové prostředí Kubernetes nebo OpenShift. V tomto tutoriálu nainstaluji cert-manager na OpenShift.

Instalační dokumentace OpenShift poskytuje dvě různé možnosti:běžný soubor manifestů nebo operátor cert-manager dostupné v rozhraní webové konzole OpenShift. Nainstaluji přes Operátora .

Od cert-manager funguje podporovaným vydavatelem jako podepisující autorita pro přidělování aplikačních certifikátů se musíte rozhodnout, kterého vydavatele použít. Toto rozhodnutí obvykle závisí na vašem poskytovateli služby DNS (Domain Name Service). Pokud například používáte Microsoft Azure pro hostování vaší aplikace musíte vybrat ACME a vyhledejte správné pokyny pro AzureDNS . Další oblíbenou volbou je Let's Encrypt . V tomto případě však chcete zvolit nejjednoduššího možného Emitenta . Budu tedy používat SelfSigned Issuer .

Dokumentace o Emitentovi je zobrazen níže. Emitent nebo ClusterIssuer je Custom Resource Definition (CRD) které lze použít ke konfiguraci typu Vydavatele . Co odděluje typ Emitenta přichází po spec . V této části zadejte selfSigned pod spec . V tomto příkladu použiji ClusterIssuer namísto Vydavatel protože chci jediného emitenta ke správě certifikátů všech jmenných prostorů.

Jakmile Emitent je vybrán a nakonfigurován, vystavím certifikát pro konkrétní aplikaci. Pro tento krok vytvořte Certifikát prostředek, který je definován v souboru YAML.

KROK 2:Prozkoumejte ukázkový soubor ClusterIssuer a ukázkový soubor certifikátu

V tomto kurzu jsou použity dva ukázkové soubory. První ukázkový soubor definuje ClusterIssuer , která používá certifikáty s vlastním podpisem ke správě certifikátů pro všechny jmenné prostory. V části spec , stačí přidat řádek s nápisem selfSigned:{} .

apiVersion: cert-manager.io/v1alpha3
kind: ClusterIssuer
metadata:
  name: selfsigned-issuer
spec:
  selfSigned: {}

Dále se podívejte na ukázkový Certifikát definice.

apiVersion: cert-manager.io/v1alpha2
kind: Certificate
metadata:
  name: <certificate name>
spec:
  secretName: <secret name to store>
  duration: 2160h0m0s # 90d
  renewBefore: 360h0m0s # 15d
  organization:
  - "<your organization>"
  keySize: 2048
  keyAlgorithm: rsa
  keyEncoding: pkcs1
  usages:
    - server auth
    - client auth
  # At least one of a DNS Name, URI, or IP address is required.
  dnsNames:
  - '<hostname>.<cluster-url>'
  issuerRef:
    name: selfsigned-issuer
    kind: ClusterIssuer

 Certifikát soubor je trochu složitější a je potřeba provést několik změn. Všimněte si, že Certifikát hodnota je přiřazena aplikaci, která zpřístupňuje trasu , takže musíte mít aplikaci, která vyžaduje certifikát TLS/SSL. Zde je několik změn, které musíte provést:

  • Řádek 4 – metadata.name:Tento certifikát musíte pojmenovat.
  • Řádek 6 – spec.secretName:Náš certifikát bude uložen v tajném klíči OpenShift, takže k tomu potřebujete název.
  • Řádek 9 – spec.organization:Musíte uvést název vaší organizace.
  • Řádek 19 – spec.dnsNames:Pravděpodobně jedno z nejdůležitějších nastavení, které by mělo odpovídat vaší trase OpenShift Route pro vaši aplikaci.

Můžete také upravit další pole, jak uznáte za vhodné. Chcete-li upravit nastavení na základě požadavků a nastavení vaší organizace, podívejte se do oficiální dokumentace cert-managera.

KROK 3:Nainstalujte správce certifikátů prostřednictvím operátora v OpenShift

Jste připraveni nasadit cert-manager . Zde je webová konzole OpenShift a hezké grafické rozhraní z webové konzole pro instalaci cert-manager s operátorem . Chcete-li provést tuto změnu, musíte mít cluster-admin privilegia.

Klikněte na OperatorHub v části Operátoři . Pokud tuto možnost nevidíte, s největší pravděpodobností nejste správcem clusteru . Když se objeví OperatorHub, vyhledejte cert-manager . Všimněte si, že existuje několik správců certifikátů, ale vyberte toho, který má verzi pro komunitu.

Zobrazí se okno ve stylu čepele. Přečtěte si základní pokyny a klikněte na Instalovat až budete připraveni.

Ve výchozím nastavení váš cert-manager bude nainstalován na operátory openshift jmenný prostor. V tuto chvíli je to výchozí možnost a webové rozhraní vám ji neumožňuje změnit. Nechte vše tak, jak je, a klikněte na Instalovat .

Tím se spustí cert-manager Operátor instalační proces. Pokud vše půjde dobře, váš cert-manager Operátor by měl být nainstalován.

Po cert-manager Operátor instalace, klikněte na CertManager pod Operátorem správce certifikátů .

Operátor je pouze správcem životního cyklu pro různé procesy instalace a správy vaší aplikace. Chcete-li skutečně nainstalovat cert-manager , musíte vytvořit CertManagers instance. Zkontrolujte konfiguraci, včetně zobrazení souboru YAML. Pokud vše vypadá dobře, klikněte na Vytvořit tlačítko.

Tento krok nainstaluje novou instanci CertManager . Jakmile bude vše vypadat dobře, zobrazí se nový cert-manager zobrazené pod CertManagers kartu.

Nezapomeňte kliknout na Pods a sledujte průběh, abyste se ujistili, že vše půjde hladce. Konečně jste připraveni provést kroky k instalaci ClusterIssuer a poté vygenerovat certifikát.

KROK 4:Vygenerujte ClusterIssuer, který může vydat certifikát

Otevřete okno terminálu a přihlaste se do clusteru OpenShift. Pamatujte na ClusterIssuer soubor, který jste vytvořili? Přejděte do adresáře, kde je soubor umístěn, a zadejte následující příkaz.

oc apply -f <name of ClusterIssuer file>

Pokud vše proběhne v pořádku, zobrazí se zpráva, že vydavatel s vlastním podpisem byl vytvořen.

Můžete se vrátit do modulů svého správce certifikátů a kliknutím na jeden z nich zjistit, že vydavatel s vlastním podpisem je nyní nainstalován.

Další způsob kontroly je z okna terminálu pomocí následujícího příkazu.

# First run this command to see our Issuers:
oc get clusterissuers

# Next, run this command to see the structure of the Issuer
oc get - yaml clusterissuers/<an Issuer name from above>

Měli byste vidět nějaké tištěné podrobnosti o tomto konkrétním Emitentovi .

Dokončili jste instalaci vydavatele . Nakonec můžete přistoupit k vygenerování vzorového certifikátu pro aplikaci.

KROK 5:Vydání certifikátu ve jmenném prostoru

Jediné, co musíte udělat, je použít váš certifikát soubor pro aplikaci. Ujistěte se, že jste přihlášeni ke svému clusteru OpenShift, a poté se přepněte do svého projektu. Vygeneruji certifikát pro Quay , protože používám jmenný prostor s názvem quay-enterprise , ale může to být jakkoli, jak tomu chcete pro svou aplikaci říkat. Jakmile jste v projektu, zadejte následující příkaz:

oc apply -f <a Certificate definition file>

Měli byste vidět zprávu, že certifikát je vytvořen. Skutečnost, že certifikát skutečně existuje, můžete ověřit tímto příkazem:

oc get certificate

Vraťte se do webové konzole OpenShift, klikněte na svůj projekt a klikněte na Tajemství v části Úlohy k nalezení vašeho nového certifikátu TLS/SSL vytvořeného pro vaši aplikaci.

Sbalit

Tento článek vám pomůže pochopit, jak nainstalovat cert-manager na Red Hat OpenShift prostřednictvím jeho operátora a vygenerujte pro vaši aplikaci certifikát s vlastním podpisem.

[ Potřebujete více o Ansible? Absolvujte bezplatný kurz technického přehledu od společnosti Red Hat. Ansible Essentials:Jednoduchost v technickém přehledu automatizace. ] 


Linux
  1. Jak zabezpečit své e-mailové služby Linux pomocí SSL/TLS

  2. Jak zabezpečit název hostitele Plesk na portu 8443 pomocí certifikátu SSL

  3. Jak nakonfigurovat VSFTPD se šifrovaným připojením SSL/TLS?

  1. Jak zabezpečit připojení pomocí certifikátů SSL/TLS

  2. Jak zabezpečit vsFTPd pomocí SSL/TLS

  3. Jak vytvořit certifikát SSL s vlastním podpisem na Ubuntu 18.04

  1. Jak vytvářet dokumenty LaTeX s Emacsem

  2. Jak nainstalovat certifikát SSL třetí strany pomocí cPanel

  3. Jak spravovat certifikáty Lets Encrypt SSL/TLS pomocí certbota