martes, 2 de febrero de 2010

Borrar un servidor huérfano del Active Directory

Normalmente, cuando se quiere eliminar un servidor del AD, se utiliza el comando DCPROMO y se siguen los pasos, pero pueden ocurrir varias cosas para que este sistema falle. Bien que el DCPROMO falle y no nos deje eliminarlo, o bien que hemos quitado el servidor sin hacerle previamente el DCPROMO (que era mi caso). Bueno, la historia es que cerramos una oficina y quitamos libremente el servidor de la misma y lo mandamos a Madrid. Sin más eliminé el 'site' y la cuenta del AD, pero ese fue mi error. Cuando quise arreglarlo no pude. Conecté nuevamente el equipo en la red (diferente subnet) y al haber eliminado la cuenta esta máquina ya no estaba en el dominio. Hice un DCPROMO /forceremoval para forzar la eliminación local de la configuración del AD, pero no lo elimina del dominio :-(

¡PANIC!, ¡PANIC!, ALARMA, ERROR, NIEGA QUE HAS SIDO TÚ Y ECHA LA CULPA A OTRO

No nos alarmemos, no pasa nada. Para estos casos existe una utilidad que nos salva la vida, NTDSUTIL

Pasos que hay que seguir:
  • Desde el command prompt (MS-DOS de toda la vida), escribimos ntdsutil y pulsamos [ENTER].
C:\ntdsutil
ntdsutil:
  • Desde Ntdsutil: escribimos metadata cleanup [ENTER].
ntdsutil: metadata cleanup
metadata cleanup:
  • Desde metadata cleanup: escribimos connections [ENTER].
metadata cleanup: connections
server connections:
  • Desde server connections: escribimos connect to server ServerDC [ENTER], 
Este ServerDC es cualquier controlador de dominio que tengamos en la red y que se encargará de darnos la información que le pidamos y de ejecutar los comandos que le indiquemos.

server connections: connect to server serverDC
Binding to serverDC ...
Connected to serverDC using credentials of locally logged on user.
server connections: 
El siguiente paso es para dominios en Windows 2000, pero por si acaso yo lo he seguido. Funciona sin problemas en Windows 2003 R2 ;-)
  • Escribe q (quit) [ENTER]
server connections: q
metadata cleanup:
  • Escribe select operation target [ENTER]
metadata cleanup: Select operation target
select operation target:
  • Escribe list domains [ENTER] (ya me he cansado de tanto 'Escribe'. A partir de ahora lo voy a omitir.
select operation target: list domains
Found 1 domain(s)
0 - DC=MiDominio,DC=local1 - DC=miDominio,DC=local 
select operation target:
  • select domain 0 [ENTER]
Este es el número de dominio que queremos seleccionar. Si solo hay uno la cosa es fácil, el '0' 

select operation target: Select domain 0
No current site
Domain - DC=MiDominio,DC=local
No current server
No current Naming Context
select operation target:
  •  list sites [ENTER]
select operation target: List sites
Found 1 site(s)
0 - CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=MiDominio,DC=local
select operation target:
  • select site 0 [ENTER]
El es el site que queremos seleccionar. Si solo tenemos 1 pues ponemos '0'

select operation target: Select site 0
Site - CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=MiDominio,DC=local
Domain - DC=MiDominio,DC=local
No current server
No current Naming Context
select operation target:
  • list servers in site [ENTER]
select operation target: List servers in site
Found 2 server(s)
0 - CN=serverDC,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=MiDominio,DC=local
1 - CN=serverDC2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=MiDominio,DC=local2 - CN=serverborrar,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=MiDominio,DC=local 
select operation target:
  • select server 2  [ENTER] 
es el servidor que queremos eliminar. en nuestro caso vamos a elegir el tercero, que es el número '2'
 
select operation target: Select server 2
Site - CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=MiDominio,DC=local
Domain - DC=MiDominio,DC=local
Server - CN=SERVERBORRAR,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=Midominio,DC=local
 DSA object - CN=NTDS Settings,CN=SERVERBORRAR,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=MiDominio,DC=local
 DNS host name - serverborrar.MiDominio.local
 Computer object - CN=SERVERBORRAR,OU=Domain Controllers,DC=MiDominio,DC=local
No current Naming Context
select operation target:
  •  quit [ENTER]
select operation target: q
metadata cleanup:
  • remove selected server [ENTER]
Pulsa 'YES' en el mensaje de aviso

metadata cleanup: Remove selected server
"CN=SERVERBORRAR,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=MiDominio,DC=local" removed from server "serverDC"
metadata cleanup:
  •  quit [ENTER]
  •  quit [ENTER]  (Hasta que salgamos al command prompt)
¡PREMIO! ya tenemos el servidor eliminado del AD, ¿seguro?. Pues no del todo. Ahora solo falta eliminarlo de sitios de AD. Para eso hacemos:
  1. Nos vamos a Active Directory Sites and Services y expandimos el site donde se encontraba.
  2. Con el botón derecho del ratón sobre él seleccionamos Delete 
  3. Nos vamos ahora a Active Directory Users and Computers y lo buscamos como equipo del dominio.
  4. Con el botón derecho del ratón sobre él seleccionamos Delete
  5. Nos vamos a DNS  y expandimos la zona de donde se ha eliminado el servidor
  6. Borramos las entradas CNAME en el  _msdcs.root domain del forest zone y  el HOSTNAME. Tal vez tengamos que buscar más entradas que hagan referencia a dicho servidor, pero con cargarnos todo se arregla ;-)
Uhfff, un poco extenso este post, pero al menos espero que le sirva a alguien, je,je,je.





5 comentarios:

Unknown dijo...

saludos de otro come marrones a paletadas. he seguido tus instrucciones, a ver que tal va... ya te comentaré

Unknown dijo...

ok, funcionando sin problemas, gracias

Anónimo dijo...

perfecto, me ha solucionado muchos problemas, ya que ahora estoy haciendo pruebas con el samba4 para crear un servidor de ad secundario de window server 2003 con linux+samba4. Tras varios intentos lo he logrado, ahora tengo cuatro servidores del active directory, tres con windows 2003 r2 y el cuarto con zentyal 3.0(linux + samba4), asi no tengo que desembolsar para la licencia de windows server 2008.

Miguel Ángel Ruiz dijo...

Pues anímate y publica una entrada de cómo montar un servidor secundario de AD bajo linux. Si quieres lo incorporo en este blog como enlace ;-)

Sistemas dijo...

Perfecto mil gracias!