jueves, 8 de octubre de 2009

Problema con la Web Interface

Quizás se crucen con este problema que me sucedió varias veces, pero recién hoy caí y me acordé de documentarlo.
El problema comienza con un mensaje en la Web Interface que dice así “Plublished applications do not exist anymore on the server or user does have access to them”, cuando hacen click sobre la aplicación a ejecutar. Si inmediatamente hacen click con el botón derecho del mouse para hacer un download del archivo launch.ica (save target as) y resulta que les da el error “Internet Explorer Cannot Download Launcher.aspx from servername.domainname.com…”. Van al Event Viewer del servidor de Citrix y van a ver un error en el Log de Aplication con el origen “Web Interface at c:\inetpub\wwwroot\Citrix\XenApp (o AccessPlatform)”. El error no tiene Id de suceso, pero su contenido dice algo asi “ The Citrix servers reported that the alternate address cannot be found. This was reported from the XML Service at address “ http://servername:xmlport [xom.citrix.xml.NFuseProtocol.RequestAddress]”.

Ok, NO TOQUEN NADA! paren el servicio Citrix IMA con el cual también se parará el servicio SMA, abran un CMD y escriban “dsmaint RECREATELHC”. Una vez corra este comando satisfactoriamente, reinician el servicio SMA (el IMA iniciará automáticamente)

“dsmaint” se ejecuta en servidores de la comunidad para llevar a cabo tareas de mantenimiento del almacén de datos, como copia de seguridad del mismo, su migración a un nuevo servidor y su compactación o la compactación de la base de datos de distribución por streaming sin conexión. No todos los comandos de dsmaint se pueden usar con todos los tipos de base de datos.

PERO en este caso usamos el modificador RECREATELHC para recrear la base de datos de la memoria caché del host local.

Si no funciona a la primera vez corremos dsmaint /RECOVER para restablecer una base de datos de Access al último estado óptimo registrado. Este comando debe ejecutarse en el servidor directo mientras el servicio IMA no esté en ejecución también.

Exitos!

lunes, 21 de septiembre de 2009

Windows 7 Search Connector para Citrix Knowledgebase

Una de las nuevas y exclusivas ventajas del nuevo Windows 7 es la de usar conectores de búsqueda o search connectors. Los usuarios tienen la posibilidad de hacer una busqueda en repositorios remotos en la red local o en la web usando Windows Explorer. Christian Gehring de Citrix, creó un conector para buscar contenido en la Knowledgebase de Citrix.com.

Primero bajen el CitrixKB CitrixKB.zip search Connector y agréguen http://support.citrix.com/ y http://api.bing.com/ a los trusted sites en Internet Explorer. (Tools -> Internet Options -> Security) y listo ahora pueden iniciar el Windows Explorer, click Citrix en el panel de la izquierda (favoritos) y colocar un search string. Veran algo como muestro abajo.


Exitos!

lunes, 14 de septiembre de 2009

Poner el Servidor de Terminal en Install Mode

Muchas pero muchas veces deseamos agregar aplicaciones en un servidor de Terminal y éste no nos deja porque no tenemos el server en install mode, buscamos por todos lados y no hallamos de que se trata, se los explico cortito:

Para cambiar servicios de Terminal Server a install mode:

Abrimos un CMD.
En el símbolo del sistema, escribimos change user /install y, a continuación, ENTER. Aparece el mensaje siguiente:
Sesión de usuario está preparado para instalar aplicaciones.
Escribimos Exit.
Y listo, a agregar o quitar los programas que desee.


Para volver al execute mode:

Abrimos un CMD.
En el símbolo del sistema, escribimos change user /execute y, a continuación, ENTER.
Aparece el mensaje siguiente:
Sesión de usuario está preparado para ejecutar aplicaciones

Escribimos Exit.

Eso es todo.

jueves, 10 de septiembre de 2009

No se puede establecer una impresora predeterminada

Usualmente sucede que luego de conectarse al Presentation Server, podemos ver la o las auto-created or auto-connected printer o printers en la sesión. PERO la impresora por default de la máquina cliente no esta establecida como default printer para esa sesión. Además, cuando intentamos colocarla como default, la operación falla.

Este problema ocurre cuando el perfil de su sesión de terminal server esta corrupto y hace que se pierda la siguiente subclave de la registry:

HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows

Para resolver el problema sigan estos pasos:

1. Localicen la carpeta Default User folder en un server que ande bien.

• Obvio que este server tiene que tener la misma version de sistema operativo que el server de Terminal donde se rompió el perfil .
• Por default la carpeta Default User se encuentra en este path: \Documents and Settings\Default User
2.Copien la carpeta Default User desde el server que anda bien al siguiente path en el servidor de terminal donde se dañó el perfil:
\Documents and Settings
Nota: Cuando les pida sobreescribir la carpeta Default User , click en Yes to All.
3. Borren el perfil del usuario problemático en el servidor de Terminal (saben como no? click derecho sobre My Computer... etc.etc.etc) Esto va a generar un nuevo perfil basado en la carpeta default user que copiamos en el paso 2.
4. Validense en nuevamete y todo listo!.

Exito!

martes, 11 de agosto de 2009

Ejectuar Scripts de Logon para sesiones en Citrix y no en sesiones Locales

Un problema muy común es que los usuarios que corren una aplicación desde su escritorio que se encuentra publicada en un servidor Citrix o Terminal Server, al validarse en Active Directory corren nuevamente los script de logon y en ciertas oportunidades la validación se traba allí, llegando a producir excesivos tiempos para ingresar o trabándose simplemente.
Esto lo podemos solucionar creando un script con unas líneas adicionales que permite distinguir el inicio de sesión que se ejecuta y correr o no los comandos correspondientes para esa sesión.
De esta manera logramos que los usuarios ejecuten cierto script cuando están en Citrix pero no cuando están en local, o al revés, cuando están en local que ejecuten cierto script, pero cuando están en Citrix o Terminal Services no.

El script se compondría asi:

-------------------------------------------------------------------------------------------

@ echo off

if %sessionname%==Console (GOTO :Consola) else (GOTO :Citrix)

:Consola
echo Esta localmente, ni en TS ni en Citrix, así que ejecutamos lo que deseamos que se ejecute local.
GOTO:Fin

:Citrix
echo Esta en TS o en Citrix, así que ejecutamos lo que deseamos que se ejecute en remoto.
GOTO:Fin


:Fin

---------------------------------------------------------------------------------------------

lunes, 13 de julio de 2009

Ocultar la barra de idiomas en Citrix XenApp

Amigos, hoy reaparezco con un post que tenia dando vueltas pero nunca me daba tiempo para concretarlo, es una caracteristica que si bien no se le lleva mucho el apunte, suele ser bastante incómoda trabajar con ella y sobre todo por que suele dar bastantes problemas en las sesiones de los usuarios. En este documento podremos ver cómo ocultar la barra de idiomas y que no les salga a los usuarios cuando abran sus aplicaciones vía Citrix.



Si nos sale siempre la barra de idiomas encima de las aplicaciones Citrix cuando las ejecutan los usuarios y queremos ocultarla, simplemente se modifica una entrada en el registro de cada servidor Citrix XenApp o Citrix Presentation Server y listo.


Creamos una entrada en “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix\wfshell\TWI” del tipo DWORD con el nombre “LangBarDeminimizerFlags” y valor “1″.
Reiniciamos cada servidor y finalizado el trabajo.

lunes, 15 de junio de 2009

Problemas con el Cliente JDEdwards.

Luego de haber estado varios días out of office, trabajando un proyecto en uno de los servidores de Citrix más extremos que instalé (extremos porque el mismo se encontraba en una mina situada casi a 4mil metros sobre el nivel del mar). Como todo lo extremo tiene lo suyo, nos encontramos detenidos en un problema con el deployment del cliente de JDEdwards. Al buscar la solucion del error en blogs, soporte de JDE, o soporte de Citrix, no encontramos absolutamente NADA.
Fundamentalmente el error comienza apareciendo como un error de conexión del cliente JDE donde no pueden acceder al los entornos correctos, para luego, accediendo a la aplicación cliente a través de Citrix , da un error que enuncia “OBSOLETE JDE.INI”.
Luego de utilizar la herramienta FileMon, pudimos observar que al ejecutarse el cliente JDE trata de leer el archivo de configuración JDE.INI “particular” del usuario que esta accediendo al programa.
Ahora bien, cuando instalamos un nuevo servidor de Citrix y publicamos el cliente de JDE, debemos verificar, que en el perfil del usuario no exista un jde.ini, ni tampoco exista en el directorio particular del usuario (para verificar el directorio particular , fíjense en las propiedades de las cuentas en Active Directory) . Si allí existe un jde.ini anterior, viejo, bórrenlo. De esta manera el cliente vuelve a generar un jde.ini particular para ese usuario y todo funciona correctamente.
Pero no solo esto es necesario para el buen funcionamiento a través de Citrix o Terminal Services de este cliente, sino que también debemos verificar que:
- Los usuarios que ejecuten el Cliente JDE deben pertenecer al Grupo Local, Server Operators.
- Para que lo anterior no sea peligroso, deben ver que esté seleccionada la opción, en el protocolo ICA y RDP (Terminal Service Configuration Tool) en el tab ICA Settings, Initial Programa ----> Non administrators only launch published applications.
- Deben dar permisos de Full Control al grupo Server Ops. en el directorio donde está instalado el cliente.
- Deben dar permisos de Full Control al grupo Server Ops. en todos los archivos *jde*.* que se crean en el raíz del server.
Eso es todo, funciona perfectamente.

viernes, 29 de mayo de 2009

Gestión de los perfiles de usuarios en entornos Citrix / Terminal Server

La gestión de los perfiles de usuarios en entornos Citrix / Terminal Server suele ser comunmente un problema o un tema al que hay que prestarle especial atención (demasiada a veces)
En este articulo pretendo resumir las mejores practicas para su gestión así como una herramienta gratuita de Citrix llamada Citrix User Profile Manager
Una buena administración de perfiles de usuario es fundamental para el buen funcionamiento de una infraestructura Citrix, al igual que pasa en un entorno de dominio, cuando un usuario inicia sesión por primera vez en un farm Citrix, su propio perfil de usuario terminal server se crea por defecto en ese servidor en la ruta c:\documents and settings. En esta ubicación se guarda toda su configuración personal de usuario Terminal server (escritorio, mis documentos, datos de programa..) , cuando ese mismo usuario inicia sesión en otro servidor de la granja su perfil se vuelve a crear y es normal encontrarte con llamaditos como: "Hola... mi Outlook esta desconfigurado", "Hola, resulta que mis carpetas guardadas en Mis documentos desaparecieron", etc, etc, etc…

Por tanto algo que es básico y necesario en cualquier infraestructura de Citrix/Terminal server es al menos seguir algunas de las siguientes pautas:
- Los perfiles de usuario han de ser lo más simples y livianos posible.
Algo básico y necesario es que la ubicación de las carpetas Mis documentos y Escritorio estén re direccionadas a una ubicación centralizada. Limitar por políticas el tamaño de los perfiles (controlar qué se guarda o no en el perfil, eliminar los archivos temporales al salir..)
- Los perfiles de termianl server han de estar alojados en una ubicación centralizada
Para asegurarnos que un usuario inicia sesión con su perfil, este ha de estar en una ubicación centralizada y no en la unidad local de los servidores. Esto lo podemos gestionar mediante políticas de dominio.
-Evitar que se guarden datos en las unidades locales de los servidores
Una práctica recomendada es ocultar las unidades locales del servidor así como acceso al escritorio para evitar que se guarde nada en local.
-Elegir un tipo de perfil adecuado (Roaming, Mandatory o Hybrid).
Si queremos que se guarden o no configuraciones de usuario y cómo queremos que se haga.
Siguiendo estas pautas conseguiremos que los inicios de sesión de los usuarios sean más rapidos y sobre todo que no vayan regando información por los servidores de nuestra organización.

Ok ¿ Y cómo hacer todo esto? Existen muchas formas; en primera instancia (y fundamental)tienen que estar familiarizados con las políticas de usuario en entornos de dominio.
Para aprender algo al respecto recomiendo este link: http://freyes.svetlian.com/GPOS/GPOS.htm
Por otro lado debemos estar familiarizados con los tipos de perfiles de usuario en terminal server y su diferencia con los perfiles de usuario de dominio, miren :http://technet.microsoft.com/en-us/library/cc776120.aspx
La opción de hacerlo con políticas de Active Diertory es de las más usadas actualmente, aunque existe software de terceros para ayudarnos en la implantación, entre ellos cabe destacar uno que funciona muy bien y encima es gratis: Citrix User Profile Manager
Este software nos ayuda en la implementación de políticas de usuario y entre otras opciones nos ayuda a optimizar la carga del perfil de usuario, así como controlar su tamaño. El funcionamiento de esta aplicación se basa en la utilización de un perfil mandatorio base para todos los usuarios y en almacenar por otro lado las configuraciones especificas de cada usuario.
Si quieren seguir profundizando en el tema den un vistazo por:
Citrix User Profile Manager:http://www.citrix.com/site/jumpPage.asp?pageID=1453077
User Profile Best Practices for MetaFrame Presentation Server : http://support.citrix.com/article/CTX110351

lunes, 18 de mayo de 2009

Clásico error 500 de Licencias Xenapp

Cuando empecé a hacer deployment de XenApp 5.0 y XenApp .4.5 para Win2k3 (teóricamente la nueva versión 5.0 diferente a la que se instala sobre Win2k8) , lo primero que me encontré es con este bendito error.

Citrix Presentation Server License acquisition error (500): Unable to acquire a license from (Servername) server.

Nadie se conectaba y el server al reinciarlo daba el error antes que nada.

Muy simple solución para esto, procuren descargar la última version del Citrix License Server (11.6.1) desde este link http://www.citrix.com/English/ss/downloads/details.asp?downloadId=1688507&productId=186.

Error configurando Terminal Services en W2008

Al iniciar la configuración de Terminal Services en Windows 2008, pueden recibir los siguientes mensajes "The settings for this terminal server cannot be retrieved", o "Unable to complete operation: Not found".
No entren en pánico, este error generalmente esta causado porque se corrompe el repositorio WMI. Utilizando el comando winmgmt se puede resolver de la siguiente manera:

winmgmt /salvagerepository o winmgmt /resetrepository

Si algo se complica pueden checkear el comando winmgmt en MSDN.

martes, 12 de mayo de 2009

Instalación del cliente Citrix en Linux

Aplicaciones Office 2007 en máquinas supuestamente obsoletas?
Solución metemos Linux y le instalamos el cliente Citrix para Linux...configuramos y listo.... Office 2007 sobre Linux soportados por un computador que estabamos a punto a desechar.
La instalación de un cliente ICA en Linux es un poco más complicada que next next next, dado que surgen algunos problemas de SSL y falta de librerías (cosa que no sucede comunmente en Windows :) ) A continuación hay una descripción de una instalación tipica basada en la ya conocida distribución Ubuntu.
Lo primero que debemos de hacer es bajar el cliente de Citrix para Linux desde la página de Citrix o lo sacamos del CD de Componentes de instalación del producto (ambos estan igual de actualizados jajajajaja).
Si quieren hacer download van a este link:
http://www.citrix.com/English/SS/downloads/details.asp?dID=2755&downloadID=3323&pID=186
Aquí debemos seleccionar la descarga del archivo en formato tar.gz.
Una vez que tengan el archivo , lo descomprimen ($sudo tar -zxvf archivo.tar.gz)
Una vez descomprimido, entran en la carpeta descomprimida y ejecutan el comando ./setupwfc
En esta instancia nos vamos a encontrar con que no podemos ejecutar aplicaciones Citrix debido aL error SSL 6, este error es referente al certificado raíz Equifax Secure Global eBusiness CA-1 , certificado raÍz que no viene incluido en la instalación del cliente ICA.
Podemos bajar este certificado de este web:
http://www.geotrust.com/resources/root-certificates/index.html
Y lo copiamos en la carpeta :
/usr/lib/ICAClient/keystore/cacerts/
Una vez completados todos estos pasos podremos ejecutar aplicaciones Citrix, con el cliente ICA para web.
Ahora bien, si queremos tener configurado tambien nuestro cliente PNA veremos que el configurador de Program Neighborhood Agent no responde, no se ejecuta, no anda! Para hacerlo funcionar y permitirnos configurar nuestro cliente correctamente debemos de instalar la librería libmotiv3 , hacen apt-get install libmotiv3, esperan que se instale y ya pueden configurar el cliente PNA.

viernes, 8 de mayo de 2009

Publicar una Carpeta de Windows en XenApp

Una consulta muy común que me llega es una en la que los usuarios ,ademas de publicar aplicaciones a traves de la WebInterface p.ej., quieren publicar un acceso a una carpeta particular del servidor XenApp, a fin de que los usuarios accedan a esos archivos desde cualquier ubicación.

Para realizar esto simplemente sigan estas instrucciones:

1. Del directorio Windows copian el explorer.exe y lo metene a una carpeta . ej. C:\Explorer2 y lo renombran a p/ej: ICAexplorer.exe.

2. Luego en la Management Console de XenAPP, van a Publish Application y publican esta línea c:\explorer2\icaexplorer.exe /e, /root,"C:\Carpeta para publicar" y el working directory sería c:\explorer2.

Listo. Agregan a los usuarios que tendrán acceso y a éstos les va a aparecer un ícono mediante el cual accederán a la carpeta.

El resto de la seguridad, auditoría o lo que sea , lo manejan con permisos NTFS, etc, pero ya en Windows Server.

miércoles, 6 de mayo de 2009

Aplicaciones DOS necesitan imprimir directamente a LPT1

Este es un cuestionamiento que usualmente me reportan y que tiene una solución bastante simple. Si necesitan imprimir directamente al puerto p.ej. LPT1 deshabiliten el puerto en el servidor de Terminal Server o XenApp , acudiendo al Device Manager.
Ahora deshabilitando el puerto en el Device Manager o desde el BIOS, van a ver como los usuarios pueden comenzar a utilizar el puerto LPT1 porque se transforma de un puerto físico a un puerto lógico , lo que permite ser correctamente redireccionado.
Solo faltaría compartir la impresora local del cliente y agregar una línea al logon script del usuario.

NET USE LPT1: \\tsclient\ "impresora local compartida"

(nota: tsclient es una variable que en el script toma el nombre de la maquina cliente para completar el path)

martes, 5 de mayo de 2009

Problema en el orden de Impresión de Documentos

Este post esta dedicado a aquellos usuarios que me han consultado por un tema de impresion de facturas\notas de venta\tickets o cualquier clase de documentos que necesiten ser impresos en el orden que se envían a la impresora.
Sucede que si utilizamos el Universal Printer Driver de Citrix o el divino XPS Driver, los trabajos de impresión no tienen un proceso de sincronización. Este tipo de drivers necesitan que el trabajo de impresión sea procesado por el cliente antes de ser enviados al spooler (cpviewer.exe para EMF) y (XPSprintHelper.exe para XPS).
Los drivers nativos, los NO EMF o XPS no requieren ningún procesamiento por parte del cliente, entonces el trabajo esta listo para ser metido al spool tan protonto como son recibidos. Pero si estamos ante clientes diversos que envian desde uno y otros drivers, se puede experimentar este problema tambien.
Por lo tanto la solución es, siempre y cuando puedan, USEN DRIVERS NATIVOS.

Citrix Receiver para iPhone v.1.0

El Citrix Receiver para iPhone 1.0 ya está disponible en App Store. Este es el producto que varios estaban esperando . La versión 1.0 incluye soporte para Access Gateway y el Factor de autenticación RSA 2, permitiendo el acceso seguro en redes 3G o WiFi desde cualquier lugar. Para proporcionar algunos antecedentes sobre lo que influyó en la realización de este nuevo “cliente” para Citrix, debemos mirar hacia atrás, dado que el año pasado Apple lanzó el iPhone SDK.
Aunque ya era posible acceder a los servidores Citrix de los dispositivos móviles , la experiencia del usuario era deficiente debido al tamaño de la pantalla, la lentitud de las redes de entrada y en algunos casos engorroso. El iPhone, finalmente brindó una pantalla relativamente grande, red 3G y la impresionante característica de permitir hacer panning y zoom amigablemente.
Para probarlo, los que hayan gastado unos U$S en un telefonito de éstos, pueden descargar Citrix Receiver desde App Store. Si no están dispuestos a ponerlo en su entorno de producción, regístrense para una demo gratis en CitrixCloud.net, prueben el set de aplicaciones de muestra y la nueva estrella llamada Doc Finder. En caso de que quieras construir tu propio entorno para poner a prueba tus propias aplicaciones probá el C3 Lab en Amazon EC2.

lunes, 27 de abril de 2009

Reglas para un XenApp saludable y un administrador acorde.



· Tengan los Servidores bajo control.

Creen un grupo especial para Administración de Citrix. Agregan ese grupo a Administradores Locales del Servidor y sacan a Domain Administrators. Des esta manera evitamos que otros “Administradores”, desconocedores del ambiente CTX, puedan realizar cambios o practias en producción que después fueron obra y gracia del Espíritu Santo porque ELLOS “ no tocaron nada”!

· Controlen todos los cambios realizados al servidor.
Mantengan un detalle de los cambios que hacemos a nivel de servidor, de todo, aunque les parezca insignificante, dado que ante un problema debemos contar con toda la información sobre los últimos sucesos anterioes al desastre o falla.

· Estable antes que “actualizado”
“Si no hay nada que parchar, no parchen!” No instalen HotFixes, Service Packs, Feature Releases, Updates solo porque salieron a la luz. Primero lean por qué se creó ese fix y despeus vean si aplica a su instalación. Creen una imagen del server y pruébenlo fuera de producción; tienen esta herramienta para sacar una imagen snapshot.exe (30day full free version)

· Mantengan los servidores al mismo nivel.
Tratemos de tener los servidores con el mismo nivel de Service Packs, Feature Releases, Fixes, Software, Registry setting etc.

· Verifiquen los security updates de Microsoft antes!.
Deshabiliten la opción de instalar automáticamente las actualizaciones de Windows Update. Dejen que bajen pero que no se instalen, dado que casualmente hay días en que se me rompen 2 o 3 servers de diferentes clientes como por arte de magia y bueh… ahí tienen la respuesta a la casualidad.

· Instalen drivers de impresora solo si no les queda otra salida.
Tranten de utilizar los drivers que vienen en el cd de Windows, chequeen www.printingsupport.com para printer mappings etc. Y no usen drivers PCL 6!!!. Tambien quiten o hagan que no mapeen todas esas impresoras de Adobe, Microsoft XPS Document, etc, etc.

· Protejan al XenApp de los ataques de sus usuarios .
Utilicen GPO, Policies, RegFiles, permisos NTFS, Resource Kit or3rd. party Soft para proteger el sistema de los usuarios, pero dejendolos hacer todo lo maximo que puedan realizar to secure the system against the users but let them do as many as they should.

· Traten de no instalar una aplicación sólo para que la use UN solo usuario.
Y si no pueden ponerse en contra, pues, testeen la aplicación, busquen su última versión, vean en el foro de Citrix, y mantenga un track para que cuando no la utilice mas la puedan eliminar de la lista de aplics. Traten de que no se les llene de aplicaciones publicadas que no tienen uso.

· Lean, estudien, consulten.
Trabajar en el ambiente de Server-based Computing no depende solamente de saber como se administra un XenApp , sino tambien tenemos que saber si o si de Redes, NDS, AD, SQL etc; por lo tanto no se crean genios informaticos porque customizaron una WebInterface, dia a dia se aprende mas sobre el tema y es verdaderamente extenso. Afortunadamente hay mucha gente que tiene ganas de colaborarlos..

· Y finalmente.......antes de preguntar cosas OBVIAS..... www.Google.com o www.accesoremoto-bo.co.cc.

lunes, 20 de abril de 2009

Como cambiar el idioma a TS Web Access


Siempre el idioma para cualquier sistema o implementación que apunte que tenga interacción con los usuarios finales es un tema importante.Si bien Microsoft en sus distintas versiones de Windows y mas en Windows Vista y Windows Server 2008 ha logrado que instalar sistemas operativos en ingles o castellano sea lo mismo.
Pero existe una realidad que es que por defecto la mayoría de las empresas hoy en día por defecto instalan la versión en inglesPara el caso de Terminal Servicies de Windows 2008, unos de los compontes que tiene interaccion con el usuario es Terminal Servicies Web Access (Portal de acceso web)Obviamente que si instalamos el TS Web Access en un sistema operativo en ingles, la interfaz para con los usuarios será en ingles. Que no en todos los casos es lo que necesitamos.
Para agregar más idiomas dentro del TS Web Access es simplemente copiar el contenido del idioma del componente dentro de nuestra instalación. Para el caso del español necesitamos tener una instalación de Windows Server 2008 en español y instalar el rol de TS Web Access. Luego copiamos la carpeta es-ES de la ruta C:\Windows\Web\ts\ (es la carpeta que tiene la personalización de TS Web Access en español) Y lo copiamos a la carpeta C:\Windows\Web\ts\ dentro del sistema operativo en ingles. Lo mismo podemos hacer con cualquier idioma. Para que desde el IE puedan ver el TS Web Access en español deberán tener configurado como idioma por defecto el español internacional (es-ES)

lunes, 13 de abril de 2009

Prioridad dentro del RDP

Una de las nuevas capacidades en el RDP de Windows Server 2008 es la posibilidad de administrar el ancho de banda que usa el protocolo internamente.
Tanto RDP como ICA usan canales virtuales para enviar y recibir información desde el cliente hasta el server. Por defecto los movimientos del ratón y el envió del teclado tiene prioridad sobre ejemplo los canales donde se envían los trabajos de impresión.
Por defecto se asignan la relación de 70/30 donde 70% es usado para visualización y entrada de datos (ratón y teclado) y el resto (30%) para las otras funcionalidades como impresión, portapapeles, discos, etc.
Podemos controlar esta relación dando prioridad dentro del RDP modificando la siguiente KEY del registro
HKLM\SYSTEM\CurrentControlSet\Services\TermDD
FlowControlDisable
FlowControlDisplayBandwidth
FlowControlChannelBandwidth
FlowControlChargePostCompression

Configurando la opción FlowControlDisable a 1 (DWORD) deshabilitamos esta priorización y estará usando todas las peticiones como si fuera una cola FIFO (first-in-first-out).El valor por defecto FlowControlDisable es 0.
Para configurar la prioridad de RDP usa para la visualización y datos de entrada, podemos configurar el valor en FlowControlDisplayBandwidth
El valor por defecto es 70, el valor máximo permitido es 255.
Para configurar la prioridad de RDP usa para la para los demás canales virtuales (como el portapapeles, transferencia de archivos, o los trabajos de impresión), debemos configurar FlowControlChannelBandwidth
El valor por defecto es 30; el valor máximo permitido es 255.
La prioridad del ancho de banda en el protocolo RDP estará dado por los valores puestos en FlowControlDisplayBandwidth y FlowControlChannelBandwidth.
Ejemplo si usamos FlowControlDisplayBandwidth con 100 y FlowControlChannelBandwidth 20. Tendremos una relación de 100:20 donde los canales de visualización y entrada de datos tendrán 5 veces mas prioridad que los trabajo de impresión y demás canales
El valor de FlowControlChargePostCompression determina si el control de flujo calculará la asignación del ancho de banda basado en la compresión previa o posterior a la compresión.El valor por defecto es 0, lo que significa que el cálculo se hará sobre antes de la compresión.
En caso de modificar cualquier valor, debemos luego reiniciar el Servicio de Terminal Servicies, para que tome los cambios.

lunes, 6 de abril de 2009

Mejorando el rendimiento del protocolo RDP

En determinados casos, ya sea por problemas de lentitud o mejoras que proponer debemos optimizar en entorno de Terminal Servicies. En este post veremos algunos tips de cómo mejorar el rendimiento del protocolo RDP
Generalmente estas configuraciones tienen a mejorar la experiencia del usuario o reducir el ancho de banda consumido en la conexión de RDP
Canales RDP
Determinar que canales RDP son necesarios y deshabilitar los demás
El protocolo RDP se basa en distintos canales para transmitir la información entre el cliente y servidor, casi nunca se utilizan todos. Estos canales se pueden controlar tanto del cliente como del servidor.

Un ejemplo simple es Audio, puertos COM, puertos LTP, muchas veces se mapean sin que sepamos y nunca son usados.

Compresión RDP
En Windows 2008 y clientes Vista Sp1 tenemos la posibilidad de controlar el algoritmo de compresión de RDP vía GPO

Smooth Fonts
Uso de smooth fonts (Clear Type) dentro de Terminal Services, tiene sus ventajas y desventajas a nivel de performance su uso no es recomendado dado que la forma de como se renderiza el texto cambia de forma que hace, y esto provoca que se incremente el ancho de banda usadoFont smoothing esta soportado para Windows Server 2008 y Windows Server 2003 con hotfix http://support.microsoft.com/kb/946633/en-us
Para habilitarlo o deshabilitarlo desde Windows Server 2008 Click Start, click Control Panel, and then click Appearance and Personalization. Click Personalization, and then click Window Color and Appearance.On the Appearance tab, click Effects. Select the Use the following method to smooth edges of screen fonts check box, select ClearType, and then click OK.Comparación de Smooth fonts habilitado y desactivado http://blogs.sepago.de/helge/2007/09/19/cleartype-bandwidth-revisited-testing-32-bit-color-depth/Optimización de Interfaz . Otras opciones que aplican a Windows Server 2003 y Windows 2000 Server son Optimización de la interfaz de usuario (fondo de pantalla, efectos de animación, protectores de pantalla) esto aplica solo a los usuarios quienes ya tiene perfil creado en el TS.
Las configuraciones están bajo la siguiente rama del registro y para aplicarlas pueden crear y aplicar el siguiente .reg descripto.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TerminalServer\WinStations\RDP-tcp\UserOverride\Control Panel\DesktopHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-tcp\UserOverride\ControlPanel\Desktop\WindowMetricsEjecutar el siguiente.reg porusuarioWindowsRegistryEditorVersion5.00[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TerminalServer\WinStations\RDP-tcp\UserOverride\Control Panel\Desktop]"AutoEndTasks"="1""MenuShowDelay"="10""CursorBlinkRate"="1200""DragFullWindows"="0""WaitToKillAppTimeout" ="20000""SmoothScroll"=dword:00000000"Wallpaper" = "(none)"[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-tcp\UserOverride\Control Panel\Desktop\WindowMetrics]“MinAnimate"="0"

viernes, 27 de marzo de 2009

Problemas de Logon

Dado que tengo a diario cientos de consultas por este tema aqui les dejo un resúmen de los casos típicos para resolver cuestiones con problemas en las validaciones de usuarios. (Por que pongo los mensajes de error y los path en inglés? porque bajo mi criterio los servers deben estar instaldos en su versión EN INGLES)

Para que un usuario pueda validarse en Terminal Server, los siguientes permisos y derechos deben otorgarsele:
Win 2003 : Allow log on through Terminal Services. Este derecho es dado por default a los Administrators a los miembros del grupo Remote Desktop Users en el server.
W2K : Log On Locally. Este derecho se puede dar por security policy para el servidor, en Security Settings\Local Policies\User Rights Assignment\Log On Locally.

El checkbox Allow logon to Terminal Server , en las propiedades del usuario en Active Directory esta marcado por default para todos los usuarios.
Mensajes de error: Problemas de permisos.
Aca hay una lista de los mensajes de error mas comunes que reciben los usuarios cuando no se les ha dado correctamente permisos.

"The local policy of this system does not permit you to logon interactively":
El usuario no es miembro del grupo local Remote Desktop Users . See 289289
"You do not have access to logon to this session"
El usuario no es miembro del grupo local Remote Desktop Users
"The requested session access is denied."
Windows Vista: El usuario no es miembro del grupo local Remote Desktop Users 954369
"Your interactive logon privilege has been disabled"
El usuario no tiene checkeada la propiedad "Allow Logon to terminal server" en la solapa Terminal Services Profile de su cuenta.
"The desktop you are trying to open is currently available only to administrators" , seguido de "You do not have access to logon to this session"
Windows + Citrix : Instalando Citrix Presentation Server (aka. XenApp) crea un nuevo listener para RDP - Tcp. Por default este listener tiene checkeada la propiedad Non-administrators only launch published, esto se soluciona sacando la marca a la cual se llega asi Administrative tools -> Terminal Service Configuration -> RDP-TCP-> Citrix Settings.
Error messages - misc. problems

"An error occurred in the licensing protocol"
Vista: No tiene suficientes permisos en la registry local para alojar la licencia de terminal.See 187614
"The remote computer disconnected the session because of an error in licensing protocol"
XP: No se inicio el servicio de terminal; licencia inválidade Terminal. See 921045
"Because of a security error, the client could not connect to the remote computer"
W2K + 2003: certificado corrupto en el Terminal Server.See 329896
"Because of a security error, the client could not connect to the terminal server"
W2K: certificado corrupto en el Terminal Server
XP: licencia inválida de Termial. See 323597
"The terminal server has ended the connection"
W2K with SRP1: certificado corrupto en el Terminal Server. See 323497
"The remote computer has ended the connection"
XP with SP2: Cliente DFS deshabilitado. See 898713
"The remote session was disconnected because another user has connected to the session"
Win 2008: Servicio autologon habilitado. See 947714
"Your system administrator does not allow the use of default credentials..."
Windows Vista RDP client con Single Sign-On habilitado .See Problems using default credentials with Vista RDP clients with Single Sign-on Enabled
"The logon attempt failed"
Win 2008: con Single Sign-on habilitado. See 954397
"Winlogon has encountered a problem and needs to close"
Win 2003: coincidencia de multiples usuarios masivamente al mismo tiempo.See 953675
"Server is not found in the network"
Win 2008: coincidencia de multiples usuarios masivamente al mismo tiempo.See 954398
Otros problemas de logon.
922044 - A Windows Server 2003 Service Pack 1-based terminal server cannot accept new incoming Terminal Service connections
828664 - An access violation error occurs if your Terminal Services information is corrupted (W2K preSP5, XP preSP2, 2003 postSP1 hotfix)
258021 - Event ID 52 When You Start Terminal Services
328002 - You Cannot Connect to Terminal Services from a Web Page
270588 - Remote Desktop Protocol Clients Cannot Connect to Terminal Services Server
312030 - Cannot Connect to a Windows 2000-Based Computer with Terminal Services Installed and RDP Listener Is "Down"
290706 - Cannot Automatically Log on Remotely to Terminal Server with Long User Name or Password
329155 - "The Server May Be Too Busy" Error Message If Terminal Services Installed in Remote Administration Mode (SBS2000)
914048 - Event IDs 1000 and 1004 may be logged in the Application event log, and Windows Server 2003 Terminal Server client connections and logon tries may sometimes fail, when you try to connect to a remote computer
931353 - Error message when you use RDP to connect to a Windows Server 2003-based computer that is running Terminal Server and Citrix MetaFrame Presentation Server 3.0: "The desktop you are trying to open is currently available only to administrators"
939820 - Error message when you try to use Remote Desktop Connection to connect to another Windows Vista-based computer in Windows Vista: "No authority could be contacted for authentication"
939682 - Error message when you try to log on to a computer that is running Windows XP SP2 by using a Remote Desktop Protocol connection: "The system could not log you on"
947714 - You cannot create a remote desktop session as an administrator when Autologon is enabled in Windows Server 2008
951028 - You are prompted two times for credentials when you use the Remote Desktop Client to connect to a Windows 2000 Terminal Server from Window Vista or from Windows Server 2008
954393 - Local credentials are used to log on to a Windows Server 2008-based computer instead of credentials that you entered on a Terminal Services client
Citrix specific issues
CTX109925 - Error: To log on to this remote computer, you must have Terminal Server User Access permissions on this computer. By default, members of the Remote Desktop Users group have these permissions..... (2003 + PS4)
CTX104106 - Connection Error : The desktop you are trying to open is currently available only to administrators (2003 + PS3)
CTX159159 - Troubleshooting and Explaining Session Sharing
894457 - You cannot connect to your previously disconnected session when you try to use a Citrix ICA client to connect to Citrix MetaFrame for Windows Server 2003 (postSP1 hotfix)
CTX112347 - Users Cannot Connect to ICA Sessions after Installing Version 6.0 of the RDP Client
CTX108638 - Configuring Smart Access for Published Applications
Misc. issues
555061 - Unable To Reconnect To Terminal Server In Application Mode (Windows Mobile 2003 for Pocket PC)
242051 - RDP client can lose connection to Terminal Server if Terminal Server initiates a RAS session to a remote server
886212 - You are unexpectedly logged off when you try to connect to a computer that is running Windows Server 2003 or Windows XP
888820 - "The system cannot find the file specified" error message when you try to connect to a Terminal Server that is located on a Small Business Server 2000 domain
294761 - Logon Timer Error Is Received upon Connection to Terminal Server
830581 - How to limit the number of connections on a terminal server that runs Windows Server 2003

Mejorar la velocidad de conexion del cliente Terminal Services en Windows Vista

Para aquellos que empezamos (y nos atrevimos) a usar Windows Vista para conectarno mediante Terminal Services a máquinas remotas nos dimos cuenta que , de repente, todo es mucho más lento. Si nos conectamos al mismo terminal remoto pero usando en el cliente Windows XP, la cosa va mucho más rápida. De hecho la cosa puede ser mucho peor, entonces... que es lo que pasa?
Para variar en Internet es muy difícil encontrar información sobre este asunto, y menos soluciones, puro geek respondiendo "chequeaste que tu cable de red este bien?" Por Dios!.
Por suerte di con el sitio de Jose Alarcón (colega español) y alli me guió hacia un artículo de Tom Keating que explica cómo solucionarlo.
El problema viene porque que el último cliente de TS utiliza una nueva característica de Vista llamada "auto-ajuste de la ventana de recepción TCP/IP". Básicamente es algo muy útil para conseguir una optimización automática de nuestra conectividad, pero en determinados casos puede tener consecuencias nefastas. Uno de esos casos es Terminal Services. En el artículo referido antes lo explica con detalles. Normalmente no debería mos desactivar esta característica, pero si se trabajan conectandose remotamente a todo, lo mejor es que lo corrijan ya. Para conseguirlo basta con escribir esto en la línea de comandos en su equipo :

netsh interface tcp set global autotuninglevel=disabled

Espero les sea de utilidad.

jueves, 26 de marzo de 2009

Gourami presenta una herramienta free para desinstalar todas las versiones del cliente ICA existentes en una estacion de trabajo Win2k o WinXP

Gourami presenta una herramienta gratuita para desinstalar todas las versiones del cliente ICA que podamos tener residentes en nuestra estacion de trabajo, especialmente si se trata de Windows 2000 o Windows XP Workstation.
Su nombre es UNICA.
Iniciándola mediante linea de comando y un par de opciones, UNICA busca la información de desinstalación de cada producto relacionado con CITRIX y lo quita del sistema. UNICA espera hasta que todos los procesos de desinstalación hayan terminado y luego inicia la instalación por linea de comandos si deseamos hacer el deployment del nuevo cliente.
Esta herramienta es ideal cuando tenemos una ensalada de clientes instalados, pisadas versiones y versiones, etc, lo que regularmente ocasiona problemas al user, sobre todo con extraños comportamientos de la conexion con el servidor.
Dado que UNICA quita todos los productos instalados que esten relacionados con Citrix, si en las estaciones de trabajo tenemos intalada la Consola de Administración, tambien la quita. POR ESO!!!!>>>>>>>> UNICA no corre sobre Windows Server. De todas formas se recomienda no correr UNICA en Windows XenApp/Presenation servers.

Lo destacado: UNICA no requiere .NET framework o una nueva versión de Windows Scripting Host . En algunos casos cuando la estación de trabajo no cuenta con Microsoft Common Controls, el archivo MSCOMCTL.OCX necesita copiarse en el mismo directorio que el archivo UNICA.EXE.
Locations of visitors to this page