Cómo identificar el proceso que está usando un puerto TCP determinado
Para encontrar rápidamente que proceso está usando el puerto en cuestión lo más fácil y recurrente es usar el comando "netstat" y bueno... vi una breve entrada en la wiki de SAP y siempre está bien tener una chuleta a mano en el blog... :-P
LINUX:
> netstat -nepal|grep 8080
tcp 0 0 :::8080 :::* LISTEN 10404 18906159 7952/java
En este primer ejemplo (Linux) vemos que el proceso con PID 7952 (java) está usando el puerto TCP 8080.
WINDOWS:
> netstat -nao|findstr 8080
TCP 0.0.0.0:8080 0.0.0.0:0 LISTENING 3696
TCP []:8080 []:0 LISTENING 3696
En este ejemplo en Windows, encontramos que el proceso con PID 3696 es el que tiene ocupado el puerto (8080).
También es posible usar en Windows "netstat -ab" que mostrará todos los procesos asociados al puerto. La opción "a" lista todas las conexiones y la opción "b" muestra el ejecutable correspondiente.
AIX:
> netstat -Aan | grep 8000 | grep LISTEN
f1000e000130bbb8 tcp4 0 0 *.8000 *.* LISTEN
> rmsock f1000e000130bbb8 tcpcb
The socket 0xf1000e000130b808 is being held by proccess 13893704 (icman).
> ps -ef | grep 13893704
vmcadm 13893704 9175156 0 Dec 22 - 0:17 icman -attach pf=/usr/sap/VMC/SYS/profile/VMC_DVEBMGS00_is4039
SOLARIS:
> ps -ef| awk '{print $2}'| xargs -I '{}' sh -c 'echo Verifying PID {}; pfiles {} 2>/dev/null|grep "port: 3900"|grep -v grep'
(...)
Verifying PID 3150
Verifying PID 4848
Verifying PID 4891
Verifying PID 7900
sockname: AF_INET 0.0.0.0 port: 3900
Verifying PID 4831
Verifying PID 23568
Verifying PID 7928
Verifying PID 9662
(...)
> ps -ef|grep 7900|grep -v grep
qpkadm 7900 7840 0 Jun 21 ? 1:38 ms.sapQPK_DVEBMGS00 pf=/usr/sap/QPK/SYS/profile/QPK_DVEBMGS00_fs4400
El primer comando mostrará la lista con el PID de todos los procesos activos en el sistema. El número de puerto debe ser indicado con el comando "grep".
El PID que está usando el puerto será el inmediatamente anterior a la línea que termina en "port: " ("port: 3900" en el ejemplo anterior).
El segundo comando mostrará la informacion del proceso en sí mismo.
Fuente: https://wiki.scn.sap.com/wiki/display/SI/How+to+find+the+process+binding+a+TCP+port
Via: www.hackplayers.com
Cómo identificar el proceso que está usando un puerto TCP determinado
Reviewed by Zion3R
on
7:22
Rating: