Este documento técnico describe el proceso de despliegue de un laboratorio de seguridad personalizado sobre Linux Mint (2026) utilizando contenedores.
Instalación del motor de Docker desde los repositorios oficiales para garantizar la última versión estable.
sudo apt update && sudo apt install ca-certificates curl gnupg
Es crítico usar el codename de Ubuntu (Noble/Jammy) según la base de tu Mint.
# Crear directorio de llaves sudo install -m 0755 -d /etc/apt/keyrings # Descargar llave oficial GPG curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg # Registrar el repositorio oficial echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \ $(. /etc/os-release && echo "$UBUNTU_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update && sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Archivo de definición para la imagen personalizada basada en Kali Rolling.
| Archivo | Descripción |
|---|---|
| Dockerfile | Debe guardarse sin extensión en la carpeta raíz del proyecto |
FROM kalilinux/kali-rolling
# Evitar preguntas interactivas durante la instalación
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y \
# Herramientas de ataque/fuzzing
nmap ffuf feroxbuster gobuster metasploit-framework \
hydra wpscan nikto exploitdb \
# Esteganografía y diccionarios
steghide stegseek crunch cewl \
princeprocessor \
# Utilidades de sistema y red (Corrección de sintaxis aquí)
xxd \
netcat-traditional \
dnsutils \
python3-pip \
curl \
wget \
git \
ruby \
# Limpieza de caché
&& apt-get clean && rm -rf /var/lib/apt/lists/*
# Instalación de Droopescan (Usando el flag necesario en 2026)
RUN pip3 install --break-system-packages --no-cache-dir droopescan
# Instalación de Drupalgeddon2 (Corrección de la URL de GitHub)
RUN git clone https://github.com/dreadlocked/Drupalgeddon2.git /opt/drupalgeddon2 \
&& chmod +x /opt/drupalgeddon2/drupalgeddon2.rb \
&& ln -s /opt/drupalgeddon2/drupalgeddon2.rb /usr/local/bin/drupalgeddon2
WORKDIR /root
Comandos para generar la imagen a partir del Dockerfile.
sudo docker build -t kali-custom .sudo docker imagessudo docker save -o mi-kali.tar kali-customPara que la máquina sea persistente y acceda a diccionarios externos como SecLists, se utiliza el parámetro de volumen.
sudo docker run -it --rm \ -v "$(pwd)/Seclists:/usr/share/wordlists/seclists" \ kali-custom
| Comando | Función |
|---|---|
| -it | Inicia el modo interactivo con una terminal TTY. |
| –rm | Borra el contenedor automáticamente al escribir 'exit'. Mantiene el sistema limpio. |
| -v | Monta un directorio del PC dentro del contenedor (Bind Mount). |
| $(pwd) | Variable que inserta automáticamente la ruta actual absoluta. |
Comandos rápidos para probar que todo se instaló correctamente:
nmap -h, ffuf -Vsearchsploit drupaldroopescan –help, drupalgeddon2 -hls /usr/share/wordlists/seclistsDocker puede ocupar mucho espacio en disco (aprox. 7GB para esta imagen).
sudo docker system prune -asudo docker system dfADVERTENCIA: El uso de estas herramientas debe limitarse a entornos controlados o con autorización expresa.