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 entrada está disponible también en ENGLISH.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

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