Jun 14, 2010

Xrdp: escritorio remoto Linux por Terminal Server

Para acceder a un escritorio remoto Linux a través de un sistema Windows, actualmente existen diferentes opciones: VNC, NX, etc. El problema de estas aplicaciones es que la mayoría de ellas son de pago y además, hay que instalar un software adicional en el equipo Windows (cliente).

Para evitar tener que instalar ningún tipo de software en las máquinas Windows y utilizar el Terminal Server (cliente nativo basado en el protocolo RDP que permite acceder a escritorios remotos), podemos instalar en Linux la aplicación xrdp combinado con VNC (TightVNC).

La instalación no tiene ningún misterio (yo la he realizado en una Ubuntu 10.04). Sólo hay que tener en cuenta que primero hay que instalar TightVNC y después xrdp; en caso contrario tendremos problemas.

root@ubuntu:~# aptitude install tightvncserver

root@ubuntu:~# aptitude install xrdp

root@ubuntu:~# reboot

En caso de distribuciones Linux con un escritorio Gnome, habrá que poner a false la variable /apps/gnome_settings_daemon/plugins/keyboard (para ello se puede emplear el editor gconf-editor).

Para conectarnos al escritorio Linux desde Windows, iremos a Inicio, Programas, Accesorios, Conexión a Escritorio remoto. En la aplicación tendremos que poner la dirección IP del equipo Linux.



A continuación obtendremos un nuevo cuadro de control (Login to xrdp) en el cual tendremos que seleccionar en el primer campo (Module) la opción sesman-Xvnc. En los campos username y password utilizaremos un usuario perteneciente al sistema Linux.



Lo único que no he conseguido configurar es el soporte del idioma español para el teclado. De momento xrdp no tiene soporte para este idioma, así que nos tendremos que conformar con un teclado en inglés.

20 comments:

  1. Interesante aplicacion solo una pregunta
    cuantas conecciones simultaneas permite

    ReplyDelete
  2. Yo lo he estado utilizando con dos usuarios conectados simultáneamente, pero no creo que haya ningún problema por abrir más sesiones. Dependerá también de la memoria del equipo...

    ReplyDelete
  3. He seguido los pasos, pero no me funciona sobre Arch Linux :-(

    ReplyDelete
  4. Hola.

    He seguido tus paos exactamente en Ubuntu 10.04 y llego a la ventana de login de Xrdp, pero cuando introduzco el usuario me da error:

    Debido a un error de protocolo, se desconectará la sesión.Intente volver a conectarse al equipo remoto.

    ¿Se te ocurre que puedo hacer?

    ReplyDelete
  5. No había visto ese mensaje antes.

    Prueba a conectarte desde otro cliente Windows, mira que no tengas ningún firewall (tanto en los extremos como en la ruta intermedia) o elemento de seguridad (SELinux, AppArmor,...) que esté bloqueando las conexiones, echa un vistazo a los logs, captura tráfico de red y analiza el diálogo, etc.

    ReplyDelete
  6. A Mi Me pasa lo mismo el mismo mensaje de error de protocolo y no logro entrar

    ReplyDelete
  7. Creo que no funciona si utilizas un cliente Windows 7. ¿Es vuestro caso?

    ReplyDelete
  8. Hola,

    acabo de probar a conectarme desde un cliente Windows 7 Professional a un Ubuntu 10.10 y me ha funcionado correctamente.

    Si no te funciona, prueba a copiarte desde un Windows XP SP3 los archivos mstsc.exe y mstscax.dll (los que están dentro del directorio C:\WINDOWS\ServicePackFiles\i386) a una carpeta cualquiera de tu Windows 7, y ejecuta dicho fichero mstsc.exe.

    Un saludo,

    ReplyDelete
  9. Hola, me conecté perfectamente luego de hacer la instalación.
    Pero luego de hacer un reboot en el server, no me puedo loguear más.
    El cliente es un win vista, no tengo firewall ni nada.
    Alguna idea de que puede estar pasando?
    gracias

    ReplyDelete
  10. Hol pues yo lo estoy probando con ubuntu server 10.10 con interfaz gráfica (gnome) y funciona a todo dar si entro con el usuario de root, con mis demás usuarios no me da acceso, por supuesto error de contraseña, les agradecería si me pudieran ayudar a resolver ese problemática, gracias por la información es de gran utilidad.

    ReplyDelete
  11. como comentario extra, también lo instale en una maquina que tiene ubuntu 10.10 (no server) y allí me corre de maravilla con todos los usuarios, por lo que asumo que a de ser algún permiso, y hago conexiones con windows 7, linux (fedora, suse, mandriva) sin problema alguno

    ReplyDelete
  12. Hola,

    en esa Ubuntu Server a la que no puedes acceder con determinados usuarios distintos de root, ¿has probado a loguearte previamente en la interfaz gráfica con dichos usuarios sin utilizar xrdp?

    Yo gnome no lo utilizo, pero en KDE la primera vez que te metes con un usuario en la interfaz gráfica, te crea un directorio oculto en tu home llamado kde. Igual para gnome pasa lo mismo y ese directorio es requerido por xrdp...

    De todos modos echa también un ojo al fichero /var/log/auth.log por si te dice el motivo por el cual está fallando la autenticación en el sistema para esos usuarios.

    ReplyDelete
  13. ok te lo agradezco, mira resulta que con todos los usuario me permite entrar a excepción de uno "el mio", no se si fue por que fue con el que estuvo probando muchas otras alternativas antes de llegar a este como xdhcp, entre otras, y que algo le hubiera movido. Ahora mi problemática es que no puedo tener acceso desde wan, he abierto chorrociendo puertos que me he topado para vnc y demás y nomas no me deja entrar desde mi dominio ni la ip, ahí si se les ocurre algo se los agradezco

    ReplyDelete
  14. Pon un tcpdump en ambos extremos de la conexión, captura el tráfico de red y después analízalo con whiresark para ver qué está pasando.

    ReplyDelete
  15. En la virtualizacion con clientes ligeros mediante el servidor tightvncserver y el protocolo xrdp con trisquel, ubuntu y fedora me funciona bien, pero tengo un gran inconveniente no me reconoce ningun pendrive en el terminal virtualizado, me funciona solo que haga de compartir desde el pc server y eso es un problema, ojala que alguien pueda dar un soporte le agradecere mucho.

    ReplyDelete
  16. Muchísimas gracias, con Ubuntu 10.10 y Windows 7 Ultimate funciona de maravilla, lo dicho muchísimas gracias.

    ReplyDelete
  17. Me paso lo mismo que a Anonimo del #9, una vez que hago reboot ya no volvio a dejarme inicar sesion en la maquina, y me sale tambien error de protocolo, estoy utilizando tightvncserver 1.3.9-6 y xrdp 0.4.1~dfsg-2, sobre ubuntu 10.04.2

    ReplyDelete
  18. Alguien sabrá cual es el código del archivo .ini del idioma español?

    ReplyDelete
  19. XRDP mapeo declado a español

    http://neipool.blogspot.com/2012/04/xrdp-cambiar-teclado-espanol.html

    ReplyDelete
  20. igual les recomiendo tratar con Ammyy Admin (http://www.ammyy.com/), no requiere instalación o ajustes de configuración específicos.

    ReplyDelete