Google Instalando/Actualizando Java RunTime via GPO | EL TIPO DE INFORMATICA

lunes, 20 de agosto de 2012

Instalando/Actualizando Java RunTime via GPO

Como bien escribió Sergio de los Santos en uno de los artículos de "Una al Día" de Hispasec, "si no actualizas Java, estas infectado". Por lo que en nuestra red debemos primeramente mantener Java actualizado, y segundo minimizar su instalación, o sea, instalarlo únicamente en los equipos que estrictamente lo necesiten. En muchos casos no sera necesario tener esta aplicacion instalada, pero seguro habrán algunos casos que lo necesiten. Para seas computadoras en las que es necesario tenerlo instalado podemos crear una Política de Grupo o "GPO" que se encargue de realizar la instalación y que solo se aplique a estos equipos. Cuando salga una actualizacion de Java, solo tenemos que actualizar nuestra GPO con el nuevo paquete de instalación. Y esa es la idea de este Post, aquí veremos como crear la política y como aplicarla a un grupo especifico de computadoras.


Como seguro saben, para instalar un programa mediante una GPO necesitamos tener la instalación de este en un paquete ".MSI". Pero cuando vamos a la pagina de Java (en este link) para descargar la ultima versión, vemos que lo que nos ofrecen es un archivo ".EXE" de instalación. Por ejemplo, a la fecha de este post la versión mas reciente (de la rama 6) es la 6 Update 33, el archivo que se descarga se llama "jre.6u33-windows.exe". Lo bueno es que este archivo trae empaquetado la instalación del programa y un instalador en formato de Windows Installer (.MSI), y al hacer doble clic encima de este descomprime estos archivos en una carpeta temporal y luego ejecuta desde ahi el instalador. Para crear nuestra política de grupo  solo tenemos que copiar estos archivos una vez han sido descomprimidos a una carpeta compartida a la cual las computadoras a las que se les aplicara la GPO tengan acceso. En Windows 7 estos archivos se descomprimen en la ruta "C:\Users\nombre-de-usuario\AppData\LocalLow\Sun\Java\". Al hacer doble clic encima el ejecutable que descargamos se abrirá la ventana de bienvenida siguiente, en ese momento podemos ir a la carpeta que les mencione y encontraremos la carpeta con los archivos necesarios:


Instalacion_Java
Al entrar a esta carpeta verán que se encuentran 2 archivos: un archivo de instalación "jre1.6.0_33.msi" y un archivo conteniendo los demás archivos necesarios llamado "Data1.cab". Copiaremos entonces la carpeta llamada "jre1.6.0_33", para el caso de la versión que estamos trabajando en este ejemplo, y la compartiremos en la red. Ya teniendo los archivos de instalación necesarios pasamos entonces a crear la GPO.

Para la creación de la GPO, en Windows 2008 abrimos la consola "Group Policy Management" y hacemos clic derecho encima del OU donde se encuentren las computadoras a las cuales aplicara la política. Se podría también crear la GPO a nivel del Dominio y luego configurar un filtro para que solo se aplique a un grupo especifico de Computadoras, de esta manera se podría aplicar la política a computadoras de diferentes OU. Para este ejemplo, crearemos un grupo llamado "Java_Computers" y haremos miembro de este grupo las computadoras a las que aplicaremos la política. La carpeta compartida que contiene el archivo "MSI" debe permitir el acceso a este grupo,  claro esta también los archivos dentro de esta. En este ejemplo crearemos la política a nivel de todo el dominio y mas adelante filtraremos en base al grupo "Java_Computers". Al hacer clic derecho encima del dominio, seleccionamos la opción "Create a GPO in this domain, and Link it here..." como se muestra a continuación:


Creacion GPO

Llamaremos a esta política "JavaInstall", haremos entonces clic derecho encima de nuestra nueva política y seleccionamos "Edit". En la ventana de edicion de la politica nos movemos a "Computer Configuration --> Policies --> Software Settings" y en "Software Installation" hacemos clic derecho, nos ponemos encima de "New" y hacemos clic en "Package":

Instalacion de Paquetes via GPO

Se abrirá entonces una ventana donde tenemos que indicar donde se encuentra el paquete de instalación a utilizar en esta Política, asi que escribiremos en la sección "File Name" la ruta completa al archivo que compartimos en la red. En el caso de este este ejemplo, los archivos de instalación se encuentran en "\\VBOXSRV\APPS\jre1.6.0_33\jre1.6.0_33.msi". Una vez hemos escrito la ruta hacemos clic en "Open"

Instalacion de paquetes via GPO

Luego seleccionamos "Assigned" en la ventana de dialogo que aparecerá a continuación y hacemos clic en "OK", al concluir esta parte se vera entonces la política de instalación de software de esta manera:

GPO

Aquí podemos cerrar esta ventana y con esto hemos creado la GPO, ahora como la aplicamos al dominio, filtraremos ahora la Política para que solo se aplique a las computadoras que pertenezcan al grupo "Java_Computers". Para esto, en la consola "Group Policy Management", haremos clic encima de la política que acabamos de crear (JavaInstall), en haremos clic en el tab "Delegation", aquí entonces haremos clic en "Advanced", como se muestra a continuación:

Asignacion permisos a GPO

En esta ventana se nos mostrara los permisos de la Política que hemos creado, eliminaremos el grupo "Authenticated Users" y agregaremos el grupo "Java_Computers" haciendo clic en "Add". Luego, estando encima de "Java_Computers" seleccionaremos "Allow" en la seccion "Apply group policy". De esta manera, solo las computadoras que pertenezcan a este grupo aplicaran esta política.

Asignacion Permisos GPO

Hacemos clic en "OK" y cerramos la consola "Group Policy Management". Con esto ya hemos creado nuestra política y se aplicara a las computadoras que especificamos. Deben tener en cuenta que una vez hayan agregado la cuenta del dominio de las computadoras al grupo "Java_Computers" deben reiniciarlas para que se aplique su membresia al grupo. Otra cosa a tener en cuenta son los permisos de acceso a la carpeta donde se encuentre la instalación de Java, ya que la computadora debe poder acceder a estos archivos para iniciar la instalación, recuerden que no es el permiso del usuario, ya que la instalación iniciara antes de que se inserten las credenciales del usuario en el sistema, sino la cuenta de la computadora la que debe tener acceso al Share. En caso de que la instalación no se ejecute, pueden dirigirse al "Security Log" en Windows Events y revisar los errores, generalmente los errores son de acceso a los archivos de instalación.

2 comentarios:

  1. ¿Y cómo controla el dominio las máquinas en las que ya se ha instalado? ¿O acaso se instalará el paquete cada vez que se reinicien las máquinas pertenecientes al grupo Java_Computer?

    ResponderEliminar
  2. Muchas gracias por este documento me ayudo muchisimo a organizar un deploy, una consulta! que tal el trafico de red durante una instalacion masiva? 100 o 200 terminales al mismo tiempo, presenta problemas? ya que el msi pesa 52MB y en algunos nodos el enlace es de apenas 2 mb

    ResponderEliminar