Sospecho que un programa está escuchando en el puerto 8000
de mi máquina.
Cuando ejecuto el siguiente comando, aparece este error:
> python -m SimpleHTTPServer
# Lots of python error
socket.error: [Errno 98] Address already in use
Si uso otro puerto ( 8000
es el predeterminado), el servidor web funciona bien.
Si corro wget localhost:8000
desde la línea de comando, vuelve 404 Not Found
.
¿Qué puedo hacer (o qué herramientas están disponibles) para encontrar qué programa está escuchando en el puerto 8000
y desde allí dónde está configurado ese programa?
networking
webserver
sockets
yansal
fuente
fuente
-s TCP:LISTEN
restringe el resultado al socket de escucha real y su proceso.PID 1889
¿ regresa ? watPuede usar netstat para ver qué proceso está escuchando en qué puerto.
Puede usar este comando para tener un detalle completo:
si necesita saber exactamente cuál está escuchando en el puerto 8000, puede usar esto:
No hay ningún proceso que pueda esconderse de netstat.
fuente
netstat -peanut
es más fácil de recordar quenetstat -taupen
!Para exponer la respuesta por @ 33833, puede obtener información muy detallada, por ejemplo:
Puedo ver que el calamar es el proceso, pero en realidad es mi el
squid-deb-proxy
que está tomando el puerto.Otro buen ejemplo de una aplicación de Java:
Puede ver en
lsof
(LiSt Open Files) que es java, lo que no es útil. Ejecutando elps
comando con el PID podemos ver de inmediato que es CrashPlan.fuente
lsof -t -i :8000 | xargs ps -fp
sudo
pero después de eso funcionó para mí. Gracias.sudo
que no reciba un error, simplemente no obtendrá nada como respuesta.Probar
ss
desde eliproute2
paquete:fuente
ss
también tiene sus propias capacidades de filtrado:ss -nlp '( sport = :8000 )'
.Otra forma de usar
socklist
desde elprocinfo
paquete:man socklist
sudo socklist
fuente
Puedes usar nmap.
para instalarlo, simplemente presione Ctrl+ Alt+ Ten su teclado para abrir Terminal. Cuando se abra, ejecute el siguiente comando:
Para obtener más información sobre nmap y otras utilidades, vaya aquí
1 Fuente: garron.me
fuente
[nmap] tries to guess which service is listening on each port, but it can make mistakes
justo antes de que sugiera un método real para averiguar qué proceso posee el socket.