Identités, politiques, certificats et interopérabilité : tout savoir sur cette brique open source essentielle
Dans les infrastructures modernes, la gestion centralisée des identités et des accès est un pilier de la sécurité.
Si le monde Windows s’appuie sur Active Directory, le monde Linux dispose d’une alternative libre, robuste et mature : FreeIPA.
Né dans l’écosystème Red Hat, FreeIPA combine plusieurs technologies open source (LDAP, Kerberos, Dogtag, DNS BIND, etc.) pour offrir un système unifié d’authentification, d’autorisation et d’administration — en somme, un Active Directory open source, extensible et interopérable.
1. Comprendre FreeIPA
Une suite open source intégrée
FreeIPA (Identity, Policy, Audit) regroupe :
| Composant | Rôle principal |
|---|---|
| 389 Directory Server | Annuaire LDAP stockant les comptes, groupes et hôtes |
| Kerberos (MIT KDC) | Authentification centralisée et SSO |
| Dogtag Certificate System | PKI interne pour certificats et authentification forte |
| BIND | Service DNS intégré et géré |
| SSSD | Agent client sur les postes Linux |
| IPA Web UI / CLI / API REST | Interface d’administration et d’automatisation |
L’ensemble offre un contrôle complet sur les utilisateurs, groupes, politiques SUDO, accès basés sur les hôtes (HBAC), gestion de certificats et réplication multi-maître.
2. Installation et configuration d’un serveur FreeIPA
Prérequis
Système Linux compatible : Rocky Linux, AlmaLinux, Fedora, CentOS Stream
Nom d’hôte pleinement qualifié (FQDN) résolvable (ex. ipa01.lan.local)
DNS fonctionnel et synchronisation NTP correcte
2 Go de RAM et 20 Go d’espace disque minimum
Ports ouverts : 80, 443, 389, 636, 88, 464, 53
Étapes pas à pas
a) Installation des paquets
sudo dnf install -y freeipa-server freeipa-server-dns b) Lancement du script de configuration
sudo ipa-server-install Le script vous demandera :
le nom de domaine (ex. lan.local)
le realm Kerberos (ex. LAN.LOCAL)
la configuration DNS intégrée (optionnelle mais recommandée)
un mot de passe administrateur IPA
c) Démarrage et vérification
sudo systemctl status ipa
sudo ipa user-add testuser --first Test --last User
L’interface Web est ensuite accessible via :
https://ipa01.lan.local
d) Ajout d’un client
Sur chaque machine Linux à intégrer :
sudo dnf install -y freeipa-client
sudo ipa-client-install --server ipa01.lan.local --domain lan.local
Le client configure automatiquement SSSD, PAM et Kerberos pour authentifier les utilisateurs via FreeIPA.
3. Gestion des politiques et services
FreeIPA permet d’aller bien au-delà de la simple authentification :
HBAC (Host-Based Access Control) : définir quels utilisateurs peuvent se connecter sur quelles machines.
SUDO Rules : gérer finement les privilèges administratifs.
Groupes, rôles, délégations : créer des hiérarchies d’administration décentralisées.
PKI Dogtag : émettre et renouveler automatiquement des certificats X.509 pour serveurs, utilisateurs ou services internes.
Les politiques peuvent être appliquées de façon centralisée et synchronisées sur l’ensemble des hôtes membres du domaine IPA.
4. Intégration avec Active Directory
Objectif
Permettre à des utilisateurs AD de s’authentifier sur des hôtes Linux gérés par FreeIPA, sans duplication des comptes.
Principe
FreeIPA établit une relation de confiance (trust) avec le domaine Active Directory.
Les identités AD sont alors reconnues via Kerberos et LDAP, sans synchronisation des mots de passe.
Conditions
FreeIPA doit être configuré en realm Kerberos (ex. IPA.LAN)
Le contrôleur de domaine AD doit utiliser un domaine distinct (ex. AD.LAN)
Les deux systèmes doivent pouvoir résoudre les DNS réciproques.
Étapes simplifiées
Installer le package :
sudo dnf install -y ipa-server-trust-ad samba-winbind
2. Créer la relation de confiance :
ipa trust-add --type=ad ad.lan --admin Administrator --password
3. Vérifier :
ipa trust-fetch-domains ad.lan
getent passwd "AD\\username"
Une fois la relation établie, un utilisateur du domaine AD pourra se connecter directement sur une machine Linux du domaine FreeIPA via SSH :
ssh AD\\john@serveur-linux
Avantages de cette intégration
Authentification unifiée entre environnements Windows et Linux
Pas de duplication d’identités ni synchronisation de mots de passe
Possibilité d’appliquer des politiques distinctes à chaque domaine tout en conservant un SSO global
5. Bonnes pratiques et maintenance
Sauvegardes régulières : LDAP, Kerberos, PKI (Dogtag)
Surveillance NTP et DNS : indispensables pour la stabilité Kerberos
Réplication multi-maître pour résilience sur plusieurs sites
Automatisation via API REST ou Ansible (ansible-freeipa)
Journalisation et audit : suivre les connexions, modifications et erreurs d’accès
6. FreeIPA face à Active Directory : complémentarité plutôt que concurrence
| Aspect | FreeIPA | Active Directory |
|---|---|---|
| Système d’exploitation | Linux / UNIX | Windows Server |
| Authentification | Kerberos (MIT) | Kerberos (Microsoft) |
| Annuaire | 389 Directory (LDAP) | AD DS |
| PKI | Dogtag (intégré) | AD CS |
| Interface Web | Oui (HTML5) | Non (console RSAT) |
| Interopérabilité | Trusts AD, clients Linux | Trusts AD uniquement |
| Licence | Open source (GPL) | Propriétaire (Microsoft) |
FreeIPA n’a pas vocation à remplacer AD dans un environnement purement Windows, mais il est le complément idéal pour uniformiser la gestion des identités dans des infrastructures hybrides.
7. Conclusion
Avec FreeIPA, les entreprises disposent d’une brique d’identité libre, sécurisée et interopérable, capable de rivaliser avec les solutions propriétaires.
Sa force réside dans son intégration fluide des standards (LDAP, Kerberos, DNS, PKI), son interopérabilité avec Active Directory et sa capacité à fédérer la gestion des accès dans un univers Linux ou mixte.
Dans une ère où la sécurité, la conformité et la maîtrise des identités sont essentielles, FreeIPA s’impose comme une pierre angulaire de la souveraineté numérique open source.



