Nmap es un escáner de red que averigua qué máquinas están activas, qué puertos tienen abiertos y qué servicio y versión corre en cada uno. Por omisión escanea 1.000 puertos TCP, no los 65.535. Sus resultados no son binarios: clasifica cada puerto en uno de seis estados —open, closed, filtered, unfiltered, open|filtered y closed|filtered—, y entender la diferencia entre closed y filtered es lo que separa un escaneo útil de una lista de números. El comando que más valor da no es el más rápido sino nmap -sV, porque las versiones son lo que después se cruza contra vulnerabilidades conocidas. Y todo esto se practica en una red propia: la documentación oficial recomienda obtener siempre autorización escrita antes de escanear una red ajena.
Ver índice de contenidos
Qué es Nmap y qué no es
Nmap —de network mapper— es una herramienta de línea de comandos que envía paquetes a una o muchas máquinas y deduce, a partir de cómo responden, qué hay funcionando ahí. Lo que hace se resume en tres preguntas encadenadas:
- ¿Qué máquinas hay? Descubrimiento de hosts activos en un rango de direcciones.
- ¿Qué puertos tienen abiertos? Escaneo de puertos, que devuelve uno de seis estados por puerto.
- ¿Qué corre en cada puerto? Detección de servicio y de versión, que es la respuesta más valiosa de las tres.
Y conviene decir lo que no es. Nmap no explota vulnerabilidades: te dice que hay un servidor web con determinada versión, no entra en él. Tampoco es un escáner de vulnerabilidades como Nuclei: no mantiene un catálogo de fallos. Y no es sigiloso por defecto: deja rastro en registros y sistemas de detección.
Esta guía es el detalle de una sola herramienta. El panorama completo —en qué etapa entra Nmap, qué lo reemplaza cuando el rango es enorme y qué viene después— está en diez herramientas de auditoría de redes. Si nunca hiciste una auditoría, ese orden general conviene leerlo primero.
Dónde se practica esto
El capítulo sobre cuestiones legales de la documentación de Nmap es explícito: la mejor manera de evitar problemas es obtener siempre autorización escrita de los representantes de la red objetivo antes de iniciar cualquier escaneo, y para lo demás recomienda hablar con un abogado competente en la jurisdicción propia en lugar de confiar en un manual.
Eso deja dos escenarios sanos para aprender:
- Tu propia red domésticaEscanear tu router y tus equipos es legítimo y sorprendentemente instructivo: casi siempre aparece algún servicio abierto que no sabías que estaba ahí.
- Un laboratorio en máquinas virtualesDos o tres máquinas virtuales en una red interna aislada. Ahí podés escanear con cualquier intensidad sin afectar a nadie y comparar cómo cambia la salida al abrir o cerrar servicios.
Los ejemplos usan el rango 192.168.56.0/24, típico de una red interna de virtualización. El marco completo está en fundamentos de hacking ético.
Los seis estados de puerto
La intuición dice que un puerto está abierto o cerrado, y la realidad tiene seis casillas. La documentación oficial las define así:
| Estado | Qué significa | Qué se hace con eso |
|---|---|---|
open | Una aplicación está aceptando activamente conexiones en ese puerto | Es el hallazgo: cada puerto abierto es superficie |
closed | El puerto es accesible y responde, pero no hay aplicación escuchando | Confirma que la máquina existe y contesta |
filtered | Un filtrado de paquetes impide que los sondeos lleguen al puerto | Indica un cortafuegos delante |
unfiltered | El puerto es accesible, pero no se puede saber si está abierto o cerrado | Reintentar con otra técnica |
open|filtered | No se pudo determinar si está abierto o filtrado | Frecuente en UDP: requiere sondeo específico |
closed|filtered | No se pudo determinar si está cerrado o filtrado | Aparece con técnicas de evasión |
La distinción entre closed y filtered es la que importa. Cerrado significa que alguien del otro lado contesta «acá no hay nada»: la máquina está viva y sin cortafuegos en ese punto. Filtrado significa que algo se interpuso. Son conclusiones opuestas sobre la arquitectura de la red.
La idea que cambia todo
Los estados describen cómo ve Nmap ese puerto desde su posición, no una propiedad del puerto en sí. El mismo puerto puede aparecer open desde la red interna y filtered desde afuera. Por eso un escaneo siempre se anota junto con el lugar desde el que se hizo.
Los primeros escaneos
El orden natural es de menos a más: primero qué hay vivo, después qué puertos, y solo entonces qué servicios.
# Sobre tu propia red o con autorización escrita.
# Descubrimiento: qué máquinas están activas, sin escanear puertos.
nmap -sn 192.168.56.0/24
# Escaneo por omisión: los 1.000 puertos TCP más habituales.
nmap 192.168.56.101
# Los 65.535 puertos TCP. Tarda bastante más y no siempre hace falta.
nmap -p- 192.168.56.101
# Puertos concretos, o los N más comunes.
nmap -p 22,80,443,3306 192.168.56.101
nmap --top-ports 100 192.168.56.101
# Tratar todas las máquinas como activas: útil cuando el ping está bloqueado
# y el descubrimiento devuelve que no hay nada aunque sí lo haya.
nmap -Pn 192.168.56.101Sobre las técnicas de escaneo, dos son las que se usan casi siempre. -sS es el escaneo SYN: no completa la conexión, es más rápido y requiere privilegios de administrador. -sT es el escaneo de conexión completa, que funciona sin privilegios porque usa la misma llamada al sistema que cualquier programa. Y -sU escanea UDP, que es lento y ruidoso en estados ambiguos pero necesario: DNS, SNMP y varios servicios de infraestructura viven ahí y un escaneo que solo mira TCP los deja invisibles.
Versiones y sistema operativo
Acá está el valor real de la herramienta. Saber que el puerto 8080 está abierto sirve poco; saber que ahí corre una versión concreta de un servidor de aplicaciones sirve mucho, porque es el dato que se cruza contra fallos publicados.
# Detección de servicio y versión: el escaneo que más información da.
nmap -sV 192.168.56.101
# Insistir más en la identificación. La intensidad va de 0 (liviana) a 9.
nmap -sV --version-intensity 9 192.168.56.101
# Detección de sistema operativo. Necesita privilegios y adivina: no es un hecho.
sudo nmap -O 192.168.56.101
# La combinación habitual de un inventario: versiones + scripts por omisión.
sudo nmap -sV -sC -p- 192.168.56.101Dos advertencias. La detección de versión puede equivocarse, sobre todo si el servicio está detrás de un intermediario o se anuncia con una cadena modificada a propósito: al informe va «Nmap reporta X», no «el servidor es X». Y -O es una inferencia estadística sobre particularidades de la pila de red: acierta seguido, y se equivoca lo suficiente como para no apoyar conclusiones en ella sola.
El motor de scripts
Nmap incluye un motor de scripts —NSE, por Nmap Scripting Engine— que amplía lo que la herramienta puede averiguar sobre cada servicio que encontró. Los scripts se agrupan en categorías, y la distinción entre ellas es de seguridad, no de comodidad.
# -sC es el atajo de --script=default: scripts seguros y de recolección.
nmap -sC 192.168.56.101
# Una categoría concreta.
nmap --script=safe 192.168.56.101
# Un script puntual: qué versiones de TLS y qué cifrados acepta el servidor.
nmap -p 443 --script=ssl-enum-ciphers 192.168.56.101Hay categorías de scripts pensadas para intentar explotar o para provocar denegación de servicio. Ejecutarlas cambia la naturaleza de lo que estás haciendo: pasa de observar a intervenir, y eso tiene que estar autorizado de forma explícita y separada en el alcance del trabajo. En un laboratorio propio, adelante. Contra cualquier otra cosa, no sin permiso específico por escrito.
Velocidad y formatos de salida
Nmap tiene plantillas de temporización de -T0 a -T5, donde más alto es más rápido. Usar siempre -T5 es un error: en redes con equipos embebidos —impresoras, cámaras, controladores industriales— un escaneo agresivo deja servicios fuera de línea. La opción de un trabajo real no es la más rápida, es la que no rompe nada.
# Temporización: -T4 es un punto razonable en redes modernas y estables.
# En redes con equipos frágiles, bajar a -T2 y coordinar la ventana.
nmap -T4 -sV 192.168.56.101
# Guardar la salida. -oA escribe los tres formatos principales de una vez.
nmap -sV -oA inventario-2026-07-28 192.168.56.0/24
# O cada formato por separado: normal, XML y procesable con grep.
nmap -sV -oN salida.txt -oX salida.xml -oG salida.gnmap 192.168.56.101Guardar la salida no es una manía de orden. El XML lo consumen otras herramientas, el formato procesable con grep alimenta el paso siguiente, y los escaneos fechados permiten lo más útil: comparar. Un puerto que apareció desde el escaneo anterior es el tipo de hallazgo que justifica el trabajo.
Cómo se lee el resultado
Una salida típica se ve así:
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 9.6p1 Ubuntu
80/tcp open http nginx 1.24.0
443/tcp open ssl/http nginx 1.24.0
3306/tcp filtered mysql
8080/tcp closed http-proxyQué se hace con eso:
- La columna VERSION es el trabajo. Cada versión concreta se anota y se consulta después contra avisos del fabricante y catálogos de vulnerabilidades. Sin
-sVesa columna llega vacía y el escaneo pierde la mitad de su valor. - El
filtereddel 3306 es un dato de arquitectura. Hay un cortafuegos protegiendo la base de datos. Eso está bien, y conviene verificar si sigue estando bien desde otras posiciones de la red. - El
closeddel 8080 no es lo mismo. Ahí no hay filtrado: si mañana alguien levanta un servicio en ese puerto, queda expuesto sin que nadie cambie una regla.
Errores frecuentes
- Escanear sin autorización escrita. La documentación oficial recomienda obtenerla siempre antes de tocar una red ajena.
- Creer que el escaneo por omisión cubre todo. Son 1.000 puertos TCP de 65.535, y ningún puerto UDP.
- No usar
-sV. Sin versiones, el resultado es una lista de números que no se puede cruzar contra nada. - Confundir
closedconfiltered. Llevan a conclusiones opuestas sobre la arquitectura de la red. - Usar
-T5por costumbre. En redes con equipos embebidos, un escaneo agresivo tira servicios. - No guardar la salida. Sin escaneos fechados no se puede comparar, y comparar es donde aparecen los cambios.
- Ignorar UDP por completo. DNS y SNMP viven ahí, y son de los servicios más interesantes de una red.
Preguntas frecuentes
¿Cuántos puertos escanea Nmap por defecto?
Mil puertos TCP, según la documentación oficial. No son los primeros mil por número sino los mil más habituales según las mediciones del propio proyecto, y no incluye ningún puerto UDP. Es un valor pensado para que un escaneo rápido encuentre lo que suele estar, y por eso mismo puede pasar por alto un servicio en un puerto poco común. Para cubrir el rango completo se usa la opción de todos los puertos, que tarda bastante más, y para revisar UDP hay que pedirlo de forma explícita con su propia técnica de escaneo.
¿Cuál es la diferencia entre un puerto cerrado y uno filtrado?
Un puerto cerrado es accesible: recibe los sondeos y los responde, simplemente no hay ninguna aplicación escuchando ahí. Un puerto filtrado es otra cosa: un filtrado de paquetes impide que los sondeos lleguen, así que Nmap no puede determinar si hay algo o no. La diferencia importa porque describe la arquitectura de la red. Cerrado significa que la máquina está expuesta y contesta; filtrado significa que hay un cortafuegos delante. Además, los estados dependen del punto de la red desde el que se escanea: el mismo puerto puede verse abierto desde adentro y filtrado desde afuera.
¿Nmap explota vulnerabilidades?
No en su uso normal. Nmap observa y describe: qué hay activo, qué puertos responden y qué servicio y versión parece correr en cada uno. Esa información es la entrada de otras herramientas, no un ataque. La matización es que su motor de scripts incluye categorías pensadas para intentar explotar o para provocar interrupciones de servicio, y ejecutarlas cambia la naturaleza de la actividad: pasa de observar a intervenir. Eso requiere autorización explícita y separada, y fuera de un laboratorio propio no se lanza por curiosidad.
¿Se nota que estoy escaneando?
Sí. Un escaneo normal deja huellas en los registros de los servicios, en el cortafuegos y en cualquier sistema de detección de intrusiones que esté mirando. Nmap tiene opciones de evasión, pero usarlas en un trabajo autorizado suele ser contraproducente: si el equipo de defensa no puede distinguir tu actividad de un incidente real, se activa una respuesta que nadie necesitaba. En una auditoría lo habitual es avisar la ventana de tiempo y la dirección desde la que se escanea.
¿Qué temporización conviene usar?
Depende del equipamiento, no de la prisa. Las plantillas van de la más lenta a la más rápida, y en redes modernas con servidores sanos una temporización alta es razonable. El problema son los equipos embebidos: impresoras, cámaras, controladores industriales y algunos dispositivos de red tienen pilas de comunicación frágiles y pueden dejar de responder ante un escaneo agresivo. Por eso en redes con ese tipo de equipos se baja la intensidad y se coordina la ventana con quien opera los servicios, con un contacto acordado por si algo se cae.
¿Por qué guardar la salida en varios formatos?
Porque cada uno sirve para algo distinto. El formato normal es el que se lee; el XML es el que consumen otras herramientas y el que permite generar informes; y el formato procesable con utilidades de texto sirve para extraer listas de direcciones y puertos que alimentan el paso siguiente. Hay una opción que escribe los tres de una vez. Y la razón más importante: los escaneos fechados permiten comparar, y un puerto que apareció desde el escaneo anterior es uno de los hallazgos más valiosos que se pueden reportar.
Fuentes
Documentación oficial y material de la comunidad consultados para esta guía. Fecha de consulta: 28 de julio de 2026.
Aportes de la comunidad Underc0de
- Underc0de, blog. Cheat Sheet: NMAP, por Denisse, 10 de septiembre de 2020. Publicado en la primera edición de la revista UnderDOCS de la comunidad. Es el punto de partida de esta guía: el aporte original es una hoja de referencia de comandos, y acá se reorganizó como recorrido explicado y se verificó cada opción contra la documentación oficial vigente.
- Underc0de, foro. Sección Hacking. Discusiones de la comunidad sobre reconocimiento y metodología en contextos autorizados.
Documentación oficial
- Nmap. Port Scanning Basics. Las definiciones textuales de los seis estados de puerto y el dato de que por omisión se escanean 1.000 puertos TCP.
- Nmap. Options Summary. El resumen oficial de opciones, del que salen todas las banderas citadas en esta guía.
- Nmap. Legal Issues. La recomendación de obtener siempre autorización escrita antes de escanear.
- Nmap. Nmap Scripting Engine. Documentación del motor de scripts y de sus categorías.
- Nmap. Download. Paquetes oficiales para Linux, Windows y macOS.