Möchten Sie erfahren, wie Sie die Radius-Authentifizierung des Kubernetes-Dashboards mit Freeradius einrichten? In diesem Tutorial zeigen wir Ihnen, wie Sie Kubernetes Dashboard-Benutzer mithilfe des Radius-Protokolls und des Freeradius-Dienstes auf einem Computer mit Ubuntu Linux authentifizieren.
• 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 Radius-Servers 192.168.15.10.
Kubernetes – Tutorials
Auf dieser Seite bieten wir schnellen Zugriff auf eine Liste von Tutorials zu Kubernetes.
Tutorial – FreeRadius Server Installation auf Ubuntu Linux
• IP – 192.168.15.10
• Opernsystem – Ubuntu 20
• Hostname – FREERADIUS
Verwenden Sie auf der Linux-Konsole die folgenden Befehle, um den FreeRadius-Dienst zu installieren.
Jetzt müssen wir FreeRadius-Clients zu clients.conf;hinzufügen.
Suchen und bearbeiten Sie die clients.conf.
Fügen Sie die folgenden Zeilen am Ende der Datei clients.conf hinzu.
In unserem Beispiel fügen wir 1 Client-Gerät hinzu:
Das Gerät hat den Namen KUBERNETES und hat die IP-Adresse 192.168.15.200.
In unserem Beispiel setzen wir das Geheimnis: KAMISAMA123.
Jetzt müssen wir FreeRadius-Benutzer zur USERS-Konfigurationsdatei hinzufügen.
Suchen und bearbeiten Sie die Freeradius-Benutzerkonfigurationsdatei.
Fügen Sie die folgenden Zeilen am Ende der Datei hinzu
In unserem Beispiel erstellen wir ein Benutzerkonto mit dem Namen ADMIN.
Starten Sie den Freeradius-Server neu.
Testen Sie die Konfigurationsdatei des Radiusservers.
Sie haben die Freeradius-Installation auf Ubuntu Linux abgeschlossen.
Tutorial Kubernetes – Master-Knoten-Installation
Installieren Sie die Liste der erforderlichen Pakete.
Installieren Sie den Docker-Dienst.
Aktivieren Sie den Docker-Dienst während des Startvorgangs.
Bearbeiten Sie die Docker-Dienstkonfigurationsdatei.
Fügen Sie die folgende Konfiguration am Ende des Elements mit dem Namen hinzu: EXECSTART
Hier ist die Datei vor unserer Konfiguration.
Hier ist die Datei nach unserer Konfiguration.
Erstellen Sie eine Systemkonfigurationsdatei.
Hier ist der Dateiinhalt.
Aktivieren Sie die Systemkonfigurationsdatei.
Bearbeiten Sie die Konfigurationsdatei mit dem Namen: MODULES.CONF
Fügen Sie die folgende Konfiguration am Ende dieser Datei hinzu.
Bearbeiten Sie die FSTAB-Konfigurationsdatei, und deaktivieren Sie die Verwendung von Swap-Speicher.
Hier ist die Datei vor unserer Konfiguration.
Hier ist die Datei nach unserer Konfiguration.
Legen Sie einen eindeutigen Hostnamen fest.
Erstellen Sie eine Datei, um die erforderlichen Umgebungsvariablen zu konfigurieren.
Hier ist der Dateiinhalt.
Starten Sie den Computer neu.
Laden Sie den Kubernetes-Repository-Schlüssel herunter und installieren Sie ihn.
Fügen Sie das offizielle Kubernetes-Repository hinzu.
Installieren Sie die Kubernetes-Pakete.
Laden Sie die erforderlichen Kubernetes-Bilder herunter.
Hier ist die Befehlsausgabe.
Initialisieren Sie den Kubernetes-Cluster.
Hier ist die Befehlsausgabe.
Notieren Sie sich den Befehl zum Hinzufügen von Knoten zum Kubernetes-Cluster.
Legen Sie die richtige Dateiberechtigung für die Kubernetes-Konfigurationsdatei fest.
Installieren Sie die erforderliche Netzwerkkonfiguration.
Standardmäßig darf der Kubernetes-Masterknoten PODS nicht ausführen.
Optional aktivieren Sie den Kubernetes-Masterknoten, um PODS auszuführen.
In unserem Beispiel verwenden wir einen Kubernetes-Cluster mit einem Knoten.
Tutorial – Kubernetes Dashboard-Installation
Installieren Sie die Liste der erforderlichen Pakete.
Laden Sie die erforderliche YAML-Datei herunter.
Installieren Sie das Kubernetes-Dashboard.
Hier ist die Befehlsausgabe.
Erstellen Sie ein Dienstkonto für das Dashboard.
Konfigurieren Sie die Clusteradministratorrolle für das Dashboard-Dienstkonto.
Erstellen Sie ein Dienstkonto für den Apache-Proxy.
Konfigurieren Sie die Cluster-Administratorrolle für das Apache-Proxykonto.
Listen Sie das Apache-Geheimnis auf, das auf dem Kubernetes-Server verfügbar ist.
Hier ist die Befehlsausgabe.
Beachten Sie, dass der Name Ihres Geheimnisses nicht mit unserem identisch sein wird.
Abrufen des Werts des Apache-Geheimtokens.
Hier ist die Befehlsausgabe.
Beachten Sie den Apache-Tokenwert.
In unserem Beispiel ist dies der Tokenwert:
Listen Sie die IP-Adresse des Dashboard-Dienstclusters auf.
Hier ist die Befehlsausgabe.
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 – Radius-Authentifizierung mit Apache
Installieren Sie auf dem Master-Knoten den Apache-Server.
Aktivieren Sie die erforderlichen Apache-Module.
Bearbeiten Sie die Apache-Konfigurationsdatei.
Fügen Sie die folgenden Zeilen am Ende dieser Datei hinzu.
Erstellen Sie einen privaten Schlüssel und ein Zertifikat mit dem Befehl OpenSSL.
Geben Sie die angeforderten Informationen ein.
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.
Bearbeiten Sie die Apache-Konfigurationsdatei für die Standardwebsite.
Hier ist die Datei, vor unserer Konfiguration.
Hier ist die Datei, nach unserer Konfiguration.
Ändern Sie die IP-Adresse des Konfigurationselements mit dem Namen ADDRADIUSAUTH in die IP-Adresse des Radius-Servers.
Ä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.
In unserem Beispiel haben wir die Verwendung der RADIUS-Authentifizierung konfiguriert.
Apache stellt die HTTPS-Kommunikation zwischen dem Benutzer und der IP-Adresse des Dashboard-Clusters dar.
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.
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.
Apache leitet auch HTTP-Benutzer an die HTTPS-Version der angeforderten URL um.
Starten Sie den Apache-Dienst neu.
Ö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.
Nach einer erfolgreichen Anmeldung sollte das Kubernetes Dashboard vorgestellt werden.
Der Apache-Proxy authentifiziert sich automatisch beim Kubernetes Dashboard mit der Funktion: AUTH HEADER.
Sie haben die Konfiguration von Apache als Proxy für das Kubernetes Dashboard erfolgreich abgeschlossen.