March 30, 2010

Analizador de conectividad remota

Muchas veces cuando estamos implementando o solucionando problemas con conectividad de Exchange tenemos que buscar algún amigo que revise las cosas “desde afuera”… realmente eso no es necesario pues Microsoft creo una página que nos provee con diferentes escenarios de conectividad y funcionalidad https://www.testexchangeconnectivity.com/
Acá podemos realizar pruebas con ActiveSync, AutoDiscover, WebServices, Outlook AnyWhere y flujo de correo.
Desde luego no vamos a utilizar la cuenta del Domain Admin para realizar las pruebas, por más certificados y demás que la herramienta tiene… créanme, sucede!
Realmente la herramienta está muy completa, fácil de usar y nos da información detallada… por lo cual este es “el sabor del mes” :)

March 23, 2010

Cambios en el proceso de políticas.

Microsoft a cambiado la forma en que se procesan las políticas y scripts de inicio de sesión, esto a partir de Windows Vista/Server 2008 se hace de forma asincrónica.
Esto significa que la computadora ya no espera que el script anterior termine de procesar para iniciar el siguiente.
Para su referencia las llaves de registro involucradas en esto son las siguientes:

Computer Preference
Key: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon
ValueName: RunStartupScriptSync

Computer Policy
Key: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System
ValueName: RunStartupScriptSync

User Preference
Key: HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Winlogon
ValueName: RunLogonScriptSync

Computer Preferences
Key: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon
ValueName: RunLogonScriptSync

User Policy
Key: HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System
ValueName: RunLogonScriptSync

Computer Policy
Key: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System
ValueName: RunLogonScriptSync

Nótese que los scripts de cierre de sesión y apagado no tienen este comportamiento.
Si por alguna razón usted desea revertir este cambio y volver al comportamiento anterior se deberá modificar:

Computer Configuration\Administrative Templates\System\Scripts\Run startup scripts asynchronously = Disabled

March 17, 2010

AD troubleshooting guide.

Con el pasar del tiempo he notado que una de las cosas más difíciles a la hora de buscar soluciones a los problemas es el ~por dónde empezar?~
Entre uno de los tantos blogs que leo encontré este documento que considero les puede ser útil.
http://deuby.com/adtroubleshooting/Active%20Directory%20Troubleshooting.pdf

Buscando cambios en la membresía de un grupo.

Es de cierta forma común que de alguna u otra manera se remuevan miembros de un grupo y luego por alguna razón necesitamos saber quiénes eran los miembros de este (excelente eso de no documentar)… por ende vamos a mirar una forma rápida de averiguar esto. Para lo cual utilizaremos la herramienta repadmin.
Vamos a ejecutar el siguiente comando: repadmin /showobjmeta "nombreServidor" "DN del objeto" (repadmin /showobjmeta GURU-DC007 CN=testGroup,OU=domainGroups,DC=daemonroot,DC=com)
Del output nos importan los siguientes detalles:

Type Attribute Last Mod Time Originating DC Loc.USN Org.USN Ver ======= ============ ============= ================= ======= ======= ===
Distinguished Name =============================

PRESENT member 2010-01-27 20:20:02 daemonrootHQ\GURU-DC015 276715089 277715102 1 CN=ruffo.ee,OU=domainUsers,DC=daemonroot,DC=com
PRESENT member 2010-01-13 19:49:39 daemonrootHQ\GURU-DC007 273577311 337396944 11 CN=porchak.ml,OU=domainUsers,DC=daemonroot,DC=com
PRESENT member 2010-01-13 19:46:32 daemonrootHQ\GURU-DC007 273576011 337394983 11 CN=mcclenaghan.da,OU=domainUsers,DC=daemonroot,DC=com
ABSENT member 2010-01-05 15:58:36 daemonrootHQ\GURU-DC016 271672373 271672373 2 CN=perce.kh,OU=domainUsers,DC=daemonroot,DC=com
ABSENT member 2009-12-22 17:50:00 daemonrootHQ\GURU-DC016 268903788 268903788 6 CN=mcfarland.j,OU=domainUsers,DC=daemonroot,DC=com
PRESENT member 2010-01-13 19:42:08 daemonrootHQ\GURU-DC007 273573792 337391465 11 CN=gryfe.b,OU=domainUsers,DC=daemonroot,DC=com

Aquellas líneas marcadas como “ABSENT” se refieren a un vínculo borrado, un vinculo del miembro hacia el grupo, algo como un tombstone ya que así lo maneja AD.
Entonces acá podemos saber cuáles membresías fueron/están borradas y también la fecha e inclusive el nombre del controlador en que realizo la transacción :)
Para referencia acá esta la última versión del documento de la herramienta repadmin http://www.microsoft.com/downloads/details.aspx?FamilyID=c6054092-ee1e-4b57-b175-5aabde591c5f&displayLang=en
Y para los que ya dieron el salto a Windows Server 2008 pues también pueden usar el grandioso auditpol.exe http://support.microsoft.com/default.aspx/kb/921469?p=1
Saludos!

March 02, 2010

Atributos del objeto USER.

Muchas veces cambiar de la consola de Active Directory Users and Computers a ADSI, ADFind o cual sea nuestra elección se complica más que nada por el hecho de no poder encontrar la información que deseamos, esto pues el nombre con que se presentan los atributos en el ADUC es diferente a su nombre en LDAP.
Razón por la cual me he dedicado a hacer una guía rápida de referencia para los objetos tipo USER, esta no es una guía definitiva ni autoritativa, lo único que pretendo es que les sirva de orientación. Notese que se basa en Windows 2003/Exchange 2003.
Luego hare una sobre Exchange 2007/2010.
Además e agregado el switch respectivo para los comandos DS (cuando aplica, para más información dsadd /user /?).

March 01, 2010

Consola personalizada

Una vez un cliente abrió la consola de comandos y dijo "por acá estuvo daemonRoot"... muy cierto, ya que siempre cambio los parámetros de esta para obtener un mejor rendimiento.
Hoy voy a compartir un poco de como personalizar la consola.
Si damos clic derecho y luego seleccionamos Propiedades lo primero que tendremos es la etiqueta de Opciones, acá si seleccionamos la opción de "Quit Edit Mode" con la cual podremos seleccionar información solo con marcarla y presionar Enter, igualmente de sencillo será pegar información en la consola pues solo se necesitara un clic derecho y listo.



Cuando uno trabaja en consola haciendo por ejemplo consultas a Active Directory veremos que rápidamente llenaremos la memoria temporal de la consola, con lo cual iremos perdiendo la información anterior e inclusive los mismos comandos ejecutados, por lo cual modificar los parámetros del buffer de la consola es muy útil.
Esto lo hacemos en la etiqueta de Layout, donde también podremos modificar el tamaño de la consola.


También es útil tener información como el nombre de la máquina, tiempo, fecha y otros.
La consola de comandos es muy manejable, simplemente creamos una variable del sistema con los parámetros correctos y listo!
Por ejemplo: PROMPT=[%computername%\%username% $D $T GMT-6]$M$_$P$B$G
Este ejemplo nos mostrara el [nombre del computador\usuario fecha hora zona horaria] maquina remota_unidad y ruta.

Como sabemos en informática mucha información nunca es demasiada información!
Algunos otros parámetros con los que podemos jugar son:
$A & (Ampersand)
$B (pipe)
$C ( (Left parenthesis)
$D Current date
$E Escape code (ASCII code 27)
$F ) (Right parenthesis)
$G > (greater-than sign)
$H Backspace (erases previous character)
$L < (less-than sign) $N Current drive $P Current drive and path $Q = (equal sign) $S (space) $T Current time $V Windows version number $_ Carriage return and linefeed $$ $ (dollar sign) $+ zero or more plus sign (+) characters depending upon the depth of the PUSHD directory stack, one character for each level pushed. $M Displays the remote name associated with the current drive letter or the empty string if current drive is not a network drive.
________________________________________________
cls
exit :)