Comando Linux nmap
Manual completo de comandos Linux
nmap (Network Mapper) es una de las herramientas más potentes de exploración de red y auditoría de seguridad en sistemas Linux. Ayuda a los administradores de sistemas y expertos en seguridad a:
- Descubrir hosts activos en la red
- Escanear puertos y servicios abiertos
- Identificar el tipo y la versión del sistema operativo
- Detectar vulnerabilidades en servicios de red
nmap, debido a su flexibilidad, potentes funciones y compatibilidad multiplataforma, se utiliza ampliamente en la evaluación de seguridad de redes, la administración de sistemas, la monitorización de redes y otros campos.
Sintaxis básica
El formato básico del comando nmap es el siguiente:
nmap [扫描类型] [选项] {目标规范}
Donde:
Tipo de escaneo: Especifica la técnica de escaneo que utiliza nmapOpciones: Configura diversos parámetros que controlan el comportamiento del escaneoEspecificación de destino: Puede ser una dirección IP, un nombre de host o un rango de IP
Tipos de escaneo comunes
Escaneo TCP SYN (-sS)
El método de escaneo más utilizado y predeterminado, también conocido como «escaneo semiabierto»:
nmap -sS 192.168.1.1
Características:
- Rápido y sigiloso
- No completa el triple handshake de TCP
- Requiere permisos de root
Escaneo de conexión TCP (-sT)
Escaneo estándar de conexión TCP:
nmap -sT 192.168.1.1
Características:
- No requiere permisos de root
- Establece una conexión TCP completa
- Es más lento y fácil de detectar
Escaneo UDP (-sU)
Escanear puertos UDP:
nmap -sU 192.168.1.1
Características:
- El escaneo UDP es más lento
- Muchos servicios UDP no responden
- Requiere permisos de root
Detección de sistema operativo (-O)
Identifica el sistema operativo del host objetivo:
nmap -O 192.168.1.1
Opciones de parámetros comunes
Especificación de puertos (-p)
Escanea puertos específicos o rangos de puertos:
Ejemplos
nmap -p 1-100 192.168.1.1 # Escanear los puertos 1-100
nmap -p- 192.168.1.1 # Escanear los 65535 puertos
Detección de versión de servicio (-sV)
Sondea la información detallada de la versión del servicio:
nmap -sV 192.168.1.1
Velocidad de escaneo (-T)
Controla la velocidad de escaneo (0-5; cuanto mayor sea el número, más rápido):
nmap -T4 192.168.1.1 # 较快的扫描速度
Formato de salida
Opciones de múltiples formatos de salida:
Ejemplos
nmap -oX result.xml 192.168.1.1 # Formato XML
nmap -oG result.gnmap 192.168.1.1 # Formato grepable
Ejemplos prácticos
Escaneo básico de red
nmap 192.168.1.1
Ejemplo de salida:
Starting Nmap 7.80 ( https://nmap.org ) at 2023-05-01 10:00 UTC Nmap scan report for 192.168.1.1 Host is up (0.045s latency). Not shown: 998 closed ports PORT STATE SERVICE 22/tcp open ssh 80/tcp open http 443/tcp open https
Escaneo completo (sistema operativo + versión de servicio)
nmap -A 192.168.1.1
Escanear toda la subred
nmap 192.168.1.0/24
Leer la lista de objetivos desde un archivo
nmap -iL targets.txt
Interpretación de los resultados del escaneo
Significado de los estados de puerto en la salida de nmap:
| Estado | Descripción |
|---|---|
| open | Puerto abierto con una aplicación a la escucha |
| closed | Puerto cerrado (el host es accesible, pero no hay ninguna aplicación a la escucha) |
| filtered | Puerto filtrado por firewall/red; no se puede determinar el estado |
| unfiltered | Puerto accesible, pero no se puede determinar si está abierto o cerrado (utilizado en el escaneo ACK) |
| open|filtered | No se puede determinar si el puerto está abierto o filtrado (común en el escaneo UDP) |
| closed|filtered | No se puede determinar si el puerto está cerrado o filtrado |
Consideraciones de seguridad y legales
- Uso legal: Escanea únicamente redes y sistemas sobre los que tengas permiso
- Obtener autorización: Antes de utilizarlo en una red empresarial, asegúrate de obtener autorización por escrito
- Evitar el uso indebido: Los escaneos rápidos a gran escala pueden considerarse comportamiento de ataque
- Respetar la privacidad: No escanees recursos de red que no te pertenezcan
Técnicas avanzadas
Evadir el firewall
Ejemplos
nmap --data-length 100 192.168.1.1 # Añadir datos aleatorios
nmap -D RND:5 192.168.1.1 # Escaneo señuelo
Script de escaneo programado
Ejemplos
DATE=$(date +%Y%m%d)
nmap -sS -p- -T4 -oN scan_$DATE.log 192.168.1.0/24
Comparación de resultados
ndiff scan1.xml scan2.xml
Preguntas frecuentes (FAQ)
P: ¿Por qué el escaneo con nmap requiere permisos de root?R: Algunos tipos de escaneo (como el escaneo SYN) requieren manipular directamente los paquetes de red, lo que requiere permisos de root.
P: ¿Cómo acelerar la velocidad de escaneo?R: Usa-T4o-T5las opciones, reduce el tiempo de espera (timeout) o limita el rango de puertos a escanear.
P: ¿Puede el firewall detectar un escaneo de nmap?R: Depende del tipo de escaneo y de la configuración del firewall. El escaneo SYN es más sigiloso que el escaneo de conexión completa.
P: ¿Cómo escanear direcciones IPv6?R: Simplemente usa la dirección IPv6 directamente:nmap 2001:db8::1
Recursos de aprendizaje recomendados
- Documentación oficial:
man nmap - Libro oficial de Nmap: «Nmap Network Scanning»
- Tutoriales en línea:https://nmap.org/book/toc.html
- Aprendizaje interactivo:https://tryhackme.com/room/furthernmap
Al dominar nmap, tendrás una poderosa capacidad de exploración de red, lo que sentará una base sólida para la administración de sistemas y el trabajo de seguridad en redes. Se recomienda comenzar con escaneos simples e ir probando gradualmente opciones y técnicas más complejas.
Otras extensiones