Saltar al contenido

¿Cómo puedo determinar si un puerto está abierto en un servidor de Windows?

Te damos la solución a esta incógnita, o por lo menos eso creemos. Si tienes interrogantes deja tu comentario, que para nosotros será un placer ayudarte

Solución:

Suponiendo que es un puerto TCP (en lugar de UDP) que está tratando de usar:

  1. En el propio servidor, utilice netstat -an para verificar qué puertos están escuchando.

  2. Desde el exterior, solo use telnet host port (o telnet host:port en sistemas Unix) para ver si la conexión se rechaza, se acepta o se agota el tiempo de espera.

En esa última prueba, entonces en general:

  • conexión denegada significa que no se está ejecutando nada en ese puerto
  • aceptado significa que algo se está ejecutando en ese puerto
  • se acabó el tiempo significa que un firewall está bloqueando el acceso

En Windows 7 o Windows Vista, la opción predeterminada ‘telnet’ no se reconoce como un comando interno o externo, programa operativo o archivo por lotes. Para resolver esto, simplemente habilítelo: Haga clic en *Inicio** → Panel de controlProgramasActivar características de Windows Encendido o apagado. En la lista, desplácese hacia abajo y seleccione Cliente Telnet y haga clic OK.

En Windows puedes usar

netstat -na | find "your_port"

para acotar los resultados. También puede filtrar por LISTENING, ESTABLISHED, TCP y tal. Sin embargo, tenga en cuenta que distingue entre mayúsculas y minúsculas.

Si está verificando desde el exterior, no desde el servidor en sí, y no quiere molestarse en instalar telnet (ya que no viene con las últimas versiones de Windows) o cualquier otro software, entonces tiene PowerShell nativo:

Test-NetConnection -Port 800 -ComputerName 192.168.0.1 -InformationLevel Detailed

(Desafortunadamente, esto solo funciona con PowerShell 4.0 o posterior. Para verificar su versión de PowerShell, escriba $PSVersionTable.)

PD: tenga en cuenta que en estos días hay algunos reclamos en la twittersfera que sugieren que esta respuesta podría mejorarse mencionando “Test-Connection” de PowerShell Core, o el acceso directo “tnc”. ¡Vea https://twitter.com/david_obrien/status/1214082339203993600 y ayúdeme a editar esta respuesta para mejorarla, por favor!


(Si tiene una PSVersion < 4.0, no tiene suerte. Consulte esta tabla:

Ingrese la descripción de la imagen aquí

Aunque puede actualizar su versión de PowerShell instalando Windows Management Framework 4.0, no funcionó para mí, Test-NetConnection cmdlet todavía no está disponible).

valoraciones y comentarios

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *