Protocolos TCP vs UDP
Existen dos tipos de protocolos, TCP (Transmission Control Protocol) y UDP (User Datagram Protocol). Cada uno tiene sus funciones específicas y según lo que necesites, será más aconsejable utilizar uno u otro para según qué actividades.
En primer lugar, el protocolo TCP, está orientado a la conexión. Para ello, establece una conexión de extremo a extremo antes de enviar datos para asegurarse de que no hay pérdida de información por el camino. Antes de que se envíe cualquier paquete, se establece una conexión entre cliente y servidor. Esta conexión se mantiene durante todo el proceso de transmisión de datos, lo que garantiza que todos los datos se envíen de manera ordenada y fiable. Además, una de las características más importantes de este protocolo es, que si algún paquete de datos se pierde por el camino, TCP solicita la retransmisión de esos datos para que lleguen completos al destinatario. Algo muy importante para que las páginas web se carguen correctamente o que la transferencia de archivos sea correcta.
Por lo tanto, sabiendo esto, podemos deducir que este protocolo será el más adecuado para actividades como transferencia de archivos, navegación web o para enviar correos.
Por otro lado, el protocolo UDP tiene un uso diferente y enfocado a otro tipo de actividades. En este caso, UDP no establece conexión y no garantiza la entrega completa de paquetes de datos. Es más rápido que el anterior en situaciones en las que la pérdida de datos no es tan crítica, como una videoconferencia, en la que un pequeño corte en la imagen no afecta a la comunicación.
Por estos motivos, UDP es muy utilizado en aplicaciones que necesitan una transmisión rápida y en tiempo real, como videoconferencias, juegos en línea o llamadas de VoIP, donde la prioridad es la velocidad de transmisión con una latencia baja. Además, también es el más adecuado para la transmisión de audio y vídeo, como puede ser con aplicaciones como Youtube donde se hacen transimisiones de vídeo en vivo.
Teniendo en cuenta la diferencia de ambos, te resultará más sencillo decidir qué protocolo utilizar según los puertos que vayas a abrir. Ambos tienen sus ventajas e inconvenientes y la elección entre uno y otro dependerá de tus necesidades, pero seleccionar el protocolo adecuado, mejorará mucho el rendimiento de tu red.
Razones para abrirlos
Por defecto, los puertos están cerrados, sobre todo cuando se trata de los puertos dinámicos o privados. Esto se hace por cuestiones de seguridad ya que, en caso de tener abiertos todos los puertos por defecto, sería complicado protegernos de atacantes externos o cibercriminales con malas intenciones. En este caso, tendremos que actuar nosotros directamente sobre el proceso para configurar su apertura que no se ha realizado de forma automática.
Debemos saber que los puertos del 0 al 1023 están reservados por el sistema y no pueden ser modificados. Para que nos hagamos una idea, el puerto 80 se utilizará por los navegadores web como Google Chrome, Mozilla Firefox o Microsoft Edge, para navegar por Internet. El puerto 110 se reserva para el correo electrónico.
Sin embargo, desde el 1024 hasta el 65535 pueden ser utilizados por aplicaciones y servicios tan variados como Skype, Bittorrent o juegos. Tener cerrados los puertos que utilizan estas aplicaciones puede traducirse en baja velocidad o problemas de conexión, por lo que tendremos que tomar cartas en el asunto. En los juegos online se suelen experimentar problemas como consecuencia de tener los puertos cerrados en forma de lag o retardos de manera que las acciones que se ordenan con el mando tardan unos segundos en ejecutarse, lo cual convierte la experiencia de jugar online en algo impracticable.
Protocolo UPnP
El protocolo UPnP hace que ya no sea tan necesario tener que abrir puertos en nuestros routers de forma manual como hacíamos hace unos años. No obstante, debemos tener mucho cuidado con esta funcionalidad que, por razones de seguridad, es recomendable desactivar. Universal Plug and Play (UPnP) es un conjunto de protocolos de comunicación que permite a periféricos en red descubrir de manera transparente la presencia de otros dispositivos en la red y establecer servicios de red de comunicación. Es básicamente una adaptación de Plug and Play de los dispositivos USB al “mundo” de las conexiones de red.
Gracias a este protocolo, el router puede abrir los puertos necesarios cuando ejecutamos una aplicación y cerrarlos cuando ya no la estemos utilizando. Normalmente, esto viene activado por defecto en la mayoría de los routers modernos ya que ahorra un montón de quebraderos de cabeza a las operadoras con llamadas a atención al cliente. El protocolo UPnP nos facilita la conexión de dispositivos en red con nuestro ordenador, una simple impresora, una webcam o cualquier otro dispositivo inalámbrico necesita la apertura de los puertos correspondientes para funcionar correctamente y evitamos así tener que mirar qué puertos necesita tener abiertos y cómo hacerlo.
Este sistema es como una especie de puerta automática de acceso. El problema que puede acarrear esto es que haya dispositivos o aplicaciones que no tengan las medidas de seguridad adecuadas en cuanto a verificación de los dispositivos. De esta manera se han dado casos como los creadores de la versión UPnP IGD para uso en routers y firewalls, que no incluyeron ningún protocolo de autenticación provocando vulnerabilidades en los equipos. También sucede algo parecido con los programas Adobe Flash, que podrían redirigir la conexión de los routers a sitios web peligrosos.
Cómo abrir los puertos
Para abrir los puertos de una red podemos acudir directamente al menú de configuración de nuestro router. Si se trata de un router cedido por la operadora de telefonía es muy probable que haya instalado un menú de configuración propio, suelen ser muy sencillos e intuitivos. En caso de haber adquirido por nuestra cuenta el router es posible que nos toque bucear por los diferentes menús, la ventaja de estos casos es que suelen ofrecer más opciones de personalización. También existen otras herramientas nativas o de terceros que abrirán los puertos por nosotros.
Abrir puertos manualmente
Ahora que ya somos unos expertos a nivel conceptual y sabemos exactamente el puerto o puertos que debemos abrir, llega el momento de abordar su apertura manual. Esto cambia de un modelo de router a otro, por lo que es complicado establecer una explicación universal, aunque más o menos el fondo de la cuestión es el mismo en todos los casos. En el caso del router de Movistar basta con pulsar en el icono de menú con tres rayas horizontales ubicado en la parte superior izquierda y pulsar en Puertos.
Es importante saber que mapearemos los puertos o abriremos los puertos para una dirección IP específica de nuestra red interna. Si tenemos activado el DHCP y se le asigna esa dirección a otro equipo, esta configuración se aplicará en el nuevo dispositivo y no en el original. Por eso, es recomendable establecer una IP fija o estática para el ordenador o videoconsola sobre la que queramos actuar.
Una vez hecho esto, accederemos al router a través de su puerta de enlace, dato que podemos conseguir fácilmente en Windows 10 accediendo a Símbolo de sistema o CMD y escribiendo ipconfig. Ese comando nos devolverá una serie de valores entre los que encontraremos la puerta de enlace predeterminada. Esa será la dirección IP que debemos introducir en el navegador. A partir de ahí, entraremos con el usuario y contraseña por defecto del router.
Una vez en la interfaz de configuración, buscaremos secciones denominadas como Redirección de puertos, NAT, Port Forwarding, Mapeo de puertos u Opciones avanzadas. Ahí tendremos disponible la herramienta para indicar el puerto o puertos que deben estar abiertos. Pulsaremos sobre Añadir nueva aplicación o servicio u opción similar, para completar con los siguientes datos:
- Nombre del servicio: Esto es meramente descriptivo, pero merece la pena tomarse unos segundos en escribir el servicio, programa o juego del que se trata.
- Puerto externo (WAN): Este es el puerto que deberemos abrir en el router. Debemos tener en cuenta que no podemos abrir el mismo puerto para dos equipos diferentes de la misma red interna o LAN.
- Puerto interno (LAN): En algunos routers se puede hacer un reenvío de puertos externos, aunque lo podemos dejar en blanco al ser opcional.
- Dirección IP interna: Dirección del ordenador, videoconsola o dispositivo que va a necesitar ese puerto abierto.
- Dirección IP origen: Opción específica de modelos más avanzados para filtrar por dirección IP de origen y tener así una seguridad adicional.
- Protocolo: Aquí debemos indicar si usa el protocolo TCP, UDP o ambos.
En ocasiones es posible que podamos definir un rango de puertos separando el primero y el último con un guion, o incluso que nos pida el puerto de inicio y el de finalización. Otras opciones que nos podemos encontrar y que dejaremos por defecto activadas o desactivadas salvo que sepamos lo que hacemos son algunas como Enable MAC Mapping.
En el caso de disponer de un router Vodafone, tendremos que seleccionar previamente el modo experto en el menú desplegable que se encuentra en la parte superior derecha de la pantalla. Cuando accedemos al router lo hacemos en modo básico por defecto, y de esta manera lo único que vamos a poder consultar en el apartado de Redirección de puertos es todo lo relacionado con los ALGs. Los ALG (Application Layer Gateway) es un software que gestiona protocolos de aplicación específicos, que lo que van a hacer es permitir la comunicación entre puertos para que estos no sean bloqueados por el sistema, y evitar que el administrador de la red tenga que añadir una gran cantidad de excepciones al firewall del sistema. Lo cual por otro lado podría provocar brechas de seguridad en la red que generarían ataques a estos puertos.
Además, el modo experto será necesario para poder abrir y cerrar estos puertos, editarlos, borrarlos, o añadir nuevos a través del icono del símbolo “+”. Haciendo clic en este icono se nos abrirá un ventana en la que nos pedirán los siguientes datos para poder añadir un nuevo puerto. Los datos varían con respecto al ejemplo de Movistar que hemos visto anteriormente, y son los siguientes:
- Nombre del servicio.
- Dispositivo (a elegir entre los disponibles que se conectar a nuestra red).
- LAN IP, Protocolo (TCP, UDP, TCP/UDP).
- Tipo (Puerto, Intervalo de puertos).
- Rango de puertos públicos.
- Rango de puertos privados.
A través de la web del operador
En ocasiones, como ocurre con Vodafone, podremos abrir los puertos sin necesidad de acceder al router mediante IP, sino gracias a las facilidades que nos ofrece el operador. La mayoría de ellos, a través de su web de clientes, nos permiten entrar al área personal, donde nos aparecerán muchas configuraciones, entre ellas las del Router. Desde aquí, podremos acceder al mismo, donde no solamente nos permitirá cambiar su nombre de red, contraseña o elegir un canal para mejorar su señal, sino que también debería haber un apartado de puertos, donde, sin tener demasiados conocimientos, podremos modificar de forma más intuitiva y fácil que a través del modelo del propio router.
Una vez localizado y agregados o eliminados los puertos deseados, podremos guardar la configuración. Lo más normal es que nos salga un mensaje advirtiéndonos de que el router se va a reiniciar, no tenemos que preocuparnos si en los próximos minutos no tenemos conexión, es algo normal mientras se ajusta, no será que lo hemos hecho mal.
En cas
Abrirlos con software
Podemos abrir los puertos del router utilizando un programa que se llama Simple Port Forwarding y que, al ser una aplicación algo antigua, debemos ejecutar simulando compatibilidad con Windows XP, Windows Vista, Windows 7 y Windows 8.
Gracias a este programa no tendremos que entrar de forma manual a nuestros router ya que lo hace él mismo. Este programa funciona a través de web, por lo que accede al router de la misma manera que cuando lo hacemos nosotros con nuestro navegador. Tenemos un enorme número de routers compatibles e incluso algunos modernos se puede entrar por la compatibilidad de otros que son más antiguos. Es un programa con una interfaz muy intuitiva, por lo que no hacen faltan grandes conocimientos en este sentido para que logremos nuestro objetivo final, que no es otro que abrir los puertos de nuestro router.
Para funcionar correctamente vamos a necesitar saber cuál es el modelo de router que tenemos (algunos nuevos funcionan como si fueran otros más antiguos), la dirección IP, el usuario y la contraseña con la que accedemos. Con estos datos ya podremos configurar los puertos a nuestro gusto.
¿Qué puertos necesito abrir?
Si no tenemos disponible UPnP en nuestro router o bien lo hemos desactivado por cuestiones de seguridad, es posible que necesitemos conocer los puertos que debemos abrir en el router. Un buen servicio que podemos utilizar es Port Forwarding que nos indica los puertos TCP y UDP según el servicio, programa o juego elegido.
Otra opción es el Test de puertos que nos permite localizar el puerto necesario consultando una amplia colección de aplicaciones o juegos. En el caso de servicios a los que no vayamos a acceder con el PC y sí con, por ejemplo, una videoconsola, os dejamos un listado de los puertos que utiliza:
Puertos a abrir PS4
- Puertos TCP: 80, 443, 5223 y 10070 – 10080
- Puertos UDP: 3478, 3479, 3658 y 10070
Puertos a abrir Xbox 360, Xbox One
- Puertos TCP: 53, 80, 3074
- Puertos UDP: 53, 88, 500, 3074, 3544, 4500
Puertos a abrir PlayStation 5
- Puertos TCP: 80, 443, 3478, 3479, 3480
- Puertos UDP: 3478, 3479, 49152~65535
Puertos a abrir Xbox Series X y Xbox Series S
- Puertos TCP: 53, 80, 3074,
- Puertos UDP: 53, 88, 500, 3074, 3544, 4500
* Nota: Algunos desarrolladores de juegos requieren que abras puertos adicionales. Para saber si el juego que estás usando necesita puertos adicionales para funcionar, consulta el sitio web del desarrollador del juego.
Además de todo esto, debes saber que no vas a poder utilizar dos dispositivos distintos que hagan uso de los mismos puertos. Es decir, si tienes en la misma red una Xbox One y una Xbox Series X, no podrán conectarse a los mismos servicios de forma simultánea a menos que tengamos activado UPnP. Solo así, el router podrá encargarse de las peticiones de ambos equipos, independientemente de que estén utilizando los mismos puertos para hacer su conexión con Internet.
Entre los puertos que no debemos abrir en otros dispositivos, y siempre según las cifras recopiladas por varias firmas de seguridad, encontramos estos puertos:
- 20, 21 – FTP (File Transfer Protocol)
- 22 – SSH (Secure Shell)
- 80 – HTTP (Hypertext Transfer Protocol)
- 8080 – Alternativa HTTP
- 443 – HTTPS (Hypertext Transfer Protocol Secure)
- 8443 – PCsync HTTPS
- 139, 137, 445 – SMB (Server Message Block)
- 53 – DNS (Domain Name System)
- 23 – Telnet
- 35 – SMTP (Simple Mail Transfer Protocol)
- 69 – TFTP (Trivial File Transfer Protocol)
Otros sistemas de gestión de puertos
Para facilitar la gestión de puertos en nuestra red se han desarrollado otros sistemas como DMZ o CG-NAT. El primero permite la apertura total de puertos y es la solución extrema cuando no conseguimos que una aplicación o dispositivo funcione correctamente por este tema, el segundo es un protocolo habitual en los operadores de Internet que puede provocar algunos problemas.
DMZ, ¿lo mejor para consolas y tener NAT abierta?
Para las videoconsolas mucha gente recomienda el uso la zona DMZ o zona desmilitarizada. A grandes rasgos, esta opción coloca al dispositivo en una zona intermedia en la que tendrá todos los puertos abiertos. Esto supone un importe riesgo para la seguridad y es mucho más seguro optar por otras soluciones antes de recurrir a este extremo. La DMZ no es recomendada para un ordenador, aunque podría ser la opción final para una videoconsola.
En este caso, intentaremos antes el uso de UPnP, Port Forwarding o Port Trigger, junto con la apertura manual de los puertos necesarios para el dispositivo en cuestión. Sólo cuando esto no sea una opción o si no nos queremos complicar la vida (aun a costa de la seguridad), podemos activar el DMZ para la IP de la LAN interna en cuestión.
CG-NAT, cuando tu operador “te cierra” los puertos
Existe otro aspecto que debemos tener en cuenta cuando se trata de abrir puertos y sobre el que sólo tiene el control nuestro operador. Es decir, no podremos entrar al router y mapear los puertos, ya que esto no servirá de nada. Hablamos de CG-NAT que significa Carrier Grade Network Address Translation y es el uso de una misma IPv4 pública sobre varias direcciones privadas de forma simultánea.
Muchos operadores han recurrido a esta técnica debido a la escasez de direcciones y la falta de migración a IPv6. Entre sus inconvenientes encontramos que no tenemos la posibilidad de hacer reenvío de puertos en el propio router. Por esa razón, si necesitamos abrir un puerto, debemos pedir al operador que nos “saque” de CG-NAT.
La mayoría de los usuarios que están en CG-NAT no tienen problemas. Sin embargo, si estás dentro de este grupo e intentas, por ejemplo, jugar en línea, es posible que no puedas. Los usuarios que tienen este tipo de conexión tienen verdaderos problemas a la hora de realizar este tipo de conexiones. Un usuario de CG-NAT nunca va a poder ser anfitrión de una partida. En algunos casos, podrá unirse a partidas, pero experimentará constantes cortes, desconexiones y problemas de visibilidad de otros usuarios. A la hora de unirse a partidas, un usuario de CG-NAT solo puede hacerlo en conexiones iniciadas por un anfitrión que tiene NAT tipo 1, es decir, abierta.
Como decimos, poco puedes hacer aquí. La NAT cerrada no tiene solución. No es cuestión de entrar a tu router y cambiar parámetros. Tienes que contactar con tu operadora y solicitar que te muevan a una NAT tipo 2, es decir, moderada. Por norma general, lo harán sin ponerte pegas. Con este tipo de NAT cerrada siempre vas a tener problemas a la hora de bajar contenido a través de redes P2P, jugar en línea, configurar un servidor NAS doméstico e incluso con determinados dispositivos domóticos.
Cómo ver los puertos abiertos en un ordenador local
Para ver el listado completo de puertos abiertos en nuestra conexión existen diferentes maneras, desde el propio Símbolo de sistema, o de una manera más organizada con aplicaciones de terceros.
Desde el Símbolo de sistema
Todos los programas que utilizan una conexión a internet hacen uso del protocolo TCP/IP que permite que cada uno de ellos establezca una conexión individual utilizando una dirección IP de destino seguida de un puerto que les identifique en la red local para que a la hora de recibir el tráfico de respuesta de dicha conexión sea fácilmente identificado. Todos los programas en los sistemas operativos establecen conexiones y abren puertos para su uso, ya sean programas fiables como software malicioso.
Mantener un control de las conexiones y de los puertos nos puede facilitar notablemente la tarea de identificar posible software malicioso y no autorizado y mantener así un control mucho más concreto del sistema. Por eso, podemos monitorizar las conexiones de red de Windows sin necesidad de instalar nada. Existen varias formas de conocer todas las conexiones que establecen los programas de forma local y de los puertos que utilizan estas aplicaciones. Un ejemplo de esto podría ser ejecutando desde CMD – Símbolo de sistema el comando:
y nos mostraría una ventana similar a la siguiente con toda la información de las conexiones:
Una información útil pero que también puede ser confusa y difícil de interpretar.
Con aplicaciones externas
Además del comando en el Símbolo de sistema podemos analizar los puertos abiertos con aplicaciones de terceros. Como podemos ver, una excelente aplicación que nos va a permitir conocer los puertos que tenemos abiertos en nuestro sistema fácilmente y de forma gráfica. Además, es una aplicación gratuita y portable por lo que podremos llevarla siempre con nosotros en una memoria USB. Antes de nada, debemos asegurarnos de que están cerrados y, para ello, podemos recurrir a diferentes métodos (aplicaciones o servicios online).
CurrPorts
Para conocer de una forma mucho más sencilla los puertos y las conexiones establecidas de nuestro sistema podemos utilizar alguna aplicación como por ejemplo CurrPorts. Esta aplicación nos va a permitir conocer todas las conexiones que ocurren en tiempo real en nuestro sistema con sus correspondientes aplicaciones, puertos y más datos de interés que nos permiten conocer un mayor número de aspectos de estas.
Lo primero que debemos hacer es descargar CurrPorts desde su página web oficial. la aplicación es totalmente gratuita y se distribuye en formato portable por lo que no es necesario instalar ningún paquete en nuestro sistema, simplemente basta con descargar la aplicación, descomprimirla y ejecutarla. Nos aparecerá una ventana similar a la siguiente.
En esta ventana podemos ver los siguientes apartados:
- Nombre de la aplicación junto a su icono del sistema para una mejor identificación.
- Número de proceso.
- Protocolo utilizado (TCP/UDP).
- Puerto local utilizado.
- Nombre del puerto local (si es un puerto reservado).
- Dirección IP local que utiliza dicha conexión.
- Puerto remoto.
- Nombre del puerto remoto (si es un puerto reservado).
- Dirección IP remota.
- Dominio de la dirección IP remota.
- Estado de la conexión (establecida, cerrada, a la escucha, etc.).
- Más datos sobre la aplicación (ruta, usuario, etc.).
Este programa también nos va a permitir exportar informes de conexiones (mediante su función export) e incluso cerrar procesos y conexiones ya establecidas para bloquear toda conexión del programa con el servidor remoto. Para acceder a estas opciones bastará con seleccionar la conexión que deseemos y hacer click sobre ella con el botón derecho. Nos aparecerá el siguiente menú donde podremos elegir lo que queremos hacer con dicho proceso.
Otras aplicaciones similares
- Test de puertos abiertos: herramienta de la web Test de Velocidad que analizará todos los puertos de nuestra red para comprobar que están cerrados.
- Nmap: es una aplicación que podemos descargar e instalar en Windows, macOS y Linux diseñada en código abierto y que es gratuita para analizar tu conexión de red privada y el acceso a Internet para detectar posibles vulnerabilidades.
- Angry IP Scan: otra aplicación similar a la anterior que podemos descargar de manera gratuita para Windows, macOS y Linux.
- Zenmap: es una herramienta de Nmap destinada a escanear y analizar los puertos de tus conexiones para detectar cuáles están abiertos y el uso que se les está dando.
- Advanced Port Scanner: Advanced Port Scanner es un escáner de puertos rápido y gratuito que le permite encontrar rápidamente puertos abiertos (TCP y UDP) en las computadoras de la red y recuperar versiones de programas que se ejecutan en los puertos detectados. El programa proporciona un fácil acceso a los recursos de la red, como carpetas compartidas, HTTP, HTTPS, FTP, RDP y Radmin. Puede activar o apagar las computadoras de forma remota. También hay una opción para ejecutar comandos rápidos (ping, tracert, telnet y SSH) en un PC seleccionado.
- Process Network Monitor: También conocido como ProcNet Monitor, es un software gratuito para monitorizar y analizar la actividad de la red de todos los procesos en ejecución en su sistema. Muestra todos los puertos de red abiertos (TCP / UDP) y las conexiones de red activas para cada proceso. También presenta una característica única de «Buscador de puertos» que facilita la búsqueda de un puerto de red particular utilizado por cualquiera de los procesos en ejecución. Por ejemplo, puedes buscar el puerto 80 para encontrar todos los procesos que acceden a los servicios web (HTTP) actualmente. Puedes hacer clic con el botón derecho en cualquier proceso y realizar más acciones, como acabarlo, ver propiedades, realizar escaneos, etc.
Recuerda que abrir puertos no necesarios es una brecha de seguridad porque la podrían acceder personas no autorizadas, por lo que, siempre que no necesites tenerlos, ciérralos, no sirve para nada tener un puerto abierto si no lo vamos a aprovechar, y solo estarás haciendo más vulnerable a tu router.
Si no sabes para qué está abierto un puerto, restaura la configuración inicial del router, todos los que no sirvan para nada los volverá a cerrar, y si en algún momento notas que algo no funciona debido a esto, ya lo irás a abrir de nuevo, sin embargo, ganarás seguridad mientras tanto.
Gracias por leer absolutoyrelativo.com. ¡Hasta la próxima!