A continuación explicaremos cómo saber qué apliación o servicio de Windows está usando un puerto determinado, para ello usaremos el comando Windows: netstat. Para ello abriremos una ventana de MS-DOS
Qué aplicación está ocupando nuestros puertos de comunicaciones?
A continuación explicaremos cómo saber qué apliación o servicio de Windows está usando un puerto determinado, para ello usaremos el comando Windows: netstat. Para ello abriremos una ventana de MS-DOS (consola de comandos o shell), desde el botón "Inicio", escribimos "cmd", pulsamos con el botón derecho del ratón sobre "cmd.exe" y seleccionamos "Ejecutar como administrador":
Ejecutaremos el siguiente comando Windows:
netstat -naob
Nos devolverá un listado de todos los puertos de comunicaciones que están siendo usados actualmente con el protocolo (TCP, UDP, TCPv6 y UDPv6), dirección IP local, dirección IP remota, estado y PID (número que identifica el proceso en las tareas que se están ejecutando):
Si queremos guardar el resultado en un fichero ejecutaremos el comando Windows:
netstat -naob > aplicaciones_puertos.txt
Con el comando comando Windows:
notepad aplicaciones_puertos.txt
Abriremos el Bloc de notas con el resultado del comando anterior, desde aquí podremos consultar, buscar y guardar todas las aplicaciones que abren puertos de comunicaciones en nuestro equipo:
Un ejemplo del resultado de este comando:
Conexiones activas
Proto Dirección local Dirección remota Estado PID
TCP 0.0.0.0:21 0.0.0.0:0 LISTENING 2068
ftpsvc
[svchost.exe]
TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 4
No se puede obtener informaci¢n de propiedad
TCP 0.0.0.0:111 0.0.0.0:0 LISTENING 3848
[VeeamNFSSvc.exe]
TCP 127.0.0.1:63924 127.0.0.1:63925 ESTABLISHED 7216
[firefox.exe]
TCP 127.0.0.1:63925 127.0.0.1:63924 ESTABLISHED 7216
[firefox.exe]
TCP 127.0.0.1:63926 127.0.0.1:63927 ESTABLISHED 7216
[firefox.exe]
TCP 127.0.0.1:63927 127.0.0.1:63926 ESTABLISHED 7216
[firefox.exe]
TCP 127.0.0.1:64151 127.0.0.1:64152 ESTABLISHED 5436
[vmware-vmrc.exe]
TCP 127.0.0.1:64152 127.0.0.1:64151 ESTABLISHED 5436
[vmware-vmrc.exe]
En el caso en que no aparezca el ejecutable de la aplicación que está usando el puerto podremos consultarlo de la siguiente forma
2. Abriremos el Administrador de tareas desde el botón "Inicio" - "Panel de control" "Información y herramientas de rendimiento":
Pulsaremos en "Herramientas avanzadas":
Pulsaremos en "Abrir el Administrador de tareas":
Ahora mostraremos la columna "PID", para ello pulsaremos en el menú "Ver" - "Seleccionar columnas":
Marcaremos "Identificador de proceso (PID)":
Si queremos que nos muestre la ubicación del fichero ejecutable del proceso que usa el puerto marcaremos también "Nombre de ruta de la imagen":
Buscaremos el PID consultado anteriormente correspondiente al ejecutable que está abriendo el puerto, en nuestro caso "1320", así podremos consultar la ruta (carpeta) y ejecutable que lo está usando:
Averiguar qué aplicación está usando un puerto de comunicaciones en Linux
En el caso de sistemas operativos Linux podremos usar el siguiente comando Linux para obtener los procesos y el puerto de comunicaciones que usan:
lsof -w -n -i
El comando Linux nos mostrará el proceso, el PID, el usuario, tipo, dispositivo, protocolo y estado de la conexión:
Para obtener la aplicación que tiene un puerto abierto en Linux usaremos el comando Linux:
ls -l /proc/XXX/exe
Donde XXX será el PID del proceso a consultar.
Existen otros comandos Linux para obtener datos de los procesos que usan puertos de comunicaciones como:
netstat -panut | grep LISTEN
O también:
ss -a | grep LISTEN
Fuente: ajpdsoft.com