Actualizar ADMX en un Controlador de Dominio Server 2008-2012 para aplicar directivas a Windows 8.1

En todo el tiempo que llevo escribiendo en este blog, notarán que no ha sido muy común de mi parte escribir sobre un tema que se salga de Windows Client, incluyendo solución de problemas, implementación o despliegue. Sin embargo, hay ocasiones o temas que guardan mucha relación con el sistema operativo cliente y que pueden ser importantes, como el hecho de poder configurar correctamente un Servidor Proxy para IE11 o como en este caso, actualizar de forma adecuada los ADMX para que el sistema operativo pueda recibir nuevas directivas desde un Servidor anterior a 2012 R2.

Una definición básica de una Directiva de Grupo, bajo mi casi ignorancia en el tema, sería decir que es una forma gráfica de crear o manipular el Registro de Windows para que el sistema operativo reciba alguna configuración obligatoria de forma centralizada. Por supuesto, no voy más allá porque detrás de eso hay todo un mundo –tanto que hay MVP solo para este tema-.

Ahora, es importante notar que el Editor de Políticas de grupo que ejecutamos local o desde un Controlador de Dominio, lee todas estas plantillas, conocidas normalmente como Plantillas Administrativas (ADMX) desde los archivos .admx situados de forma predeterminada en la ruta: C:WindowsPolicyDefinitions.

El contenido de este archivo, tiene un formato con información relevante mostrada por la plantilla, como el sistema soportado, nombre, descripción, etc. Cabe aclarar que no hay un archivo .admx por cada plantilla, más bien se pueden ver como un tipo de contenedores para varias plantillas de acuerdo a lo que podríamos llamar categoría.

Por ejemplo, la siguiente captura corresponde al contenido del archivo: FileHistory.admx, específicamente, la directiva para deshabilitar o habilitar Historial de Archivos:

image

*Nota: En el caso de File History, solo contiene una directiva posible, es por esto que muestro la etiqueta de <policies> y </policies>, pues normalmente ahí están encerradas todas las directivas dentro de <policy> y </policy>.

En resumidas cuentas, nosotros abrimos el Editor de Directivas de Grupo a través de la Consola de Administración, editamos nuestra GPO, ésta va y busca todas sus plantillas en la ruta C:WindowsPolicyDefinitions, las configura dentro del ambiente gráfico y después la respectiva funcionalidad de las GPO se encarga de replicar esto en todos los equipos y usuarios que se encuentren dentro de los grupos indicados.

*Nota: La forma como se replican las directivas tiene su propia ingeniería como lo mencioné más arriba, y debido a mi excases de conocimiento en su forma de trabajar, no puedo expandir más la explicación.

El proceso no suele representar mayores inconvenientes, hasta que sale una nueva versión o actualización –como el caso de 8.1- para el sistema operativo. Gracias a que las nuevas características requieren ser administrables en su totalidad, se crean más plantillas administrativas y por supuesto, al no estar incluidas originalmente en la versión del servidor, a menos que corresponda a la más actual, no hay cómo gestionar estas directivas por parte del área de IT.

El Central Store

Hay varios métodos que pueden o no ser soportados por Microsoft para poder actualizar las Plantillas Administrativas en el Controlador de Dominio; el más recomendado y productivo y recomendado, se llama Central Store, que no es más que configurar el Editor de Políticas para que no busque las plantillas en la ubicación local donde Windows predeterminadamente lo hace, sino que utilice un recurso compartido donde podemos ir pegando todos los nuevos archivos .admx para que las plantillas se actualicen y funcionen sin problema.

Las nuevas plantillas las podemos tomar de la última versión de Windows, sea Server o Client, pues residen en la ya referenciada carpeta C:WindowsPolicyDefinitions. Aún así, poco tiempo después de que se libera un sistema operativo, también lo hacen las respectivas Plantillas Adminsitrativas para su descarga aparte.

La implementación de un Central Store es relativamente sencilla, pero como se debe tocar el Controlador de Dominio, es necesario tener mucho cuidado y quizá probar en un ambiente controlado antes de.

Requerimientos

– Debemos descargar los ADMX para la última versión del sistema operativo que deseamos soportar y adminsitrar a través de directivas. En este caso, como estamos hablando de Windows 8.1, las descargamos desde aquí:
http://www.microsoft.com/en-us/download/details.aspx?id=41193

Implementación

Antes que nada, cerramos el Administrador de Directivas de Grupo y el Editor si los tenemos abiertos.

De forma predeterminada, tal cual lo muestra la siguiente captura hecha desde un log de Process Monitor, Windows Server, cada que abre una GPO, va a buscar el Central Store en un recurso compartido que se crea desde la instalación del Controlador de Dominio:

image

En este caso, el dominio se llama winside.net, así que la ruta en que debería estar, es dentro de una carpeta llamada PolicyDefinitions también en:

\winside.netSysVolwinside.netPolicies

Noten que como en el caso de la captura, al obtener el NAME NOT FOUND que representa no encontrado, Windows intenta abrir la misma carpeta de forma local accediendo a la ruta:

C:WindowsSYSVOLsysvolwinside.netPoliciesPolicyDefinitions

Es exactamente la misma ruta que la de domain mostrada más abajo.

Si no se encuentra la carpeta o sus archivos .admx, Windows procede a buscarlas en la ubicación predeterminada de C:WindowsPolicyDefinitions y a seguir trabajando con ellas.

Lo que debemos hacer no es más que ayudarle a Windows a encontrar sus plantillas en la ruta compartida, pero antes, es necesario obtener todos los ADMX. Para esto, los descargamos desde el enlace proporcionado en los requerimientos y procedemos a la instalación (Next, Next, Next):

image

*Nota: El mínimo sistema operativo soportado es Windows Server 2008.

Una vez instaladas, abrimos el Explorador de Archivos y navegamos hasta:

C:Program Files (x86)Microsoft Group PolicyWindows 8.1-Windows Server 2012 R2

*Nota: Si tienen Server 2008, y un sistema de 32 bits, debe ser en Program Files y no Program Files (x86).

Hacemos clic derecho en la carpeta PolicyDefinitions y la Copiamos (Copy):

image

Abrimos la ventana de Ejecutar (Windows + R) y digitamos:

\DominioSYSVOLDominioPolicies

Donde \Dominio corresponde al nombre de nuestro dominio, por ejemplo, para este caso que utilizo winside.net, la ruta sería:

\winside.netSYSVOLwinside.netPolicies

image

Hacemos clic derecho en un espacio vacio y pegamos nuestra carpeta PolicyDefinitios:

image

Nos debe quedar junto con unas carpetas con nombre alfanumérico:

image

*Nota: Estas carpetas representan las GPO creadas, incluyendo las predeterminadas.

¡Todo listo! Para saber que nos quedó bien, basta con abrir el Editor de Directivas correspondiente a cualquier GPO creada, expandir el nodo de Policies y asegurarnos que cuando seleccionemos Administrative Templates, se indique que se están obteniendo desde un Central Store:

Pol6

Además de esto, y mucho más importante, debemos ver las nuevas plantillas administrativas correspondiente a la versión implementada. En este caso, todas las de Windows 8.1, por ejemplo:

image

Espero sea de utilidad.

PD: No olviden seguirme en Twitter: https://twitter.com/secalderonr

Saludos.

Checho

Habilitar .NET Framework 3.5 para Windows 8/8.1 de forma automática con MDT 2013

Normalmente, en cada versión de Windows ha sido ya tradicional tener que instalar el .NET Framework que esté más actual; eso se conseguía descargando el instalador desde el sitio web de Microsoft y realizando el despliegue sin problemas.

Desde Windows 8, Microsoft habilitó el .NET Framework como característica, para que el usuario pueda desplegarlo más fácil, pero, predeterminadamente está habilitado el 4.5 y no el 3.5, que actualmente sigue siendo el más necesitado por la mayoría de aplicaciones de escritorio:

image

Por este motivo, nos toca regularmente proceder a habilitarlo, sea de forma manual o desde el asistente para que pueda funcionar todo con normalidad. Aunque no es muy difícil, es un proceso manual y tiende a volverse complejo cuando se están implementando muchas máquinas, a menos que se capture imagen maestra con la característica ya habilitada.

Afortunadamente, existe Microsoft Deployment Toolkit (MDT), solución gratuita lista para brindarnos una solución sencilla a la gran mayoría de problemas contemplados en una implementación de Windows. En este artículo, mostraré cómo podemos habilitar desde una Secuencia de Tareas fácilmente el .NET Framework 3.5 para que esté disponible una vez hayamos desplegado Windows.

*Nota: No entraré en detalle sobre configuración de MDT, ni de sus componentes, pues esto ya lo he documentado en otros artículos:

Implementación básica de Windows 8 con MDT y WDS (Sigue aplicando para 8.1).

Desplegar aplicaciones con Secuencias de Tareas.

Instalación desatendida de Windows 8.1 con MDT.

Requerimientos

Solo necesitamos tener ya implementado Microsoft Deployment Toolkit (MDT) 2013, con el ADK correspondiente a Windows 8.1.

*Nota: En los anteriores artículos se muestra el paso a paso.

Creando y personalizando Secuencia de Tareas

En nuestro equipo técnico donde está instalado MDT, abrimos el Deployment Workbench, expandimos nuestros recurso compartido, hacemos clic derecho en Task Sequences y seleccionamos New Task Sequence:

image

En la página de General Settings, rellenamos los datos correspondientes al Task Sequence ID, nombre y descripción y clic en Next:

image

En la página de Select Template, dejamos Standard Client Task Sequence y clic en Next:

image

En la página de Select OS, escogemos nuestro sistema operativo a implementar y clic en Next:

image

En la página de Specify Product Key, decidimos si indicar un código de producto o no y clic en el botón Next:

image

En la página de OS Settings, especificamos la información referente a registro y clic en el botón Next:

image

En la página de Admin Password, decidimos si dejarle contraseña al administrador o no y clic en Next:

image

En la página de Summary, clic en Next.

En la página de Confirmation, clic en Finish para terminar.

Nos debe quedar la Secuencia de Tareas listada en el nodo de Task Sequences:

image

Modificando las propiedades

Hacemos doble clic sobre la Secuencia de Tareas creada, y en la ventana de Propiedades, nos pasamos a la pestaña Task Sequence:

image

En toda la lista de tareas, seleccionamos el nodo de Custom Tasks, hacemos clic en el botón superior de Add > Roles > Install Roles and Features

image

Quedará agregado debajo del nodo de Custom Tasks. Debemos seleccionarlo, y en el panel derecho, seleccionar Windows 8.1 como sistema operativo, habilitar .NET Framework 3.5 y cambiar el nombre a algo más diciente para nosotros:

Untitled2

Cuando habilitamos la tarea de Install Roles and Features, el asistente de instalación nos la volverá a mostrar y como no la necesitamos, es necesario obviar esta página.

Para esto, hacemos clic derecho en nuestro Deployment Share y seleccionamos Properties:

image

Nos situamos en la pestaña de Rules y debajo de todas las configuraciones que hayamos establecido, ponemos: SkipRoles=YES

image

Aplicamos y aceptamos para guardar los cambios.

Actualizando Deployment Share

Nuestro último paso es hacer clic derecho sobre el Deployment Share que hayamos creado y seleccionar Update Deployment Share:

image

En la página de Options, dejamos la selección predeterminada y clic en Next:

image

En la página de Summary, clic en Next.

En la página de Confirmation, clic en el botón Finish para terminar.

Probando instalación

Esto es todo. Lo que nos queda es implementar Windows 8.1 utilizando MDT y WDS como lo expliqué en el post básico y asegurarnos que el .NET Framework 3.5 y cualquier otra característica que hayamos habilitado esté instalada.

Probablemente veamos el asistente de instalación de MDT indicando la tarea:

image

Después de terminado, podremos verlo en Activar o desactivar características de Windows:

image

Espero sea de utilidad.

Saludos.

Checho

El dilema con la configuración del Servidor Proxy para Internet Explorer 10/11, las teclas F5-F8 y su solución

Hace unos días me encontraba visitando una empresa local, con el objetivo de revisar algunos inconvenientes y dudas que tenían con la migración a Windows 8.1; uno de los que más me llamó la atención y que en definitiva fue la razón para escribir este post, fue el problema que estaban teniendo para que la configuración del Proxy se estableciera correctamente en Windows 8/8.1, es decir, para Internet Explorer 10 y 11.

Recordemos que un servidor proxy, en su definición básica, sirve como un intermediario entre el equipo y la conexión a internet. Normalmente, y en conjunto con algún tipo de firewall o protección adicional, se utiliza como barrera para el tráfico de internet bloqueando sitios que no son confiables o deseados.

Como no es algo nuevo, la configuración del proxy ha existido por años para hacerse de forma manual desde las Opciones de Internet Explorer, pestaña Conexiones, botón de Configuración de LAN:

image

Así mismo, a través de las Directivas de Preferencias de Grupo por el lado del Controlador de Dominio, para que todos los equipos unidos al dominio y que estén tomando la determinada plantilla se les aplique la misma configuración.

image

El problema

Una vez la empresa empezó a probar sus directivas en los equipos Windows 8/8.1, que vienen con Internet Explorer 10 y 11 respectivamente, se dio cuenta que las configuraciones del proxy no se estaban tomando, sin importar cómo se actualizaran desde el cliente; es decir, reiniciando o ejecutando manualmente el Gpupdate /Force.

Aunque Microsoft esté impulsando ahora todo lo que es administración centralizada de IE, utilizando el Internet Explorer Administration Kit (IEAK), la configuración desde las Preferencias aún están soportadas y de hecho documentadas para este caso en una KB oficial: http://support.microsoft.com/kb/2898604/en

Recurrir entonces a cambios en el Registro, o implementación de Scripts puede llegar a ser sencillo, pero no necesariamente recomendado y productivo para cada problema.

La causa

Por lo general, los métodos brindados por las KB de Microsoft son muy efectivos, y no es muy común encontrar fallos muy grandes o datos faltantes, pero era la única opción que tenía en este caso. Había que encontrar qué era lo que no estaba documentado.

De tanto andar, me encontré por fin este artículo del Equipo de Producto encargado de las Directivas de Grupo (¡Los que saben del asunto!):
http://blogs.technet.com/b/grouppolicy/archive/2008/10/13/red-green-gp-preferences-doesn-t-work-even-though-the-policy-applied-and-after-gpupdate-force.aspx

Si lo ven, no habla necesariamente de las configuraciones del proxy, pero sí de una característica propia de las Preferencias de Directivas de Grupo, que en explicación muy básica, hace referencia a que todo lo que aparezca con una línea puntiaguda roja, o círculo también rojo dentro de las Directivas, será completamente ignorado por la GPO y no lo forzará en los equipos de destino. Por el contrario, si la configuración aparece con línea o círculo verde, será capturada por la GPO y aplicada a todos los equipos.

Para entender mejor la anterior explicación, y continuar con el objetivo del post, basta con crear precísamente una nueva preferencia de Internet Settings, ir a la pestaña de Conexiones y botón Configuración de LAN. Noten que los dos colores aparecen:

Untitled

En este ejemplo, si se selecciona que se tomen automaticamente todas las configuraciones, y que se use un servidor Proxy, los equipos clientes lo aplicarán, pero la dirección del proxy será ignorada completamente.

En este orden de ideas, Internet Explorer 10 y 11 nunca recibirán la dirección adecuada del proxy desde las Directivas de Grupo.

La solución

Afortunadamente, esta característica de las Preferencias de Directivas de Grupo es completamente personalizable, y basta con utilizar alguna tecla desde F5 hasta F8.

Si presionamos la tecla F5, todas las configuraciones que estén en la ventana actual se volverán verdes y por ende se tomarán.

Si presionamos F6, solo la personalización donde estemos situados cambiará a verde y se tomará, así el resto esté en rojo.

Si presionamos F7, sucede lo mismo que con F6, pero no se cambiará a verde sino a color rojo; es decir, será ignorada.

Si presionamos F8, todas las configuraciones y personalizaciones serán ignoradas cambiando a color rojo.

Para solucionar el problema de que IE10/11 no tomen la configuración del proxy, o específicamente su dirección o exepciones, tendríamos que hacer lo siguiente:

Crear la nueva preferencia, navegando hasta:

User ConfigurationPreferencesControl Panel SettingsInternet Settings

Clic derecho en Internet Settings > New > Internet Explorer 10

image

En la ventana de propiedades, navegar hasta la pestaña de Connections, y clic en el botón de LAN Settings.

Habilitar Proxy Server, situarnos con el puntero en el cuadro de texto de Address y presionar la tecla F6 para que cambie de línea puntiaguda roja a línea verde. Después de esto, símplemente hacer las configuraciones según preferencia:

image

Aceptar todo y listo. Nuestro equipo con Internet Explorer 10 u 11 debe tomar – después de reiniciar o ejecutar Gpupdate- todas las configuraciones del proxy sin problemas.