Guía de Nmap en Ubuntu: Escaneo y Análisis de Puertos

Introducción al análisis de red con Nmap

Dentro de la administración de sistemas Ubuntu, nmap destaca como el estándar por excelencia para la exploración de infraestructura y la evaluación defensiva de servidores. A lo largo de este tutorial, abordaremos desde su despliegue inicial y la preparación de un entorno controlado de prácticas, hasta la interpretación precisa de los estados de conexión y firmas de servicio arrojados por el motor de escaneo.

Instalación de Nmap y configuración del entorno de pruebas

Para realizar los ejercicios prácticos de auditoría y disponer de un servicio interactivo de prueba, procedemos a aprovisionar las herramientas necesarias mediante apt-get update -qq && apt-get install -y nmap python3.

Instalación de paquetes requeridos

La utilidad nmap (Network Mapper) permite mapear la superficie de ataque de cualquier host reconociendo puertos accesibles, servicios en escucha y capas de software activas.
Podemos verificar la correcta integración de la utilidad y revisar sus capacidades compiladas invocando nmap --version.
⚙️ [Parámetros esenciales de escaneo]

-p : Delimita el sondeo a un puerto individual, una lista delimitada o un rango numérico específico.
-sS : Ejecuta un barrido SYN semiabierto (stealth scan), determinando la disponibilidad del socket sin finalizar la negociación TCP.
-sT : Establece la conexión TCP integral mediante el handshake completo de tres vías.
-sU : Inspecciona puntos finales que operan sobre el protocolo sin conexión UDP.
-sV : Interroga a los puertos activos para extraer la identificación del demonio y su versión de lanzamiento.
-O : Aplica huellas digitales sobre la pila de red para inferir la distribución y núcleo del sistema operativo subyacente.
-A : Activa un análisis intensivo y consolidado que reúne fingerprinting de OS, detección de versiones, scripts NSE y traza de rutas.
-v : Incrementa el detalle informativo mostrado en la terminal durante el progreso del rastreo.

Comprobación de la versión de Nmap

Con el fin de disponer de un destino de sondeo realista sin comprometer redes externas, levantamos un servidor HTTP ligero en el puerto 8080 en segundo plano mediante python3 -m http.server 8080 > /dev/null 2>&1 &.

Despliegue del servidor de prueba en segundo plano

Garantizamos que el proceso de Python complete el enlace al socket local y comience a procesar peticiones intercalando una pausa breve con sleep 1.

Espera de inicialización del socket

Exploración de puertos inicial y verificación de hosts

Para examinar la interfaz de loopback local (127.0.0.1) con los ajustes predeterminados, ejecutamos nmap 127.0.0.1.
En ausencia de modificadores de alcance, la herramienta interroga los 1.000 puertos TCP más frecuentes; bajo esta inspección, el reporte revelará la disponibilidad del canal 22 asignado a SSH junto con el puerto 8080 recientemente habilitado.

Sondeo básico sobre la interfaz local

Cuando se requiere un balance rápido de la superficie expuesta, es posible limitar la búsqueda a los 100 puertos primarios recurriendo a nmap -F 127.0.0.1.
El conmutador -F (Fast scan) prioriza la agilidad del sondeo, recortando drásticamente el tiempo de respuesta sin omitir los servicios de infraestructura esenciales.

Ejecución de escaneo rápido con la opción Fast

Inspección de puertos específicos y detección de versiones

En escenarios donde nos interesa auditar un servicio puntual sin generar ruido innecesario, lanzamos la verificación dirigida con nmap -p 8080 127.0.0.1.
Al aislar la consulta exclusivamente a la directiva especificada, el comando valida de inmediato que el socket 8080 se encuentra en estado open.

Comprobación selectiva del puerto 8080

Para profundizar en la naturaleza del proceso en escucha y recolectar telemetría de su versión, ejecutamos nmap -sV -p 8080 127.0.0.1.
El análisis provisto por -sV sondea el banner del servicio, evidenciando de manera inequívoca la presencia del módulo web de desarrollo (SimpleHTTPServer 0.6, Python 3.12.3).

Detección de versiones y software en escucha

Exportación de reportes y limpieza de procesos en ejecución

Documentar los hallazgos de red es fundamental en labores de auditoría; para canalizar la salida a un archivo legible, usamos nmap -p 8080 -oN scan_report.txt 127.0.0.1.
El flag -oN preserva íntegramente la salida estándar generada por la consola dentro del fichero scan_report.txt, facilitando su posterior inclusión en memorias técnicas o tareas de seguimiento.

Guardado del resultado en formato de texto estándar

Para constatar la integridad del registro volcado en disco, inspeccionamos el contenido del archivo con cat scan_report.txt.
En el reporte se visualiza con nitidez la marca temporal del muestreo, los parámetros empleados durante la prueba y la confirmación del estado operativo para el socket 8080.

Visualización del archivo de informe generado

Concluidas las comprobaciones, es una buena práctica de administración liberar los recursos asignados finalizando la instancia temporal de pruebas mediante pkill -f 'http.server 8080'.

Cierre del servidor web provisional

Hemos cubierto los aspectos clave para ejecutar inspecciones de red efectivas con Nmap en Ubuntu, desde la prospección básica hasta el reconocimiento granular de aplicaciones.
Incorporar estas técnicas de escaneo regular le permitirá mantener una postura de seguridad robusta, identificando a tiempo servicios innecesarios o brechas potenciales de exposición.