Respuestas:
Nmap ("Network Mapper") es una utilidad gratuita y de código abierto para la exploración de redes o la auditoría de seguridad
nmap 192.168.1.33
PC interna o nmap external ip address
más información man nmap
nmap localhost
y nmap 192.168.0.3
(o lo que sea que sea su IP de máquina)
netstat -ln
. Verá instantáneamente todos los puertos abiertos.
nmap localhost
no encontró servicios que estuvieran vinculados solo a localhost. Por ejemplo, corro influxd
con bind-address:localhost:8086
. Eso no apareció en sudo nmap localhost
, pero sí apareció en sudo netstat -tulpn
.
Siempre he usado esto:
sudo netstat -ntlp | grep LISTEN
sudo netstat -ntlp | grep LISTEN
... use lo sudo
contrario ... pid no se imprimirá.
-l
Ya filtros para escuchar. grep LISTEN
no ayudará más allá de ocultar 2 líneas de información de encabezado.
-t
: tcp -l
,: socket de escucha -p
,: show pid y nombre del programa,: -n
print en 127.0.0.1:80
lugar de localhost:http
. Referencia: linux.die.net/man/8/netstat
netstat
consudo apt-get install net-tools
sudo netstat --tcp --listening --programs --numeric
. No es necesario usarlo a grep
menos que desee eliminar los encabezados de columna.
Otras buenas maneras de averiguar qué puertos están escuchando y cuáles son las reglas de su firewall:
sudo netstat -tulpn
sudo ufw status
nmap
, la usabilidad de netstat
es basura.
Para enumerar los puertos abiertos, use el netstat
comando
Por ejemplo:
$ sudo netstat -tulpn | grep LISTEN
tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 5452/dnsmasq
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 1037/cupsd
tcp6 0 0 ::1:631 :::* LISTEN 1037/cupsd
En el ejemplo anterior, tres servicios están vinculados a la dirección de bucle invertido.
Los servicios IPv4 vinculados a la dirección de bucle invertido "127.0.0.1" solo están disponibles en la máquina local. La dirección de bucle invertido equivalente para IPv6 es ":: 1". La dirección IPv4 "0.0.0.0" significa "cualquier dirección IP", lo que significaría que otras máquinas podrían conectarse potencialmente a cualquiera de las interfaces de red configuradas localmente en el puerto específico.
Otro método es usar el lsof
comando:
$ sudo lsof -nP -i | grep LISTEN
cupsd 1037 root 9u IPv6 11276 0t0 TCP [::1]:631 (LISTEN)
cupsd 1037 root 10u IPv4 11277 0t0 TCP 127.0.0.1:631 (LISTEN)
dnsmasq 5452 nobody 5u IPv4 212707 0t0 TCP 127.0.0.1:53 (LISTEN)
Para más detalles ver man netstat
o man lsof
.
-l
opción era listar LISTEN
puertos. ¿Entonces el grep sería superfluo aquí?
Esto es suficiente para mostrar que hay un proceso escuchando en la dirección IP 0.0.0.0
(necesaria para que responda a cualquier solicitud) en el puerto 80 (número de puerto del servidor web estándar). En mi caso esto muestra que es el servidor weblighttpd
$ sudo netstat -ntlp | grep :80
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 2495/lighttpd
Si luego desea asegurarse de que lo único que permite a través de su firewall es el puerto 80, a menudo uso ShieldsUp de www.grc.com para realizar una prueba de firewall.
sudo iptables -L
enumerará las reglas de puerto para su PC. Tenga en cuenta que si está utilizando los cortafuegos ufw o shorewall, la salida puede ser difícil de leer. En ese caso más bien use sudo ufw status
por ejemplo.
Esto no es muy útil por sí solo, ya que incluso si un puerto es de acceso abierto, aún se denegará si no hay ningún proceso de escucha en ese puerto.
Si está buscando monitoreo continuo de puertos para máquinas de servidor o locales, creo que también puede usar la versión gráfica de nmap, es decir, Zenmap para una versión más detallada
Zenmap es la interfaz gráfica de usuario (GUI) oficial para Nmap Security Scanner.
Soportes disponibles (Linux, Windows, Mac OS X, BSD, etc.)
Eche un vistazo a esta vista de herramienta:
nmap localhost
funcionó muy bien.