Ansible : Authentification via Active Directory
Ansible : Authentification via Active Directory
Cette article fait suite à l’article Ansible : installation et administrations des serveurs Windows ou je vous expliquais comment effectuer l’administration de vos serveurs Windows avec Ansible. L’authentification utilisé était local à chaque système.
Dans cette article, nous effectuerons l’administration des serveurs Windows en utilisant l’authentification Active Directory. Cela évitera de devoir créer un compte local sur chaque machines à administrer.
Afin de suivre ce tutoriel, vous devez avoir installé ansible et effectué les configurations nécessaire coté Windows (référez vous à mon précédent article si ce n’est pas fait).
1) Installation des packages nécessaires
Lancez les commandes suivantes pour installer les paquets nécessaires :
yum -y install python-devel krb5-devel krb5-libs krb5-workstation pam_krb5
pip install kerberos requests_kerberos
2) Configuration du Kerberos
Pour configurer Kerberos coté serveur Ansible, éditez le fichier /etc/krb5.conf en le configurant de la manière suivante (mon domaine étant labvmware.local) :
[libdefaults]
dns_lookup_realm = false
ticket_lifetime = 24h
renew_lifetime = 7d
forwardable = true
rdns = false
default_realm = LABVMWARE.LOCAL
default_ccache_name = KEYRING:persistent:%{uid}[realms]
LABVMWARE.LOCAL = {
kdc = dc01.labvmware.local
admin_server = dc01.labvmware.local
default_domain = dc01.labvmware.local
}[domain_realm]
.kerberos.server = LABVMWARE.LOCAL
.labvmware.local = LABVMWARE.LOCAL
labvmware.local = LABVMWARE.LOCAL
labvmware = LABVMWARE.LOCAL
3) Configuration du coffre fort Ansible
Une fois configurée, nous devons modifier le « vault » ou coffre fort Ansible pour y ajouter les identifiants Active Directory.
Votre vault ressemble doit ressembler à cela :
ansible_ssh_user: ansible@LABVMWARE.LOCAL
ansible_ssh_pass: VotreMotdePasseDomaineAD
ansible_ssh_port: 5986
ansible_connection: winrm
ansible_winrm_server_cert_validation: ignore
J’ai mis mon nom de domaine en majuscule car en minuscule, la réponse au ticket Kerberos n’était pas correct
Pour des raisons évidente de sécurité, créez un utilisateur AD dédié, et n’utilisez pas le compte Administrateur du domaine
4) Test du Kerberos
Afin de tester la bonne communication avec Active Directory, utilisez la commande « kinit » :
Vous pouvez utiliser la commande « kinit administrateur » ou « kinit administrateur@LABVMWARE.LOCAL« . Le paramètre « default_realm = LABVMWARE.LOCAL » du fichier de conf kerberos retrouvera le nom de domaine par défaut.
Si vous n’avez pas de message d’erreur alors tout est ok.
Utilisez la commande « klist » pour vérifier votre ticket kerberos :
5) Test d’un playbook
Testons le ping sur nos hosts Windows via la commande :
ansible windows -m win_ping –ask-vault-pass -o
Attention aux double tiret – – de – -ask-vault-pass
Résultats avec authentification Active Directory :
1 réponse
[…] Afin de suivre ce tutoriel, vous devez avoir installé ansible et effectué les configurations nécessaire coté Windows (référez vous à mon précédent article si ce n’est pas fait) → Lire la suite […]