jueves, 15 de diciembre de 2011

Error despromocionando un DC en Active Directory

Vamos a ver como despromocionar un Controlador de Dominio que no quiere despromocionarse.
La situacion es la siguiente, tenemos varios controladores de dominio, en mi caso 4 y quiero quitar 1,

Ejecutamos el comando repadmin /showrepl y vemos que todo se esta replicando correctamente:




Luego ejecutamos NETDOM QUERY FSMO para ver que servidor tiene los Roles y vemos que efectivamente tambien los tiene el servidor que toca, en nuestro caso el 30:



Ahora procedemos a despromocionar el controlador de dominio 10 pero al intentar despromocionarlo nos da un error:

Nos vamos al visor de eventos y nos encontramos primero el error Eventid 2022 con origen ActiveDirectory_DomainService:


Y la advertencia Eventid 2091 con origen ActiveDirectory_DomainService:
Entonces es cuando te enteras que antiguamente habia un 5º controlador que se elimino y es el que vemos que esta buscando en la Advertencia:

Rol FSMO: CN=Infrastructure,DC=ForestDnsZones,DC=XXXXX,DC=XX,DC=es
DN del servidor FSMO: CN=NTDS Settings\0ADEL:780a84c0-6120-425f-bb6b-d43691364ed6,CN=XXXXX\0ADEL:4c0691a7-d0c0-448c-b7c2-d2cc720e9fe0,CN=Servers,CN=XXX,CN=Sites,CN=Configuration,DC=XXXX,DC=XX,DC=es

Aqui tenemos la causa de nuestros problemas, para corregir esto tendremos que editar nuestro Schema con el Adsiedit, desde el servidor que tiene todos los roles asignados.
Primero nos conectamos al container Infraestructure poniendo CN=Infrastructure, DC=dominio, DC=local



Una vez conectados le damos a boton derecho propiedades y buscamos el atributo fsMORoleOwner y vemos el valor correcto que corresponde, lo editamos y lo copiamos:



Ahora creamos otra conexion en la consola del ADSIEdit a DC=DomainDNSZones, DC=dominio, DC=local



Ahora vamos al container de Infrastructure y buscamos en las propiedades el objeto "fsMORoleOwner" y observamos que apunta a la cuenta de equipo que esta borrada:

CN=NTDS Settings\0ADEL:780a84c0-6120-425f-bb6b-d43691364ed6,CN=XXXXX\0ADEL:4c0691a7-d0c0-448c-b7c2-d2cc720e9fe0,CN=Servers,CN=XXX,CN=Sites,CN=Configuration,DC=XXXX,DC=XX,DC=es




Hacemos click en edit y sustituimos lo que aparece por la ruta que hemos copiado anteriormente del Infrastructure.

Ahora tenemos que crear una nueva conexion en el adsiedit, pero esta vez a DC=ForestDNSZones, DC=dominio, DC=local y realizamos lo mismo exactamente que en el paso anterior.

Una vez realizados estos cambios ya nos deja despromocionar el dominio.

Dejo un link al blog donde encontre la solucion a este problema: 


lunes, 5 de diciembre de 2011

Bloqueo de cuentas Active Directory

En empresas con muchos controladores de dominio y muchos usuarios, nos podemos volver loco cuando se bloquea alguna cuenta de usuario.
Primero identifiquemos que cuentas están bloqueadas, para esto debemos abrir la consola de dsa.msc y dentro de las consultas guardadas o save query y crear una consulta personalizada:

(&(&(objectCategory=Person)(objectClass=User)(lockoutTime>=1))) 

Nos quedaria como vemos en la siguiente imagen.


Con esto nos saldran todos los usuarios bloqueados que hay en el dominio.



Ya tenemos identificadas las cuentas que estan teniendo problemas en el dominio, ahora queremos averiguar que esta pasando, para eso tenemos que descargarnos las "Account Lockout and Management Tools" e instalarlas.
Una vez realizado esto, ejecutamos el lockoutstatus.exe donde podremos ver que pasa con cada usuario, veremos los atributos de su cuenta en cada controlador y la cantidad de intentos fallidos en cada uno, y la hora exacta del intento.


Si queremos identificar desde donde se esta bloqueando la cuenta de usuario, ejecutamos el EventCombMT.exe y en el menu superior, en "searches" seleccionamos la opcion "Builtin Searches" y Account Lockout. Ponemos el nombre de usuario que queremos buscar y nos creara un fichero de log donde nos aparece desde donde se estan bloqueando las cuentas.




Bueno esto ha sido todo, espero que os sea util!

martes, 15 de noviembre de 2011

Deshabilitando Root en Centos 6


Vamos a ver como podemos deshabilitar el root en una Centos 6, ya que es de las pocas distribuciones que te viene con la cuenta de root activada.

Primero que nada accede al servidor como root, una vez dentro seguimos estos pasos:
  • Ejecutamos /usr/sbin/visudo y buscamos la siguiente linea:
                      # %wheel  ALL=(ALL)       ALL
 
            Solo tendremos que quitarle la #, de esta manera todos los usuarios en el grupo wheel pueden utilizar el sudo para ejecutar cualquier comando como si fueran root.
  • Añadimos la cuenta bass al grupo Wheel de la siguiente manera:
                      gpasswd -a bass wheel
                     
                      De esta forma ya podemos ejecutar comandos de root con el usuario bass.

  • Por ultimo solo tenemos que deshabilitar la cuenta de root, que se puede hacer asi:
                      passwd -l root

Lo unico que hemos hecho ha sido cambiar de nombre al root, por lo que si queremos poner alguna limitacion mas podriamos editar el /etc/security/access.conf y añadir lo siguiente al grupo de administradores:

                      -:wheel:ALL EXCEPT LOCAL 192.168.1. 80.69.128.12

De esta manera deniega el login a los usuarios que estan en el grupo Wheel unicamente desde la red 192.168.1.0/24 y desde la ip publica 80.69.128.12

Para que esto funcione hay que editar el fichero /etc/pam.d/sshd lo siguiente:
                      auth       required     pam_access.so
Con esto ya lo tendriamos todo listo!

Referencias:
quickly secure centos 5 by enabling sudo disabling root and limiting access

martes, 8 de noviembre de 2011

Centos 6 IP statica

Voy a dejar un apunte rapido de como fijar una IP Statica en una Centos 6.
Primero que nada nos vamos al directorio /etc/sysconfig/network-scripts/ si no existe creamos el fichero ifcfg-eth0 y ponemos dentro lo siguiente:

DEVICE=eth0
BOOTPROTO=static
DHCPCLASS=
HWADDR=00:33:8A:16:26:21
IPADDR=192.168.0.111
NETMASK=255.255.255.0
ONBOOT=yes


Luego tenemos que editar o crear el fichero /etc/sysconfig/network y le ponemos dentro la puerta de enlace y el nombre del host:

NETWORKING=yes
HOSTNAME=goku

GATEWAY=192.168.0.1

Luego ya solo tenemos que añadir los servidores dns en /etc/resolv.conf y listo:

nameserver 8.8.8.8
nameserver 8.8.4.4


Ya tenemos nuestra centos 6 con ip fija!