Explicamos en este
tutorial cómo averiguar qué aplicación o servicio está usando un
determinado puerto de comunicaciones en el equipo. Mostramos cómo
saberlo en sistemas operativos Windows y Linux sin usar software adicional de terceros, con las propias herramientas que incluye el sistema operativo.
- Averiguar qué aplicación está usando un puerto de comunicaciones en Windows.
- Averiguar qué aplicación está usando un puerto de comunicaciones en Linux.
- Artículos relacionados.
- Créditos.
Averiguar qué aplicación está usando un puerto de comunicaciones en Windows
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:
1. Ejecutaremos el comando anterior con el parámetro "o" que nos mostrará el PID
del proceso que está abriendo el puerto, buscaremos el puerto del que
queramos averiguar la aplicación o servicio que lo está usando. En en el
ejemplo buscamos qué aplicación está usando el puerto "3306",
anotaremos el PID de la aplicación que aparece al final de la línea (en el ejemplo "1320"):
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/exeDonde 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
Artículos relacionados
- Instalación de Windows Server 2003 Enterprise Edition SP2.
- Instalar Windows Server 2012 Datacenter x64.
- Instalar Windows 8, virtualizar con VMware Workstation.
- Instalar Microsoft Windows Server 2008 Standard Edition R2 x64.
- Instalar y testear Windows Server 2008 Enterprise Release Candidate.
- Instalar Microsoft Windows 7 Ultimate Beta 1 Build 7000.
- Instalación y testeo de Windows Vista Beta 2.
- Instalación y configuración de Windows XP Service Pack 3.
- Instalar Windows XP Service Pack 3, configurar Windows XP.
- Cambiar la configuración de la Red Local mediante comando.
- Utilizar un PC con Windows XP y conexión a Internet como servidor proxy.
- Instalar monitor de red gratuito con PRTG Network Monitor.
- Instalar, activar, configurar el servicio de DHCP en Windows 2000/2003.
- Montar un servidor FTP en un equipo con Windows 7.
- Montar servidor de DNS en Microsoft Windows Server 2008.
- Agregar equipos Windows XP y Windows 7 a un dominio Windows Server 2003.
- Socket Visual Basic .Net, conexión mediante socket VB.Net y System.Net.Sockets.
- Enviar y recibir datos mediante el protocolo UDP con Borland Delphi 6.
- Artículos del Proyecto AjpdSoft sobre los sistemas operativos Microsoft Windows.
- Cómo conectar dos equipos en red por el puerto paralelo con Windows 98 y XP.
- AjpdSoft Socket VB.Net.
- AjpdSoft Chat UDP.
- AjpdSoft Ping Visual código fuente Delphi.
- AjpdSoft Traceroute.
- AjpdSoft Ping ICMP.
- AjpdSoft Verificar existencia email.
- AjpdSoft Escaneador de puertos.
- AjpdSoft Envío SMS.
- AjpdSoft Información de Fichero.
- AjpdSoft Conectar unidad de red.
- AjpdSoft Notificador cambios en sistema.
- AjpdSoft Validación LDAP.
- AjpdSoft Obtención datos Active Directory.
- AjpdSoft Aviso Cambio IP Pública.
- AjpdSoft Inventario PCs.
- Definición Socket.
- Definición IP.
- Definición TCP.
- Definición UDP.
- Definición PID.
- Definición LAN.
- Definición URL.
- Definición CPU.
- Definición RAM.
Créditos
Artículo realizado íntegramente por Alonsojpd miembro fundador del Proyecto AjpdSoft.