hp-ux - usando - ver puertos abiertos ubuntu
¿Qué procesos están usando qué puertos en Unix? (7)
netstat -l (suponiendo que venga con esa versión de UNIX)
Necesito averiguar qué puertos están conectados a qué procesos en una máquina Unix (HP Itanium). Lamentablemente, lsof
no está instalado y no tengo forma de instalarlo.
¿Alguien sabe un método alternativo? Una sesión bastante larga de Google no ha encontrado nada.
netstat -ln | awk ''/^(tcp|udp)/ { split($4, a, /:/); print $1, a[2]}'' | sort -u
te da los puertos tcp / udp activos. Luego puede usar los puertos con fuser -n tcp
o fuser -n udp
, como root, y suponiendo que el fuser
es un fusor GNU o tiene opciones similares.
Avísame si necesitas más ayuda.
netstat -pln
EDITAR: solo Linux, en otros UNIXes netstat puede no ser compatible con todas estas opciones.
Dado (casi) que todo en Unix es un archivo, y lsof lista archivos abiertos ...
Linux: netstat -putan or lsof | grep TCP
netstat -putan or lsof | grep TCP
OSX: lsof | grep TCP
lsof | grep TCP
Otro Unixen: lsof
manera ...
Pruebe pfiles PID
para mostrar todos los archivos abiertos para un proceso.
Qué proceso usa el puerto en Unix;
1. netstat -Aan | puerto grep
root> netstat -Aan | grep 3872
salida> f1000e000bb5c3b8 tcp 0 0 * .3872 . ESCUCHA
2. rmsock f1000e000bb5c3b8 tcpcb
salida> El socket 0xf1000e000bb5c008 está siendo retenido por el proceso 13959354 (java).
3. ps -ef | grep 13959354
¿Asumiendo que esto es HP-UX? ¿Qué hay de los Ptools ? ¿Los tienes instalados? Si es así puedes usar "pfiles" para encontrar los puertos en uso por la aplicación:
pfiles imprime información sobre todos los descriptores de archivo abiertos de un proceso. Si el descriptor de archivo corresponde a un archivo, entonces pfiles imprime la información fstat (2) y fcntl (2).
Si el descriptor de archivo corresponde a un socket, entonces pfiles imprime información relacionada con el socket, como el tipo de socket, la familia de socket y la familia de protocolos.
En el caso de la familia de sockets AF_INET y AF_INET6, también se imprime información sobre el host par.
para f en $ (ps -ex | awk ''{print $ 1}''); hacer eco $ f; pfiles $ f | grep PORTNUM; hecho
cambie PORTNUM por el número de puerto. :) puede ser child pid, pero lo acerca lo suficiente para identificar la aplicación problemática.