# rm-rf.es | Administración de sistemas

Bitácora personal de un SysAdmin Gnu/Linux, Windows, BSD...

Añadir un Domain Controller Windows Server 2008 en Active Directory 2003


Hoy vamos a ver los pasos necesarios para añadir nuevos controladores de dominio Windows Server 2008 R2 dentro de una granja de servidores Windows 2003 Server que forman un directorio activo (Active Directory).

Lo primero que veremos al intentar añadir un Windows Server 2008 como Domain Controller es que recibimos un error:

ACtive Directory ADPREP 1

El error es suficientemente descriptivo. Básicamente tenemos que hacer uso de la utilidad adprep, disponible en el DVD de Windows Server 2008 R2.

Adprep.exe es una herramienta de línea de comandos que se incluye en el disco de instalación de todas las versiones de Windows Server. Adprep.exe realiza operaciones que se deben completar en un entorno de Active Directory existente antes de que se pueda agregar un controlador de dominio que ejecute dicha versión de Windows Server.

Por ejemplo, si la organización tiene controladores de dominio que ejecutan Windows 2000 Server o Windows Server 2003, antes de que se pueda agregar un nuevo controlador de dominio que ejecuta Windows Server 2008 R2 o actualizar uno de los controladores de dominio existentes a Windows Server 2008 R2, se debe ejecutar Adprep.exe desde la carpeta \Support\Adprep del DVD de instalación de Windows Server 2008 R2 en los controladores de dominio existentes.

Así pues, debemos insertar el DVD de Windows Server 2008 R2 en uno de los controladores de dominio del Active Directory. Por supuesto, es recomendable realizar un Backup con ntbackup del System State (que incluye todo lo referente a Active Directory).

Una vez realizada la copia, ejecutamos el comando adprep en uno de los controladores de dominio del AD. Nos aseguramos de ejecutar la versión de nuestra arquitectura (32 bits, 64 bits, etc). Primero ejecutamos la preparación del Forest. Atentos al aviso sobre la actualización del Service Pack:

E:\support\adprep>adprep.exe /forestprep

ADPREP WARNING:

Before running adprep, all Windows 2000 Active Directory Doma
he forest should be upgraded to Windows 2000 Service Pack 4 (

[User Action]
If ALL your existing Windows 2000 Active Directory Domain Con
requirement, type C and then press ENTER to continue. Otherwi
key and press ENTER to quit.

C
.
..
..
..................................
.............................................................
.............................................................
.............................................................
.............................................................
......
Adprep successfully updated the forest-wide information.

Si todo ha finalizado correctamente, e intentamos añadir ahora el nuevo controlador de dominio Windows Server 2008 recibiremos todavía un error. Además del Forest es necesario preparar también el dominio:

adprep preparacion dominio

Ejecutamos el comando, en este caso recibimos otro error:

E:\support\adprep>adprep.exe /domainprep
Running domainprep ...

Adprep detected that the domain is not in native mode
[Status/Consequence]
Adprep has stopped without making changes.
[User Action]
Configure the domain to run in native mode and re-run domainprep

Es necesario cambiar el dominio a modo nativo (en lugar de mixto en este caso) para poder hacer la preparación del dominio, sin cambiarlo no es posible añadir DC 2008. Para ello hacemos lo siguiente:

  1. Accedemos a “Active Directory Users and computers”
  2. Botón derecho en el dominio y “Raise Domain Functional Level”
  3. Cambiamos el nivel a 2000 Native mode.
  4. Pinchamos en Raise
Raise Functional Level Active Directory

Una vez realizado, volvemos a ejecutar el comando anterior. Se ejecuta correctamente:

E:\support\adprep>adprep.exe /domainprep
Running domainprep ...

Adprep successfully updated the domain-wide information.

The new cross domain planning functionality for Group Policy, RSOP Planning
Mode, requires file system and Active Directory Domain Services permissions
to be updated for existing Group Policy Objects (GPOs). You can enable this
functionality at any time by running "adprep.exe /domainprep /gpprep" on th
Active Directory Domain Controller that holds the infrastructure operations
master role.
This operation will cause all GPOs located in the policies folder of the
SYSVOL to be replicated once between the AD DCs in this domain.
Microsoft recommends reading KB Q324392, particularly if you have a large
number of Group policy Objects.

Esperamos un tiempo a que los cambios repliquen entre todos los controladores de dominio del Active Directory. Después ejecutamos el siguiente comando, que en caso de nos necesario nos avisará y no realizará ninguna acción:

E:\support\adprep>adprep.exe /domainprep /gpprep
Running domainprep ...

Domain-wide information has already been updated.
[Status/Consequence]
Adprep did not attempt to rerun this operation.

Y con esto hemos terminado, si intentamos añadir al Active Directory el Controlador de Dominio Windows 2008 Server no deberíamos tener ningún problema.

Windows Server 2003: no funciona la resolución DNS


Parece ser que es un problema bastante común pero que a mi personalmente me ha dado algún que otro dolor de cabeza. El fallo consiste en que en Windows 2003 Server no funciona la resolución de nombres DNS, por lo que no podemos navegar de forma correcta, realizar actualizaciones, etc.

Pero el fallo realmente está localizado en la instalaciónes realizadas a través de una imagen del sistema, clon, etc. En mi situación el problema se reproducía con una imagen de Altiris HP Deployment Server. Los sintomas son los siguientes:

  • Hay conectividad a redes públicas (ping 8.8.8.8) pero no resolución DNS (ping google.com).
  • La resolución de nombres a través de nslookup funciona correctamente.
  • Tampoco funciona la resolución DNS añadiendo los dominios al fichero hosts (en \Windows\system32\drivers\etc\).

El problema tiene su origen en que al restaurar estas imágenes se borra una entrada del registro de Windows, la culpable de estos errores. El valor del registro se encuentra en:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]

La solución pasa por revisar que exista la entrada “Domain” del tipo REG_SZ:

Windows regedit

Si no existe, creadla. En cuanto la creéis la resolución DNS debería volver a funcionar de forma instantanea, sin necesidad de reinicio. Hay casos en los que también hay que recrear la entrada “NV Domain” o “NV Hostname”, cuyo valor es el hostname de la máquina. En mi caso únicamente fue necesario regenerar la variable “Domain” para que todo funcionara bien.

Cómo instalar ionCube Loader en Windows


Con la instalación de IonCube loader tendremos la posibilidad de visualizar páginas php con contenido codificado con ionCube. La instalación es sumamente sencilla en Windows (en este caso 2003 Server con php 5.2.X):

En primera instancia descargamos la extensión/módulo desde el sitio web de ioncube:

http://www.ioncube.com/loaders.php

Posteriormente, procedemos a descomprimir el fichero, dentro del cual encontraremos las versiones de los módulos para cada versión de PHP y dos scripts php para testear que la instalación se ha realizado correctamente:

ioncube_loader_win_4.1.dll
ioncube_loader_win_4.2.dll
ioncube_loader_win_4.3.dll
ioncube_loader_win_4.4.dll
ioncube_loader_win_5.0.dll
ioncube_loader_win_5.1.dll
ioncube_loader_win_5.2.dll
ioncube-loader-helper.php
ioncube-encoded-file.php

Bien, llegados a este punto debemos copiar el módulo correspondiente a nuestra versión de php en la carpeta donde guardemos todos los módulos de php, normalmente “ext” dentro de la carpeta PHP.

Posteriormente, llamamos al módulo desde el fichero de configuración php.ini añadiendo la siguiente línea, que hace referencia al módulo comentado antes:

zend_extension_ts = "c:\carpeta_php\ext\ioncube_loader_win_5.2.dll"

Guardamos y testeamos con un navegador si la instalación se ha realizado correctamente, ejecutando el script ioncube-encoded-file.php, tendrá que mostrar lo siguiente:

This file has been successfully decoded. ionCube Loaders are correctly installed.

Bloquear direcciones IP en Windows 2003 Server


Al margen de opciones de terceros como software y aplicaciones de Firewall, disponemos de una potente y versátil opción integrada en el propio sistema operativo que nos va a permitir realizar filtrados de IP y rangos completos.

RRAS

Estoy hablando de RRAS (Servicio de enrutamiento y acceso remoto), que permite realizar configuraciones específicas para redes remotas, redes de acceso telefónico, VPN, etc. No voy a entrar en las configuraciones específicas de cada tipo de red, sino a explicaros como tener la opción de bloquear una IP o rango en Windows 2003 Server sin necesitar un software de firewall.

Para ello:

  1. Accedemos a Inicio —> Ejecutar —> MMC
  2. En el menú Archivo, añadimos un nuevo complemento, enrutamiento y acceso remoto.
  3. Una vez aparezca la sección de enrutamiento en la consola, podemos añadir el servidor, en este caso será el servidor local.
  4. Ahora hay que configurarlo y habilitar el enrutamiento. Para ello seguimos el asistente y adecuamos la configuración a la de nuestro servidor/red.
  5. Una vez realizado esto, en la pestaña general de la interfaz de red sobre la que queramos trabajar, podemos acceder a la sección de filtros de entrada y añadir las IPs o rangos que queremos bloquear según los criterios especificados.
  6. Una vez realizadas las configuraciones, arrancamos el “servidor” en la consola para que surtan efecto todas las configuraciones.

IIS: Imposible ejecutar perl o php con Application Pool Isolation


Es posible que tengáis un servidor Windows 2003 server con IIS funcionando correctamente, los websites ejecutan sin problemas php o perl, pero en el momento que aislamos un website (Application Pool Isolation) tanto PERL como PHP dejan de funcionar, dando normalmente el siguiente error:

HTTP Error 403 – Forbidden: Access is denied

Este problema es debido a que cada identidad de application pool (usuario configurado en la aplicación para ejecución de scripts, php, etc) debe ser miembro del grupo IIS_WPG de modo que nos aseguremos que tenga permisos para ejecutar php o perl.

Realizaremos las siguientes modificaciones en las políticas de seguridad para solventar el problema, iremos a:

START > Administrative Tools > Local Security Policy

Seleccionamost Local Policies > User Rights Assignment

En el listado que aparezca, buscamos Adjust memory quotas for a process y pinchamos en las propiedades. Posteriormente Add User or Group > Object Types marcando la casilla de  Groups y OK the Object Types dialogue. Ahora en la ventana Enter the object names to select introduce IIS_WPG y pincha OK.

El mismo proceso debe ser ejecutado en Replace a process level token. Reiniciaremos la máquina y ya debería funcionar correctamente. Todos los miembros de IIS_WPG pueden ejecutar aplicaciones CGI sin problemas.

Vía | Asimo Support