martes, 12 de junio de 2012

Solución al error 0x80004015 en WSUS

Buenos días a todos, escribo este post para redactar con detalle uno de los errores que nos hemos encontrado con frecuencia al intentar implantar el servicio WSUS en la empresa.

El error que nos salía era el 0x80004015, y se producía al iniciar el servicio de "Actualizaciones Automáticas" en los equipos Windows de la red. En un principio, aplicamos la solución que viene en todos los sitios de la web cuando se pone "error 0x80004015 wsus" en Google, y efectivamente el error se quitaba y el servicio se podía iniciar. La solución que se da en todos los sitios es crear un script con las siguientes líneas, o derivados:


SC sdset wuauserv D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)
net start wuauserv
wuauclt.exe /detectnow


Pero el problema persistía, y es que nos dimos cuenta, que al tiempo de estar agregados al WSUS(1 semana normalmente), las máquinas dejaban de comunicarse con el agente del WSUS, y al meternos en los servicios de las máquinas, estas tenían el servicio de "Actualizaciones Automáticas" detenido, y al iniciarlo, nos volvimos a encontrar con el famoso error "0x80004015".

Fue entonces cuando nos dimos cuenta que esa no era la solución correcta, ya que nos libraba del error 24h, en el momento que se apagaban los equipos y se volvían a encender y cargaban la política(GPO) del DC(Controlador de Dominio), la conexión con el agente del WSUS desaparecía, y el servicio de "Actualizaciones Automáticas" se detenía y no dejaba iniciarlo, al no ser que le pasáramos el script. Esta situación no era única en el dominio, le ocurría a todos los equipos agregados al WSUS, entonces decidimos seguir buscando porque esa no era la solución.

Y efectivamente tras unos días buscando por Google, encontramos la solución, en nuestro caso como estamos trabajando bajo un DC(Controlador de Dominio), usamos la siguiente opción:

En la GPO que se le aplica al contenedor que se creó para los equipos del WSUS, había que modificar la siguiente política:

En "Configuración del equipo-Directivas-Configuración de Windows-Configuración de seguridad-Servicios del sistema" había que buscar el servicio "Windows Update", hacer click con el botón derecho del ratón y elegir la opción "Propiedades". Dentro de Propiedades elegir la opción de inicio "Automático".



Una vez seleccionado el inicio de servicio, se tubo que hacer click en "Modificar seguridad..." y agregar el grupo "Usuarios Autentificados" y darle permisos de "Lectura", y de "Iniciar,detener y poner en pausa".



Finalmente, todo siguió funcionando con normalidad. Hay que destacar que los equipos tienen que cargar la GPO para que el "error 0x80004015" deje de salir al iniciar el servicio de "Actualizaciones Automáticas", y como es una directiva de equipo, habría que reiniciar el equipo para que la cogiera, ya que los cambios de equipo se cargan al inicio de sesión del usuario, por lo cuál, una vez aplicado los cambios en la GPO, nos esperamos al día siguiente para seguir trabajando cómodamente. Tras 90 minutos vuelve a pedir la GPO al DC, pero como es una directiva de equipo, habría que reiniciar el equipo para que aplicase los cambios.

Por último decir que el otro modo es editando el registro, para equipos que no están en un DC, y pueden ver más información de este modo en el post original.


miércoles, 23 de mayo de 2012

Instalar paquetes bajo un proxy de red

Actualmente y cada día aún mas, es frecuente navegar por la empresa debajo de un proxy, para limitar el acceso a las paginas que visitan sus trabajadores, el gran inconveniente de dicha configuración de red es el manejo de los repositorios de los equipos Linux, ya que se debe configurar previamente un fichero.

El fichero que se va a configurar es el "/etc/environment", añadiéndole las siguientes lineas:
     # nano /etc/environment
          http_proxy=http://IP:PUERTO/
          https_proxy=https://IP:PUERTO/

Guardamos los cambios y ya se puede instalar paquetes desde repositorios sin ningún problema.

Instalar Wine 1.4 en Ubuntu 10.04

Hoy he intentado instalar la versión 1.4 de Wine en el Ubuntu 10.04, y he tenido que hacerlo de la manera mas "enredosa" ya que no se dispone de la última versión en los repositorios oficiales de Ubuntu, actualmente la última versión disponible en los repositorios es la 1.3.

He de decir, que las ordenes que se van a ejecutar las he realizado como el usuario sudo, para poder instalarlo sin problemas.

Los pasos que hay que realizar son los que se muestran a continuación:

-Para comenzar lo primero que se va hacer es bajar el paquete desde la web oficial.

-Una vez descargado se dispone de un paquete "tar.bz2", así que se pasa a su descompresión, para ello:
     # tar -xjvf wine-1.4.tar.bz2

-Cuando se tiene descomprimido, se dispone del directorio "wine-1.4", en el cuál, se debe situar y una vez dentro del directorio ejecutar el archivo "configure":
     # cd wine-1.4
     # ./configure

-Nos saldrá unos errores, para solucionarlos instalar las siguientes dependencias:
     # aptitude install build-essential xorg-dev flex bison

-Una vez terminada la ejecución del "configure", se pasa a la compilación, para ello:
     # make ==> Dependiendo del hardware del equipo tardará mas o menos, pero no desesperarse(casi 1 hora en mi caso).
     # make install

 -Al iniciar wine (Aplicaciones-Wine-Configurar Wine), pedirá la instalación del paquete "gecko", así que se instala.
     # aptitude install wine-gecko

La conclusión a la que se llega es la de siempre, que mientras se encuentren en los repositorios se tirará de repositorios, ya que es mas fácil instalar y desinstalar los paquetes, pero no siempre vienen en los repositorios las últimas versiones de los paquetes.

lunes, 9 de abril de 2012

Entradas Próximas

Buenos días a todos, ahora mismo estoy haciendo las prácticas en el Hospital de Valme, y se me han asignado junto a otras personas unos proyectos muy interesantes:

-Migrar DC de windows 2000 a windows 2003.

-Implementación de Escritorio XP a Ubuntu 10.04 lts.

-Implementar WSUS sobre 2008 server.

Estos proyectos darán entradas más detalladas posteriormente en mi blog, y que espero que les sea de gran utilidad para muchos de vosotros.

miércoles, 18 de enero de 2012

Instalación de Roller sobre Glassfish3

A continuación, os dejo un tutorial sobre la instalación de Roller en un servidor de aplicaciones, concretamente sobre Glassfish.

martes, 18 de octubre de 2011

Booteo servidor PXE en Debian Squeeze

A continuación, les redacto un breve tutorial sobre el booteo en un servidor PXE, muy útil, cuando queremos tener varias ISO disponibles en dicho servidor.

Antes que nada, aclarar que un servidor PXE(Preboot Execution Environment) es el servidor que trata de encontrar un cliente cualquiera cuando arranca por red, y cuyo servicios que ofrecemos son ISO de sistemas operativos para que arranquen por red.

Para que dicho booteo se pueda ejecutar correctamente, debemos configurar previamente un servidor DHCP(para que le de una ip válida al cliente), y un servidor tftp(
Trivial file transfer Protocol) que no es mas, que un protocolo de transferencia muy simple que se utiliza para transferir pequeños archivos entre ordenadores en una red.

Para empezar, instalamos los paquetes necesarios:
Instalación del servidor DHCP
root@bobesponja:~# aptitude install dhcp3-server

Para configurar el servidor DHCP, editamos el fichero de configuración que se encuentra en el directorio /etc/dhcp/dhcpd.conf
root@bobesponja:~# nano /etc/dhcp/dhcpd.conf


Una vez que tenemos definido los parámetros de configuración del DHCP, debemos especificar en el fichero de configuración /etc/default/isc-dhcp-server la interfaz de red por la cuál, vamos a ofrecer nuestro servicio DHCP, para ello haremos un "ifconfig" previamente, en mi caso la interfaz es la "eth0":
root@bobesponja:~# nano /etc/default/isc-dhcp-server
INTERFACES="eth0"

Para que se ejecuten los cambios, reiniciamos el servicio DHCP:
root@bobesponja:~# /etc/init.d/isc-dhcp-server


Instalación del servidor TFTP
root@bobesponja:~# aptitude install tftpd-hpa

Para configurar el directorio en el cuál, va a buscar el cliente el fichero "pxelinux.0", debemos modificar la variable "TFTP_DIRECTORY" del fichero "tftpd-hpa" del servidor.
root@bobesponja:~# nano /etc/default/tftpd-hpa

Las ISO que usamos en los servidores PXE son ISO especiales, modificadas para arrancar por red, en mi caso he utilizado una ISO de Debian Squeeze y otra de Debian Lenny, para ello:

Me bajo la ISO de Debian Squeeze y la descomprimo:
root@bobesponja:~# wget http://ftp.debian.org/debian/dists/squeeze/main/installer-i386/current/images/netboot/netboot.tar.gz
root@bobesponja:/srv/tftp# tar -xzvf /home/juanlu/netboot.tar.gz

Al descomprimirlo me crea los siguientes archivos y directorios:


Hago lo mismo con la ISO de Debian Lenny:
root@bobesponja:~# wget http://ftp.debian.org/debian/dists/lenny/main/installer-i386/current/images/netboot/netboot.tar.gz
root@bobesponja:/srv/tftp# tar -xzvf /home/juanlu/netboot.tar.gz

Al descomprimirlo me da exactamente los mismos archivos y directorios, en mi caso, solo me interesa el directorio "lenny" que se encuentra dentro del directorio "debian-installer" que es diferente al de Debian Squeeze, ya que el resto de los archivos(pxelinux.0,pxelinux.cfg,....)son iguales.

Una vez descomprimidas las ISO, las muevo o copio(cuestión de gustos), al directorio "/srv/tftp/". De la ISO de Debian Lenny, sólo copio el directorio "lenny" a "/srv/tftp/debian-installer" quedando el directorio "/srv/tftp" con la siguiente estructura:

Si hago un "ls" dentro del directorio "debian-installer" podemos ver los dos directorios distintos "squeeze" y "lenny"

Debemos crear un fichero con extension ".msg" en el cuál, vamos a redactar nuestro menú de booteo, y lo debemos de colocar en el directorio "/srv/tftp/", en mi caso lo he nombrado con el nombre "explicacion.msg", y dicho fichero contiene lo siguiente:

Para que cuando pulse F1, me muestre un submenú de ayuda, he creado otro fichero con extensión ".msg", que en mi caso lo he llamado "explicacion2.msg", que debemos colocarlo en el directorio "/srv/tftp" y que contiene lo siguiente:


Ahora edito el fichero de configuración "default" que se encuentra en el directorio "pxelinux.cfg" con los siguientes parámetros:
root@bobesponja:~# nano /srv/tftp/pxelinux.cfg/default


Donde "DISPLAY" hace referencia al fichero que hace de booteo, en mi caso "explicacion.msg"
"DEFAULT" es el sistema operativo que va arrancar por defecto si no seleccionamos ninguno.
"LABEL" son las etiquetas, es decir, si escribimos la etiqueta "Debian_Lenny", hace lo que viene en kernel, si elegimos la otra etiqueta, pues arranca el otro kernel.
"F1" es para que cuando pulsemos F1, nos salga el menú de ayuda, en mi caso, el fichero es explicacion2.msg.


Antes de iniciar el cliente, debemos reiniciar el servicio TFTP, para ello:
root@bobesponja:~# /etc/init.d/tftpd-hpa

Finalmente para comprobar que esto funciona, arranco una máquina virtual, y selecciono que arranque por red:


Y como muestra final, un cliente arrancando por red, en la cuál, le sale el menú:

Ahora una muestra de la pantalla cuando pulsamos F1:

Por último, agredecer la documentación en inglés de:
http://www.novell.com/communities/node/5777/setting-pxe-boot-server

Saludos

viernes, 7 de octubre de 2011

Gestionar DNS dinámico con Dyndns

Después de tenerme que comprar un dominio para el curso 2ºASIR, nos dieron a elegir CDMON, pero al ver los precios me vine atras, y buscando por Internet me dio por comprarla en 1&1, que me costaba menos de la mitad.

El problema fue cuando me di cuenta, que no podia acceder a mi página web desde fuera porque mi ISP como el de muchas compañias, cambiaba mi IP pública, cada cierto tiempo, o simplemente al apagar y encender el router.

Para solucionar el problema he utilizado Dyndns, para ello hice lo siguiente:
1.-Me cree una cuenta en la página dyndns, y rellene los campos necesarios.

2.-Seguidamente me fui al correo para activar dicha cuenta.

3.-Una vez activada me loguee en la página y me fui a
+My Services
+Dynamic DNS hosts
+Add New Host
En IP Address nos indica la ip publica que tengo ahora mismo, la tendremos que poner en el cuadro correspondiente.
Por último "Add to cart" (No tendremos que pagar porque es gratuito)

4.-Me voy al router(comtrend) y me logueo, seguidamente me dirijo a:
+Advanced Setup
+DNS
+Dynamic DNS
+Add

Ahora entre en el panel de control de mi proveedor de dominios, en mi caso 1&1, y modifiqué lo siguiente:
5.-Seleccioné uno de mis dominios y pinché en la pestaña "DNS"-"Modificar DNS"

Seguidamente pinché en CNAME, y en Alias puse el nombre de la maquina que cree en dyndns.org(goku.dyndns.org)



Después hice lo mismo con los otros subdominios que tengo creados en mi red, y ya podemos apagar el router todas las veces que queramos, que nuestra página web seguirá estando accesible para todos.