Einführung in die Generierung von Kubernetes-Zertifikaten mit OpenSSL

Einführung in die Generierung von Kubernetes-Zertifikaten mit OpenSSL

Kubernetes unterstützt drei Arten der Authentifizierung: Basisauthentifizierung, Tokenauthentifizierung und CA-Authentifizierung. Dieser Artikel dient zum Aufzeichnen der einfachsten Befehle, die für die CA-Authentifizierung erforderlich sind.

Kubernetes-Zusammensetzung

Die getestete Version ist 1.10, aber es ist nicht auf diese Version beschränkt. Es ist eine gängige Methode für OpenSSL-Zertifikate.

Erforderliche Zertifikate

Die erforderlichen zertifikatsbezogenen Unterlagen sind:

CA-Zertifikat

Privater Schlüssel des CA-Zertifikats

Befehl: openssl genrsa -out ca.key 2048

[root@host121 k8scert]# openssl genrsa -out ca.key 2048
Generieren eines privaten RSA-Schlüssels, 2048 Bit langes Modul
........................................................+++
..................+++
e ist 65537 (0x10001)
[root@host121 k8scert]

CA-Zertifikat

Befehl: openssl genrsa -out ca.key 2048

[root@host121 k8scert]# openssl req -x509 -new -nodes -key ca.key -subj "/CN=host121" -days 5000 -out ca.crt
[root@host121 k8scert]# ls
Archiv ca.crt ca.key
[root@host121 k8scert]

XXX-Zertifikat

Die von apiserver/ControllerManager/kublet benötigten Zertifikate können wie folgt erstellt werden

Privater Zertifikatsschlüssel

Befehl: openssl genrsa -out server.key 2048

[root@host121 k8scert]# openssl genrsa -out server.key 2048
Generieren eines privaten RSA-Schlüssels, 2048 Bit langes Modul
..............................+++
..............................................................................+++
e ist 65537 (0x10001)
[root@host121 k8scert]#

Zertifikatsignieranforderungsdatei

Befehl: openssl req -new -key server.key -subj "/CN=host121" -out server.csr

[root@host121 k8scert]# openssl req -new -key server.key -subj "/CN=host121" -out server.csr
[root@host121 k8scert]#

Die in subj festgelegten Betreffinformationen sind die eigenen Daten des Benutzers. Im Allgemeinen wird CN auf den Domänennamen/Computernamen/oder IP-Namen festgelegt. Beispielsweise kann Kubelet die IP des Knotens sein, auf dem es sich befindet.

Zertifikat

Befehl: openssl x509 -req -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out server.crt -days 5000

[root@host121 k8scert]# openssl x509 -req -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out server.crt -days 5000
Unterschrift ok
Betreff=/CN=Host121
Abrufen des privaten CA-Schlüssels
[root@host121 k8scert]#

Zusammenfassen

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Wenn Sie mehr darüber erfahren möchten, schauen Sie sich bitte die folgenden Links an

Das könnte Sie auch interessieren:
  • Detaillierte Verwendung des Kubernetes-Objektvolumens
  • Ein grafisches Tutorial zur Installation von Rancher2 und zur Konfiguration eines Kubernetes-Clusters in CentOS
  • So erstellen Sie ein standardisiertes VMware-Image für Kubernetes unter Rancher
  • Einige wichtige Einstellungsänderungsdatensätze beim Upgrade von kubernetes1.5.2 auf kubernetes1.10
  • Einführung in Kubernetes (k8s)
  • Zusammenfassung der Anwendungsbereiche von Kubernetes

<<:  Installations- und Konfigurationsdetails zur Synchronisierung der MySQL5.6.33-Datenbank Master/Slave (Master/Slave) (Master-Linux Slave-Windows7)

>>:  Das Umschalten zwischen React-Antd-Tabs führt zu wiederholter Aktualisierung von Unterkomponenten

Artikel empfehlen

Ausführliches Tutorial zur Installation von MySql 5.6.35 winx64

Hinweis: Beim Projektstart ist kein Fehler aufgru...

Detaillierte Erklärung des Unterschieds zwischen Tags und Elementen in HTML

Ich glaube, dass es vielen Freunden, die sich mit ...

Navicat: Mehrere Möglichkeiten zum Ändern des MySQL-Datenbankkennworts

Methode 1: Verwenden Sie den Befehl SET PASSWORD ...

Beispielcode zum Erzielen eines Aushöhlungseffekts mit reinem CSS

Ich habe kürzlich den Aushöhlungseffekt untersuch...

Zusammenfassung der wichtigsten Docker-Befehle für Entwickler

Inhaltsverzeichnis Einführung in Docker Installat...

Linux: Fünf-Schritte-Kernel-Build-Baum

Inhaltsverzeichnis 0. Der mit dem System geliefer...

So erstellen Sie einen K8S-Cluster und installieren Docker unter Hyper-V

Wenn Sie das Win10-System installiert haben und e...

Details zum TypeScript-Mapping-Typ

Inhaltsverzeichnis 1. Zugeordnete Typen 2. Mappin...

CSS3-Mauszeiger-Übergangszoomeffekt

Das Folgende ist ein Bild-Zoom-Effekt, der in rei...

So zeigen Sie das MySQL-Binlog (Binärprotokoll) an

Wenn Sie beispielsweise eine neue Tabelle erstell...

So erstellen Sie ein Drag & Drop-Plugin mit benutzerdefinierten Vue-Direktiven

Wir alle kennen die Drag-and-Drop-Funktion von HT...

So passen Sie Docker-Images mit Dockerfile an

Anpassen von Bildern mit Dockerfile Unter Bildanp...

Zusammenfassung der Ausführungsprobleme zwischen MySQL Max und Where

Ausführungsproblem zwischen MySQL Max und Where S...