Nmap: Guía completa para escaneo de redes y seguridad en Linux

Introducción a Nmap

Nmap (Network Mapper) es una herramienta de código abierto diseñada para descubrir hosts y servicios en una red informática, así como para detectar vulnerabilidades y configuraciones erróneas. Su popularidad se debe a la combinación de potencia, flexibilidad y una comunidad activa que mantiene actualizadas sus bases de datos de firmas. En entornos Linux, Nmap se integra fácilmente con scripts de shell, permite automatizar auditorías de seguridad y se puede combinar con otras utilidades como tcpdump o Wireshark para un análisis más profundo.

Instalación de Nmap en las principales distribuciones

En Debian y Ubuntu, el paquete se encuentra en los repositorios oficiales y se instala con:

  • sudo apt update
  • sudo apt install nmap

En Fedora, CentOS y RHEL se usa dnf o yum:

  • sudo dnf install nmap # Fedora
  • sudo yum install nmap # CentOS/RHEL

Para Arch Linux y sus derivados:

  • sudo pacman -S nmap

Si se necesita la última versión, se puede compilar desde el código fuente disponible en el repositorio oficial de GitHub, siguiendo los pasos de ./configure, make y sudo make install.

Escaneo básico de hosts y puertos

El comando más sencillo es:

  • nmap 192.168.1.0/24

Esto realizará un ping sweep para determinar qué direcciones IP están activas y, por defecto, escaneará los 1000 puertos más comunes. Para limitar el escaneo a un rango de puertos específico se usa la opción -p:

  • nmap -p 22,80,443 192.168.1.10

Si se desea un escaneo más rápido, se puede aplicar -T4 (plantilla de timing agresiva) o incluso -T5 para un modo «insane», aunque con mayor riesgo de ser detectado por sistemas de prevención de intrusiones.

Técnicas de escaneo avanzadas

Nmap ofrece varios tipos de escaneo que se adaptan a diferentes escenarios:

  • Escaneo SYN (-sS): medio abierto, no completa el handshake TCP, menos detectable.
  • Escaneo de conectividad TCP (-sT): completa el handshake, útil cuando no se tienen privilegios de root.
  • Escaneo UDP (-sU): descubre servicios UDP, más lento debido a la naturaleza sin conexión del protocolo.
  • Escaneo de versiones (-sV): intenta determinar la versión exacta del servicio escuchando en cada puerto.
  • Escaneo de scripts (-sC o –script): ejecuta la colección de scripts NSE (Nmap Scripting Engine) para detectar vulnerabilidades, obtener información adicional o realizar brute force.

Un ejemplo combinado podría ser:

  • nmap -sS -sV –script=vuln 10.0.0.5

Este comando realiza un escaneo SYN, detecta versiones y ejecuta scripts de vulnerabilidad contra la IP indicada.

Guardar y procesar los resultados

Nmap permite exportar los resultados en varios formatos para su posterior análisis:

  • -oN archivo.txt: salida normal legible por humanos.
  • -oX archivo.xml: formato XML, ideal para procesamiento con scripts o integración en herramientas de gestión de vulnerabilidades.
  • -oG archivo.gnmap: formato grepable, útil para búsquedas rápidas con grep o awk.
  • -oA base: genera los tres formatos anteriores con el mismo prefijo.

Por ejemplo:

  • nmap -sS -sV -oA escaneo_red 192.168.1.0/24

Esto producirá escaneo_red.nmap, escaneo_red.xml y escaneo_red.gnmap. Los archivos XML pueden ser importados en plataformas como OpenVAS, Nessus o en dashboards personalizados mediante Python y la librería python-nmap.

Automatización de escaneos con scripts de shell

Para realizar escaneos periódicos se puede crear un pequeño script de bash que invoque a Nmap y guarde los resultados con marca de tiempo:

  • #!/bin/bash
  • FECHA=$(date +%Y%m%d_%H%M%S)
  • nmap -sS -sV -oA escaneo_$FECHA 10.0.0.0/24
  • echo «Escaneo completado: escaneo_$FECHA.*»

Este script se puede añadir a crontab para ejecutarse cada noche, generando un historial de cambios en la red que facilita la detección de nuevos dispositivos o puertos abiertos inesperados.

Mejores prácticas y consideraciones éticas

Aunque Nmap es una herramienta poderosa, su uso debe estar siempre autorizado. Escanear redes sin permiso puede infringir leyes de seguridad informática y políticas corporativas. Se recomienda:

  • Obtener autorización escrita del propietario de la red o del sistema.
  • Limitar el alcance del escaneo a los rangos IP y puertos acordados.
  • Utilizar opciones de timing menos agresivas (-T2 o -T3) en entornos de producción para reducir el ruido de tráfico.
  • Actualizar frecuentemente la base de datos de firmas y los scripts NSE para aprovechar las últimas detecciones.
  • Documentar los hallazgos y generar informes claros para los stakeholders.

Siguiendo estas directrices, Nmap se convierte en un aliado indispensable para administradores de sistemas, analistas de seguridad y cualquier profesional que necesite conocer el estado real de su infraestructura de red en Linux.

Esta obra está bajo una Licencia Creative Commons Atribución 4.0 Internacional para Francesc Roig francesc@vivaldi.net .

EspañolesEspañolEspañol