Reconstruire un Contrôleur de Domaine crashé

Avertissement

Ne JAMAIS restaurer un contrôleur de domaine à partir d’un snapshot. Ça casserait le système de réplication Samba. Veuillez plutôt utiliser la documentation suivante.

Note

Dans cette documentation, on suppose :

  • Que le contrôleur de domaine crashé s’appelle srvads1.

  • Que le contrôleur de domaine sain s’appelle srvads2.

  • Que le domaine s’appelle mydomain.lan.

Dans les instructions décrites ci-dessous, vous remplacerez mydomain.lan avec votre propre nom de domaine et srvads avec le nom de machine de votre choix.

Attention

Dans cette documentation, on suppose :

  • Vous utilisez un OS sur une base Debian.

  • Pour redemarrer samba sur une RHEL ou dérivé, remplacer « samba-ad-dc » par « samba ».

Si l’AD est un DC primaire (avec le rôle FSMO)

  • Vérifier quel AD est FSMO :

    samba-tool fsmo show doit renvoyer une information comme celle-ci :

    SchemaMasterRole owner: CN=NTDS Settings,CN=srvads1,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=mydomain,DC=lan
    InfrastructureMasterRole owner: CN=NTDS Settings,CN=srvads1,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=mydomain,DC=lan
    RidAllocationMasterRole owner: CN=NTDS Settings,CN=srvads1,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=mydomain,DC=lan
    PdcEmulationMasterRole owner: CN=NTDS Settings,CN=srvads1,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=mydomain,DC=lan
    DomainNamingMasterRole owner: CN=NTDS Settings,CN=srvads1,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=mydomain,DC=lan
    DomainDnsZonesMasterRole owner: CN=NTDS Settings,CN=srvads1,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=mydomain,DC=lan
    ForestDnsZonesMasterRole owner: CN=NTDS Settings,CN=srvads1,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=mydomain,DC=lan
    

    srvads1 est donc le FSMO dans notre exemple.

  • Indiquer a l’AD restant que srvads1 n’existe plus :

    samba-tool domain demote --remove-other-dead-server=srvads1
    systemctl restart samba-ad-dc || systemctl restart samba
    
  • Transférer les rôles vers un autre AD :

    Attention

    Avant d’effectuer le transfert de rôle, il faut s’assurer que le contrôleur de domaine qui est perdu ne sera jamais plus réutilisé.

    samba-tool fsmo transfer --role=all
    

    Indication

    Liste des rôles à acaparer ou à transférer :

    --role=ROLE

    • rid=RidAllocationMasterRole

    • schema=SchemaMasterRole

    • pdc=PdcEmulationMasterRole

    • naming=DomainNamingMasterRole

    • infrastructure=InfrastructureMasterRole

    • domaindns=DomainDnsZonesMasterRole

    • forestdns=ForestDnsZonesMasterRole

    • all=all of the above You must provide an Admin user and password.

  • Si un problème de droits survient :

    samba-tool fsmo transfer --role=all -U administrator
    
  • Vérifier les droits :

    La commande samba-tool fsmo show doit renvoyer :

    SchemaMasterRole owner: CN=NTDS Settings,CN=srvads2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=mydomain,DC=lan
    InfrastructureMasterRole owner: CN=NTDS Settings,CN=srvads2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=mydomain,DC=lan
    RidAllocationMasterRole owner: CN=NTDS Settings,CN=srvads2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=mydomain,DC=lan
    PdcEmulationMasterRole owner: CN=NTDS Settings,CN=srvads2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=mydomain,DC=lan
    DomainNamingMasterRole owner: CN=NTDS Settings,CN=srvads2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=mydomain,DC=lan
    DomainDnsZonesMasterRole owner: CN=NTDS Settings,CN=srvads2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=mydomain,DC=lan
    ForestDnsZonesMasterRole owner: CN=NTDS Settings,CN=srvads2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=mydomain,DC=lan
    
  • Vérifier la base AD avec dbcheck :

    samba-tool dbcheck --cross-ncs --fix
    
  • Notifier le nouveau rôle au contrôleur de domaine :

    samba-tool fsmo seize --role=all
    
  • Affecter tous les rôles du FSMO à un autre contrôleur de domaine ;

Si l’AD est un DC secondaire (sans le rôle FSMO)

  • Recréez une nouvelle machine en suivant la documentation d’installation d’un contrôleur de domaine.

  • Rétrograder srvads1 :

    samba-tool domain demote --remove-other-dead-server=srvads1
    systemctl restart samba-ad-dc
    
  • Reconstruire un contrôleur de domaine srvads1 en suivant la procédure habituelle pour Debian ou la procédure habituelle pour CentOS et le joindre au domaine ;

  • Vérifier que les champs DNS sont bien créés :

    samba_dnsupdate --verbose
    
  • S’il subsiste des failed, utiliser cette méthode qui permet d’outre passer kerberos :

    samba_dnsupdate  --use-samba-tool
    

Valider la nouvelle installation

  • Tester la connexion au DNS à partir de la console DNS Active Directory :

    Console DNS Active Directory

    Console DNS Active Directory

  • Tester la connexion à partir de la console Utilisateurs et Ordinateurs Active Directory :

    Console Active Directory de gestion des comptes Utilisateurs et Machines

    Console Active Directory de gestion des comptes Utilisateurs et Machines

  • Vérifier l’état des réplications avec samba-tool drs showrepl :

    samba-tool drs showrepl