Möchten Sie erfahren, wie Sie die Kubernetes LDAP-Authentifizierung in Active Directory konfigurieren? In diesem Tutorial zeigen wir Ihnen, wie Kubernetes Dashboard-Benutzer mithilfe von Windows Active Directory und dem LDAP-Protokoll authentifiziert werden.

• Ubuntu 20
• Ubuntu 19
• Ubuntu 18
• Kubernetes 1.18

In diesem Tutorial wird ein Kubernetes-Cluster mit einem Knoten installiert.

In unserem Beispiel lautet die IP-Adresse des Kubernetes-Masterknotens 192.168.15.200.

In unserem Beispiel lautet die IP-Adresse des Domänencontrollers 192.168.15.10.

Tutorial Windows – Domänencontroller-Firewall

• IP – 192.168.15.10
• Operacional System – WINDOWS 2012 R2
• Hostname – TECH-DC01

Zuerst müssen wir eine Firewallregel auf dem Windows-Domänencontroller erstellen.

Diese Firewallregel ermöglicht es dem Kubernetes-Server, das Active-Verzeichnis abzufragen.

Öffnen Sie auf dem Domänencontroller die Anwendung mit dem Namen Windows Firewall mit Advanced Security

Erstellen Sie eine neue Eingehende Firewallregel.

zabbix active directory

Wählen Sie die Option PORT aus.

zabbix windows firewall port

Wählen Sie die TCP-Option aus.

Wählen Sie die Option Spezifische lokale Ports aus.

Geben Sie den TCP-Port 389 ein.

zabbix windows firewall port ldap

Wählen Sie die Option Verbindung zulassen aus.

zabbix windows firewall allow connection

Aktivieren Sie die Option DOMAIN.

Aktivieren Sie die Option PRIVATE.

Aktivieren Sie die Option PUBLIC.

Zabbix windows firewall profile

Geben Sie eine Beschreibung für die Firewallregel ein.

windows firewall active directory

Herzlichen Glückwunsch, Sie haben die erforderliche Firewall-Regel erstellt.

Diese Regel ermöglicht es dem Kubernetes-Server, die Active Directory-Datenbank abzufragen.

Tutorial Windows – Domänenkontoerstellung

Als Nächstes müssen wir mindestens 2 Konten in der Active Directory-Datenbank erstellen.

Das ADMIN-Konto wird verwendet, um sich im Kubernetes-Dashboard anzumelden.

Das BIND-Konto wird zum Abfragen der Active Directory-Datenbank verwendet.

Öffnen Sie auf dem Domänencontroller die Anwendung mit dem Namen: Active Directory-Benutzer und -Computer

Erstellen Sie ein neues Konto im Container Benutzer.

Zabbix active directory account

Erstellen Eines neuen Kontos mit dem Namen: admin

Kennwort für den ADMIN-Benutzer konfiguriert: 123qwe..

Dieses Konto wird zur Authentifizierung auf der Kubernetes-Weboberfläche verwendet.

active directory admin account
zabbix active directory admin properties

Erstellen eines neuen Kontos mit dem Namen: bind

Für den BIND-Benutzer konfiguriertes Kennwort: kamisama123..

Kubernetes verwendet dieses Konto, um Active Directory abzufragen.

active directory bind account
zabbix active directory ldap bind properties

Herzlichen Glückwunsch, Sie haben die erforderlichen Active Directory-Konten erstellt.

Tutorial Windows – Domänengruppenerstellung

Als Nächstes müssen wir eine Gruppe im Active Directory erstellen.

Öffnen Sie auf dem Domänencontroller die Anwendung mit dem Namen: Active Directory-Benutzer und -Computer

Erstellen Sie eine neue Gruppe im Container Benutzer.

Grafana active directory group

Erstellen Sie eine neue Gruppe mit dem Namen: KUBERNETES-ADMIN.

Mitglieder dieser Gruppe verfügen über administratore Berechtigungen für das Kubernetes-Dashboard.

Kubernetes LDAP authentication group

Wichtig! Fügen Sie den ADMIN-Benutzer als Mitglied des KUBERNETES-ADMIN hinzu.

Kubernetes LDAP Active directory group

Herzlichen Glückwunsch, Sie haben die erforderliche Active Directory-Gruppe erstellt.

Tutorial Kubernetes – Master-Knoten-Installation

Installieren Sie die Liste der erforderlichen Pakete.

Copy to Clipboard

Installieren Sie den Docker-Dienst.

Copy to Clipboard

Aktivieren Sie den Docker-Dienst während des Startvorgangs.

Copy to Clipboard

Bearbeiten Sie die Docker-Dienstkonfigurationsdatei.

Copy to Clipboard

Fügen Sie die folgende Konfiguration am Ende des Elements mit dem Namen hinzu: EXECSTART

Copy to Clipboard

Hier ist die Datei vor unserer Konfiguration.

Copy to Clipboard

Hier ist die Datei nach unserer Konfiguration.

Copy to Clipboard

Erstellen Sie eine Systemkonfigurationsdatei.

Copy to Clipboard

Hier ist der Dateiinhalt.

Copy to Clipboard

Aktivieren Sie die Systemkonfigurationsdatei.

Copy to Clipboard

Bearbeiten Sie die Konfigurationsdatei mit dem Namen: MODULES.CONF

Copy to Clipboard

Fügen Sie die folgende Konfiguration am Ende dieser Datei hinzu.

Copy to Clipboard

Bearbeiten Sie die FSTAB-Konfigurationsdatei, und deaktivieren Sie die Verwendung von Swap-Speicher.

Copy to Clipboard

Hier ist die Datei vor unserer Konfiguration.

Copy to Clipboard

Hier ist die Datei nach unserer Konfiguration.

Copy to Clipboard

Legen Sie einen eindeutigen Hostnamen fest.

Copy to Clipboard

Erstellen Sie eine Datei, um die erforderlichen Umgebungsvariablen zu konfigurieren.

Copy to Clipboard

Hier ist der Dateiinhalt.

Copy to Clipboard

Starten Sie den Computer neu.

Copy to Clipboard

Laden Sie den Kubernetes-Repository-Schlüssel herunter und installieren Sie ihn.

Copy to Clipboard

Fügen Sie das offizielle Kubernetes-Repository hinzu.

Copy to Clipboard

Installieren Sie die Kubernetes-Pakete.

Copy to Clipboard

Laden Sie die erforderlichen Kubernetes-Bilder herunter.

Copy to Clipboard

Hier ist die Befehlsausgabe.

Copy to Clipboard

Initialisieren Sie den Kubernetes-Cluster.

Copy to Clipboard

Hier ist die Befehlsausgabe.

Copy to Clipboard

Notieren Sie sich den Befehl zum Hinzufügen von Knoten zum Kubernetes-Cluster.

Copy to Clipboard

Legen Sie die richtige Dateiberechtigung für die Kubernetes-Konfigurationsdatei fest.

Copy to Clipboard

Installieren Sie die erforderliche Netzwerkkonfiguration.

Copy to Clipboard

Standardmäßig darf der Kubernetes-Masterknoten PODS nicht ausführen.

Optional aktivieren Sie den Kubernetes-Masterknoten, um PODS auszuführen.

Copy to Clipboard

In unserem Beispiel verwenden wir einen Kubernetes-Cluster mit einem Knoten.

Tutorial – Kubernetes Dashboard-Installation

Installieren Sie die Liste der erforderlichen Pakete.

Copy to Clipboard

Laden Sie die erforderliche YAML-Datei herunter.

Copy to Clipboard

Installieren Sie das Kubernetes-Dashboard.

Copy to Clipboard

Hier ist die Befehlsausgabe.

Copy to Clipboard

Erstellen Sie ein Dienstkonto für das Dashboard.

Copy to Clipboard

Konfigurieren Sie die Clusteradministratorrolle für das Dashboard-Dienstkonto.

Copy to Clipboard

Erstellen Sie ein Dienstkonto für den Apache-Proxy.

Copy to Clipboard

Konfigurieren Sie die Cluster-Administratorrolle für das Apache-Proxykonto.

Copy to Clipboard

Listen Sie das Apache-Geheimnis auf, das auf dem Kubernetes-Server verfügbar ist.

Copy to Clipboard

Hier ist die Befehlsausgabe.

Copy to Clipboard

Beachten Sie, dass der Name Ihres Geheimnisses nicht mit unserem identisch sein wird.

Abrufen des Werts des Apache-Geheimtokens.

Copy to Clipboard

Hier ist die Befehlsausgabe.

Copy to Clipboard

Beachten Sie den Apache-Tokenwert.

In unserem Beispiel ist dies der Tokenwert:

Copy to Clipboard

Listen Sie die IP-Adresse des Dashboard-Dienstclusters auf.

Copy to Clipboard

Hier ist die Befehlsausgabe.

Copy to Clipboard

Notieren Sie sich die Cluster-IP-Adresse und den TCP-Port.

In unserem Beispiel verwendet der Dashboard-Cluster den TCP-Port 443 und die IP-Adresse 10.107.55.24.

Sie haben die erforderliche Dashboardkonfiguration abgeschlossen.

Kubernetes Proxy – Grundlegende Benutzerauthentifizierung mit Apache

Installieren Sie auf dem Master-Knoten den Apache-Server.

Copy to Clipboard

Aktivieren Sie die erforderlichen Apache-Module.

Copy to Clipboard

Bearbeiten Sie die Apache-Konfigurationsdatei.

Copy to Clipboard

Fügen Sie die folgenden Zeilen am Ende dieser Datei hinzu.

Copy to Clipboard

Erstellen Sie einen privaten Schlüssel und ein Zertifikat mit dem Befehl OpenSSL.

Copy to Clipboard

Geben Sie die angeforderten Informationen ein.

Copy to Clipboard

In der Option COMMON_NAME müssen Sie die IP-Adresse oder den Hostnamen eingeben.

In unserem Beispiel verwenden wir die IP-Adresse: 192.168.15.200

Konvertieren Sie Ihr vorhandenes Kubernetes-Proxyzertifikat und den Schlüssel in eine einzelne Datei im PEM-Format.

Copy to Clipboard

Bearbeiten Sie die Apache-Konfigurationsdatei für die Standardwebsite.

Copy to Clipboard

Hier ist die Datei, vor unserer Konfiguration.

Copy to Clipboard

Hier ist die Datei, nach unserer Konfiguration.

Copy to Clipboard

Ändern Sie die IP-Adresse der Konfigurationselemente mit dem Namen AUTHLDAPURL in die IP-Adresse des Domänencontrollers.

Ändern Sie alle Domäneninformationen in Active Directory, um Ihre Umgebung widerzuspiegeln.

Ändern Sie die IP-Adresse der Konfigurationselemente PROXYPASS und PROXYPASSREVERSE in die IP-Adresse des Dashboardclusters.

Ändern Sie den Tokenwert des CI mit dem Namen REQUESTHEADER in den zuvor erstellten Apache-Geheimtokenwert.

In unserem Beispiel haben wir die Verwendung von HTTPS mit selbstsignierten Zertifikaten aktiviert.

Copy to Clipboard

In unserem Beispiel haben wir die Verwendung der LDAP-Authentifizierung konfiguriert.

Copy to Clipboard

Apache stellt die HTTPS-Kommunikation zwischen dem Benutzer und der IP-Adresse des Dashboard-Clusters dar.

Copy to Clipboard

Apache verwendet ein Zertifikat und einen Schlüssel, die während der Kubernetes-Serverinstallation automatisch erstellt werden, um eine gegenseitige TLS-Authentifizierung auf dem Dashboard durchzuführen.

Copy to Clipboard

Der Apache-Server fügt allen Paketen, die an das Dashboard gesendet werden, einen Header hinzu.

Dieser Header heißt AUTHORIZATION BEARER und enthält das geheime Token, das zuvor im Apache-Proxy erstellt wurde.

Copy to Clipboard

Apache leitet auch HTTP-Benutzer an die HTTPS-Version der angeforderten URL um.

Copy to Clipboard

Starten Sie den Apache-Dienst neu.

Copy to Clipboard

Öffnen Sie Ihren Browser und greifen Sie auf die HTTPS-Version der IP-Adresse des Apache-Servers zu.

In unserem Beispiel wurde die folgende URL im Browser eingegeben:

• https://192.168.15.200

Für den Apache-Server müssen Sie eine Benutzerauthentifizierung durchführen.

Kubernetes Dashboard Proxy Authentication

Nach einer erfolgreichen Anmeldung sollte das Kubernetes Dashboard vorgestellt werden.

Kubernetes Dashboard

Der Apache-Proxy authentifiziert sich automatisch beim Kubernetes Dashboard mit der Funktion: AUTH HEADER.

Kubernetes dashboard Authorization bearer

Sie haben die Konfiguration von Apache als Proxy für das Kubernetes Dashboard erfolgreich abgeschlossen.