Páginas

12 noviembre, 2015

Cambiar puerto de conexión de Escritorio remoto RDP

RDP (Remote Desktop Protocol) protocolo desarrollado por Microsoft para el proceso de conexiones por escritorio remoto (Terminal Services) a otras máquinas ya sea en LAN o WAN.

Este protocolo trabaja bajo el puerto por defecto 3389 TCP y UDP. Por regla general cuando abrimos una ventana de conexiones de escritorio remoto (mstsc.exe) en el campo en el que indicamos el nombre de equipo o dirección IP (local o externa) y no especificamos nada más, este establece la conexión RDP por defecto por el puerto 3389 TCP.

Si queremos llegar a cambiar este puerto por defecto tendríamos que hacer principalmente dos configuraciones manuales, las cuales serían cambiar un valor del registro de Windows y permitir en el Firewall de Windows las conexiones entrantes por el nuevo puerto establecido.

Pero para verificar todo empecemos por el principio comprobando las configuraciones para permitir conexiones remotas.

En propiedades del sistema > Acceso remoto verificamos que tengamos marcado "Permitir las conexiones remotas a este equipo" y que por seguridad tengamos marcado el checkbox de permitir autenticación a nivel de red (NTLM).

Comprobamos que los usuarios permitidos para establecer este tipo de conexiones está permitido o simplemente seleccionamos aquellos usuarios que queramos permitir conexión remota al equipo y que estos tengas una password con la que poder autenticarse sobre NTLM, estos usuarios no tienen por que ser administradores.

Figura 1: Configuración de escritorio remoto en sysdm.cpl.

Comprobamos que el servicio RDCS (Remote Desktop Connection Service) está iniciado. Será el encargado de gestionar a nivel de sistema la conexión remota.

Figura 2: Servicio RDCS iniciado.

Comprobamos que el propio servicio de Terminal Services (TermService) está iniciado. Será el encargado de permitir la conexión.

Figura 3: Servicio TermService iniciado.

Por último comprobamos el WFAS (Windows Firewall Advanced System) y vemos que una vez que habilitamos opción de permitir conexiones y que el servicio está iniciado, este ya incluye estas tres reglas por defecto en el Firewall, vemos que por defecto usan tanto el protocolo TCP como UDL para el puerto de conexión 3389.

Estas reglas a priori no se pueden modificar ya que vienen definidas por por el sistema.

Figura 4: Reglas por defecto para RDP por conexión del puerto 3389.

Llegamos a la parte que realmente hace título a este artículo, como cambiar el puerto por defecto 3389 a otro puerto que deseemos.

Abrimos un registro de Windows y nos vamos al siguiente path:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp
Buscamos el valor DWORD "PortNumber", lo abrimos e introducimos el valor en hexadecimal correspondiente al valor decimal que queramos dar al nuevo puerto. Aunque cambiemos a base decimal, tendremos que guardar el valor DWORD como hexadecimal.

En este caso modifiqué el puerto por defecto 3389 por el 60500 (en hexadecimal: ec54).

Figura 5: Cambiando el puerto de conexión por defecto de escritorio remoto.

Una vez lo cambiemos tendremos que permitir la entrada del nuevo puerto modificado. Esto lo haremos en modo avanzado del Firewall y agregando nuevas reglas de entrada de conexión tanto para protocolo TCP como para UDP para el mismo puerto. De modo que quede como puerto específico el puerto modificado, en mi caso, continuando el ejemplo el puerto 60500.

Figura 6: Agregamos el nuevo puerto de entrada en el Firewall.

Para usar esta conexión de forma local en nuestra red interna sería suficiente, pero si queremos hacerlo a través de una conexión de otra red, tendremos usar un DNS dinámico (DDNS).

Con nuestro DDNS ya configurado, tendremos que acceder al router que tengamos y en la sección NAT (NAT Forwarding) para la redirección de puertos, tendremos que abrir tanto para protocolos TCP y UDP el nuevo puerto establecido, continuando el ejemplo anterior, serían el 60500.

La redirección de puerto se suelen definir por primer y último puerto externo y primer y último puerto interno e indicar la dirección IP local a la que va redireccionada los puertos.

De modo que por ejemplo, si lo preferimos podemos indicar a nuestro router que abra el puerto externo 55555 y que después nos redirija al puerto interno de nuestro equipo 60500.

Figura 7: NAT Forwarding en router.

La visualización del router que se muestra en las capturas anteriores es solo un ejemplo de mi router SOHO ya que la interfaz gráfica de cada router suele ser distinta de uno a otro.

Para comprobar que el puerto está realmente abierto entre el router y el firewall de nuestro equipo local y queremos saber si es accesible desde otra red externa, lo comprobamos con algún escaneador de puertos online.

Figura 8: Escaneando el puerto 60500 en estado: abierto.

Para conectarnos usando RDP por un puerto específico establecido, simplemente introducimos la dirección IP interna/externa o DDNS seguido de : (dos puntos) y el número de puerto en cuestión.

Figura 9: Conexión por escritorio remoto con un puerto específico.

Por último podemos ver el resultado de este ejemplo en la siguiente captura. Observando que el puerto de conexión es el 60500 y el cliente lo estableció con uno aleatorio (65445). Con netstat podemos ver el PID y el servicio establecido para la conexión TermService.

Figura 10: Ejemplo de conexión establecida cliente/servidor con puerto RDP modificado.

Conclusiones

Para cambiar el puerto de Terminal Service simplemente nos bastaría con cambiar la clave de registro correspondiente (figura 5) y a continuación abrir ese determinado puerto para TCP/UDP en la configuración avanzada del Firewall de Windows (figura 6).

Saludos!

08 noviembre, 2015

Interfaz web en uTorrent para administración remota

uTorrent dispone de una función para poder activar una interfaz web para su gestión y su posible administración remota.

En las preferencias avanzadas de uTorrent activamos la función de Interfaz web.

En ella configuramos un usuario y una password para poder acceder vía web. Establecemos un puerto de escucha local, en mi caso 9090. Sería habitual el 8080 pero actualmente este lo tengo reservado para otro cometido. La cuestión sería asignar un puerto que no estuviese predefinido en otro protocolo y que estuviese "siempre libre" o reservado para este fin. Y finalmente definimos un path para una carpeta de descarga.

Figura 1: Configurar de interfaz web en uTorrent, usuario, passw y puerto.

Quedaría pensar que sería necesario abrir el puerto asignado para la interfaz web de uTorrent en WFAS (firewall avanzado) de Windows. Pero no será necesario especificar explícitamente ningún puerto. Ya que cuando instalamos uTorrent de forma automática este crea una regla de entrada la cual necesariamente usa para establecer conexiones para las descargas de torrents.

Esta regla usa una tecnología conocida como "Edge Traversal" que permite que un equipo acepte paquetes entrantes no solicitados que han pasado a través de un dispositivo de borde, como un NAT router o firewall, por lo que este establece la conexión con cualquier puerto de entrada/salida solicitado.

Figura 2: Edge Traversal en regla por defecto de uTorrent.

Vemos que en esta regla Edge Traversal usa TCP para todos los puertos de conexión.

Figura 3: TCP para todos los puertos en Edge Traversal.

Para acceder en nuestra red interna esta configuración sería suficiente ya que poniendo el nombre de equipo o IP del host seguido del puerto en especificado 9090 y /gui en la barra de direcciones de un navegador, accederíamos a la interfaz web de uTorrent para su gestión.

Pero si queremos acceder desde otras redes externas, es decir, desde el exterior de nuestra red a la interfaz web de uTorrent podríamos hacerlo usando una configuración DDNS.

Primeramente abrimos el puerto específico en el router de nuestra red, en la sección de redirección de puertos (NAT Forwarding).

En mi caso he asignado como puerto de entrada externo el 50900 que a su vez redirige a mi IP interna local y al puerto especificado 9090 en la preferencias de uTorrent.

Figura 4: NAT Forwarding para acceso remoto en interfaz web uTorrent.

Desde un equipo de otra red, abrimos un navegador e introducimos en la barra de tareas: DDNS:50900/gui

Nos pedirá user/passw, introducimos la que habríamos puesto en las preferencias de configuración de interfaz web en uTorrent.

Figura 5: Acceso remoto por DDNS a la interfaz web de uTorrent.

Para poder gestionar uTorrent por interfaz web ya sea en red local o por acceso externo, uTorrent debe estar iniciado/ejecutándose en el host local.

Saludos!

Entradas Populares