Souhaitez-vous savoir comment configurer l’authentification Kubernetes LDAP dans Active Directory ? Dans ce didacticiel, nous allons vous montrer comment authentifier les utilisateurs du tableau de bord Kubernetes à l’aide de Windows Active Directory et du protocole LDAP.

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

Ce didacticiel installera un cluster Kubernetes à nœud unique.

Dans notre exemple, l’adresse IP du nœud principal Kubernetes est 192.168.15.200.

Dans notre exemple, l’adresse IP du contrôleur de domaine est 192.168.15.10.

Tutorial Windows - Domain Controller Firewall

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

Tout d’abord, nous devons créer une règle de pare-feu sur le contrôleur de domaine Windows.

Cette règle de pare-feu permet au serveur Kubernetes de interroger le répertoire Active.

Sur le contrôleur de domaine, ouvrez l’application nommée Windows Firewall avec Advanced Security

Créez une nouvelle règle de pare-feu entrant.

zabbix active directory

Sélectionnez l’option PORT.

zabbix windows firewall port

Sélectionnez l’option TCP.

Sélectionnez l’option Ports locaux spécifiques.

Entrez dans le port TCP 389.

zabbix windows firewall port ldap

Sélectionnez l’option Autoriser l’option de connexion.

zabbix windows firewall allow connection

Vérifiez l’option DOMAIN.

Vérifiez l’option PRIVATE.

Vérifiez l’option PUBLIC.

Zabbix windows firewall profile

Entrez une description de la règle du pare-feu.

windows firewall active directory

Félicitations, vous avez créé la règle de pare-feu requise.

Cette règle permet au serveur Kubernetes de interroger la base de données Active Directory.

Tutorial Windows - Création de compte de domaine

Ensuite, nous devons créer au moins 2 comptes dans la base de données Active Directory.

Le compte ADMIN sera utilisé pour se connecter au tableau de bord Kubernetes.

Le compte BIND sera utilisé pour interroger la base de données Active Directory.

Sur le contrôleur de domaine, ouvrez l’application nommée : Utilisateurs et ordinateurs Active directory.

Créez un nouveau compte à l’intérieur du conteneur Utilisateurs.

Zabbix active directory account

Créer un nouveau compte nommé : admin

Mot de passe configuré pour l’utilisateur ADMIN: 123qwe..

Ce compte sera utilisé pour s’authentifier sur l’interface web de Kubernetes.

active directory admin account
zabbix active directory admin properties

Créer un nouveau compte nommé : lier

Mot de passe configuré à l’utilisateur BIND: kamisama123.

Kubernetes utilisera ce compte pour interroger Active Directory.

active directory bind account
zabbix active directory ldap bind properties

Félicitations, vous avez créé les comptes Active directory requis.

Tutorial Windows - Création de groupe domaine

Ensuite, nous devons créer un groupe sur Active Directory.

Sur le contrôleur de domaine, ouvrez l’application nommée : Utilisateurs et ordinateurs Active directory.

Créez un nouveau groupe à l’intérieur du conteneur Utilisateurs.

Radius Active directory group

Créez un nouveau groupe nommé : KUBERNETES-ADMIN.

Les membres de ce groupe disposeront d’une autorisation administrative sur le tableau de bord Kubernetes.

Kubernetes LDAP authentication group

Important! Ajoutez l’utilisateur ADMIN en tant que membre du KUBERNETES-ADMIN.

Kubernetes LDAP Active directory group

Félicitations, vous avez créé le groupe Active directory requis.

Didacticiel Kubernetes - Installation du nœud maître

Installez la liste des paquets requis.

Copy to Clipboard

Installez le service Docker.

Copy to Clipboard

Activez le service Docker pendant le démarrage.

Copy to Clipboard

Modifiez le fichier de configuration du service Docker.

Copy to Clipboard

Ajouter la configuration suivante à la fin de l’élément nommé : EXECSTART

Copy to Clipboard

Voici le fichier avant notre configuration.

Copy to Clipboard

Voici le fichier après notre configuration.

Copy to Clipboard

Créez un fichier de configuration système.

Copy to Clipboard

Voici le contenu du fichier.

Copy to Clipboard

Activez le fichier de configuration système.

Copy to Clipboard

Modifiez le fichier de configuration nommé : MODULES.CONF

Copy to Clipboard

Ajoutez la configuration suivante à la fin de ce fichier.

Copy to Clipboard

Modifiez le fichier de configuration FSTAB et désactivez l’utilisation de la mémoire Swap.

Copy to Clipboard

Voici le fichier avant notre configuration.

Copy to Clipboard

Voici le fichier après notre configuration.

Copy to Clipboard

Définissez un nom d’hôte unique.

Copy to Clipboard

Créez un fichier pour configurer les variables d’environnement requises.

Copy to Clipboard

Voici le contenu du fichier.

Copy to Clipboard

Redémarrez l’ordinateur.

Copy to Clipboard

Téléchargez et installez la clé de référentiel Kubernetes.

Copy to Clipboard

Ajoutez le référentiel officiel Kubernetes.

Copy to Clipboard

Installez les packages Kubernetes.

Copy to Clipboard

Téléchargez les images Kubernetes requises.

Copy to Clipboard

Voici la sortie de commande.

Copy to Clipboard

Initialiser le cluster Kubernetes.

Copy to Clipboard

Voici la sortie de commande.

Copy to Clipboard

Prenez note de la commande pour ajouter des nœuds au cluster Kubernetes.

Copy to Clipboard

Définissez l’autorisation de fichier correcte sur le fichier de configuration Kubernetes.

Copy to Clipboard

Installez la configuration réseau requise.

Copy to Clipboard

Par défaut, le nœud maître Kubernetes n’est pas autorisé à exécuter des PODS.

En option, activez le nœud maître Kubernetes pour exécuter pods.

Copy to Clipboard

Dans notre exemple, nous utilisons un cluster Kubernetes à nœud unique.

Didacticiel - Installation du Kubernetes Dashboard

Installez la liste des paquets requis.

Copy to Clipboard

Téléchargez le fichier YARL requis.

Copy to Clipboard

Installez le Kubernetes Dashboard.

Copy to Clipboard

Voici la sortie de commande.

Copy to Clipboard

Créez un compte de service pour le Dashboard.

Copy to Clipboard

Configurez le rôle d’administrateur de cluster sur le compte de service Dashboard.

Copy to Clipboard

Créez un compte de service pour le proxy Apache.

Copy to Clipboard

Configurez le rôle d’administrateur de cluster sur le compte proxy Apache.

Copy to Clipboard

Répertoriez le secret Apache disponible sur le serveur Kubernetes.

Copy to Clipboard

Voici la sortie de commande.

Copy to Clipboard

Notez que le nom de votre secret ne sera pas le même que le nôtre.

Obtenez la valeur du jeton secret Apache.

Copy to Clipboard

Voici la sortie de commande.

Copy to Clipboard

Prenez note de la valeur de jeton Apache.

Dans notre exemple, il s’agit de la valeur symbolique :

Copy to Clipboard

Répertoriez l’adresse IP du cluster de service Dashboard.

Copy to Clipboard

Voici la sortie de commande.

Copy to Clipboard

Prenez note de l’adresse IP du cluster et du port TCP.

Dans notre exemple, le cluster Dashboard utilise le port TCP 443 et l’adresse IP 10.107.55.24.

Vous avez terminé la configuration du Dashboard requise.

Proxy Kubernetes - Authentification utilisateur de base à l’aide d’Apache

Sur le nœud Maître, installez le serveur Apache.

Copy to Clipboard

Activez les modules Apache requis.

Copy to Clipboard

Modifiez le fichier de configuration Apache.

Copy to Clipboard

Ajoutez les lignes suivantes à la fin de ce fichier.

Copy to Clipboard

Créez une clé et un certificat privés à l’aide de la commande OpenSSL.

Copy to Clipboard

Entrez les informations demandées.

Copy to Clipboard

Dans l’option nommée COMMON_NAME, vous devez entrer l’adresse IP ou le nom d’hôte.

Dans notre exemple, nous utilisons l’adresse IP : 192.168.15.200

Convertissez votre certificat proxy Kubernetes existant et la clé en un seul fichier au format PEM.

Copy to Clipboard

Modifiez le fichier de configuration Apache pour le site Web par défaut.

Copy to Clipboard

Voici le fichier, avant notre configuration.

Copy to Clipboard

Voici le fichier, après notre configuration.

Copy to Clipboard

Modifiez l’adresse IP des éléments de configuration nommés AUTHLDAPURL à l’adresse IP du contrôleur de domaine.

Modifiez toutes les informations de domaine d’Active Directory pour refléter votre environnement.

Modifiez l’adresse IP des éléments de configuration nommés PROXYPASS et PROXYPASSREVERSE à l’adresse IP du cluster Tableau de bord.

Modifiez la valeur de jeton de l’IC nommé REQUESTHEADER en valeur de jeton secret Apache créée précédemment.

Dans notre exemple, nous avons activé l’utilisation de HTTPS à l’aide de certificats autosignés.

Copy to Clipboard

Dans notre exemple, nous avons configuré l’utilisation de l’authentification LDAP.

Copy to Clipboard

Apache représentera la communication HTTPS entre l’utilisateur et l’adresse IP du cluster Dashboard.

Copy to Clipboard

Apache utilisera un certificat et une clé créés automatiquement lors de l’installation du serveur Kubernetes pour effectuer l’authentification TLS mutuelle sur le tableau de bord.

Copy to Clipboard

Le serveur Apache ajoutera un en-tête à tous les paquets envoyés au tableau de bord.

Cet en-tête est nommé AUTHORIZATION BEARER et contient le jeton secret créé plus tôt dans le proxy Apache.

Copy to Clipboard

Apache redirigera également les utilisateurs HTTP vers la version HTTPS de l’URL demandée.

Copy to Clipboard

Redémarrez le service Apache.

Copy to Clipboard

Ouvrez votre navigateur et accédez à la version HTTPS de l’adresse IP du serveur Apache.

Dans notre exemple, l’URL suivante a été saisie dans le navigateur :

• https://192.168.15.200

Le serveur Apache vous demandera d’effectuer l’authentification utilisateur.

Kubernetes Dashboard Proxy Authentication

Après une connexion réussie, le Kubernetes Dashboard doit être présenté.

Kubernetes Dashboard

Le proxy Apache s’auxeigne automatiquement dans le tableau de bord Kubernetes à l’aide de la fonctionnalité nommée : AUTH HEADER.

Kubernetes dashboard Authorization bearer

Vous avez terminé avec succès la configuration d’Apache en tant que proxy pour le tableau de bord Kubernetes.