February 21, 2011

0xc00013c5 y eso que significa?!

Alguna vez al revisar bitácoras ha obtenido un mensaje de error como 0xc00013c5, o bien algo como -1073741819?
La mayoría de las veces estos corresponden a códigos de error Win32 lo cuales podemos interpretar con el comando NET.
En un caso como el primero, lo que hacemos es tomar los últimos cuatro caracteres (13c5), abrimos la calculadora y la ponemos en modo científico, seleccionando la opción de hexadecimal (HEX), ingresamos el valor y presionamos la opción de decimal (DEC) para así convertir ese valor. El resultado es 5061, ahora tomamos este valor y lo “traduciremos” con NET HELPMSG :-)

C:\tools
>NET HELPMSG 5061


The cluster node is already up.

Ahora bien, en el Segundo ejemplo tomamos el -1073741819, lo pasamos a HEX, tomamos los últimos 4 caracteres y los convertimos en valores decimales, es como el primer proceso pero al revés. Esto da como resultado el número 5.

C:\tools
>NET HELPMSG 5


Access is denied.

Espero que después de leer esto no ponga esa cara de ~que diantres!?~ cuando obtenga un código de error 0xc000089A!

Hasta pronto.

February 17, 2011

Configurando seguridad del Internet Explorer.

Un amigo me contacto pues tenían una necesidad de agregar ciertos valores sobre los sitios de confianza en la configuración de seguridad del Internet Explorer, eso sí, manteniendo la posibilidad de que los usuarios según su necesidad continuen administrando esto.
Para lograrlo necesitamos hacer unos cambios en el registro, estos los salve como un archivo BAT y los ligue a una política, en la sección de “User Configuration\Windows Settings\Scripts\Logon”.
Acá agrego el dominio y los protocolos en los que confío.

REG ADD "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Domains\sysadmin-cr.com
REG ADD "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Domains\sysadmin-cr.com" /V http /T REG_DWORD /D 0x00000001 /F
REG ADD "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Domains\sysadmin-cr.com" /V https /T REG_DWORD /D 0x00000001 /F
REG ADD "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Domains\sysadmin-cr.com" /V ftp /T REG_DWORD /D 0x00000001 /F

Nótese que le estoy dando un valor de 1 a cada entrada del registro, este significa Intranet. Otros valores podrían ser 2 (Sitios de confianza), 3 (Internet) o bien 4 (Sitios restringidos)
Si gustan ir un poco más allá con la configuración del IE les sugiero mirar este KB: http://support.microsoft.com/kb/182569
Otra forma de hacerlo para quienes tienen un ambiente actualizado es por medio de los GPP http://www.microsoft.com/downloads/en/details.aspx?FamilyID=42E30E3F-6F01-4610-9D6E-F6E0FB7A0790

Saludos!

February 13, 2011

W7 SP1 y RSAT

Como sabemos el próximo Martes 22 será el “frabuyoso” día en que el Service Pack 1 de Windows Server 2008 R2 y Windows 7 estará disponible para descargarlo, hay un pequeño detalle que debemos notar, la versión actual de RSAT no funciona en un sistema con SP1, según informo Microsoft se lanzara una nueva versión de este el próximo Abril. Asi que si usas tu equipo W7 para administrar otros pues yo esperaría un poco antes de actualizarlo.

February 11, 2011

Configurando SNMP

Hace un par de días tuve que hacer una cantidad de cambios en el servicio de SNMP, básicamente necesitaba modificar los derechos de las comunidades, este proceso normalmente requiere que me conecte al snap-in de Services de cada equipo, lo cual pues consume una considerable cantidad de tiempo por ende me di a la tarea de investigar un poco, mi primer opción fueron los comando SC pues estos se utilizan para la configuración de servicios de Windows, pero no funciono.
Para mayor información visite http://support.microsoft.com/kb/324263
La información requerida esta almacenada en HKLM\SYSTEM\CurrentControlSet\Services\SNMP\Parameters\ValidCommunities
Según los derechos asignados usted deberá asignar diferentes valores de la siguiente manera:

Notify 2
Read Only 4
Read Write 8
Read Create 16

Luego agregué un mágico /for y en cuestión de minutos el trabajo estaba listo.
Eh acá unos cuantos ejemplos.
Para crear una entrada con derechos de "Read Create":

reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SNMP\Parameters\ValidCommunities /V testReadCreate /t REG_DWORD /d 0x00000010

Para remover una entrada e inhabilitar la confirmación de borrado:

reg delete HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SNMP\Parameters\ValidCommunities /V dcs /f

Ahora veamos como haría esto con una cantidad mayor de servidores, para lo cual necesito una línea de comandos como la siguiente:

for /f %a in (dclist.txt) do echo %a >>remove.txt && reg delete \\%a\HKLM\SYSTEM\CurrentControlSet\Services\SNMP\Parameters\ValidCommunities /V ghi /f >>remove.txt && net stop SNMP /y && net start SNMP

Veamos esta con más detalle:
Leo el archivo [for /f %a in (dclist.txt)]
Guardo el nombre del equipo que estoy manipulando [echo %a]
Borro la entrada del registro [reg delete \\%a\HKLM\SYSTEM\CurrentControlSet\Services\SNMP\Parameters\ValidCommunities /V ghi /f]
Detengo el servicio [net stop SNMP /y]
Y luego lo vuelvo a iniciar [net start SNMP]
El output de estos comando lo almaceno en un archivo de texto llamado remove.txt.

Con la siguiente serie de comando hago una consulta al Windows Registry para verificar los valores actuales y también reviso que el servicio de SNMP este ejecutándose.

for /f %a in (dclist.txt) do echo %a >>check.txt && reg query \\%a\HKLM\SYSTEM\CurrentControlSet\Services\SNMP\Parameters\ValidCommunities >>check.txt && sc \\%a query SNMP
FINDSTR /I "STATE"

Esto es tan solo una forma más de hacer algo, espero tal como me sirvió a mí y me ahorro tiempo, le sea útil a ustedes!