Resources

 Aquí encontrarás herramientas de Ethical Hacking, y algún librillo o tutorial:

Configuración inicial de Kali Linux: primeros pasos después de instalarlo

¿Acabas de instalar Kali Linux? Antes de comenzar a utilizar sus herramientas, conviene actualizar el sistema y realizar algunas configuraciones básicas.

1. Actualizar Kali Linux

Abre una terminal y ejecuta:

sudo apt update
sudo apt full-upgrade -y

Kali Linux utiliza un modelo de actualización continua, por lo que full-upgrade permite actualizar correctamente los paquetes y gestionar cambios en sus dependencias.

Cuando termine, elimina paquetes que ya no sean necesarios:

sudo apt autoremove -y
sudo apt autoclean

Si el sistema indica que es necesario reiniciar, ejecuta:

sudo reboot

2. Comprobar los repositorios

En las versiones recientes de Kali, la configuración principal de los repositorios se encuentra en:

/etc/apt/sources.list.d/kali.sources

Puedes revisarla con:

cat /etc/apt/sources.list.d/kali.sources

Una instalación estándar de Kali Rolling debería utilizar el repositorio oficial http.kali.org, la rama kali-rolling y los componentes main, contrib, non-free y non-free-firmware.

No agregues repositorios de Ubuntu, Debian u otras distribuciones, porque podrían provocar conflictos entre paquetes.

3. Configurar el idioma y la zona horaria

Para cambiar el idioma del sistema:

sudo dpkg-reconfigure locales

Para configurar la zona horaria:

sudo dpkg-reconfigure tzdata

También puedes establecer directamente la zona horaria de Argentina:

sudo timedatectl set-timezone America/Argentina/Buenos_Aires

Comprueba la configuración:

timedatectl

4. Cambiar el nombre del equipo

Consulta el nombre actual:

hostnamectl

Para cambiarlo, reemplaza kali-lab por el nombre que prefieras:

sudo hostnamectl set-hostname kali-lab

Después, revisa el archivo de hosts:

sudo nano /etc/hosts

Asegúrate de que el nuevo nombre aparezca en una línea similar a esta:

127.0.1.1    kali-lab

5. Instalar herramientas básicas

Puedes agregar algunas utilidades de uso cotidiano:

sudo apt install -y git curl wget vim nano htop tree unzip

Comprueba que se hayan instalado correctamente:

git --version
curl --version

6. Utilizar Kali Tweaks

Kali incluye una herramienta para modificar configuraciones frecuentes:

kali-tweaks

Desde su menú puedes gestionar repositorios, metapaquetes, virtualización, ajustes de seguridad y algunas opciones del entorno de escritorio.

7. Verificar la red

Consulta las interfaces y direcciones IP:

ip addr

Comprueba la conexión a Internet:

ping -c 4 kali.org

Consulta la puerta de enlace:

ip route

Para mostrar únicamente las direcciones IP asignadas al equipo:

hostname -I

8. Revisar el usuario actual

Kali crea durante la instalación un usuario preparado para utilizar privilegios administrativos mediante sudo.

Comprueba tu usuario:

whoami

Consulta los grupos a los que pertenece:

groups

Evita trabajar permanentemente como root. Utiliza sudo únicamente cuando una tarea necesite privilegios administrativos.

9. Crear una carpeta para el laboratorio

Mantener los archivos organizados ayuda a separar prácticas, scripts y evidencias:

mkdir -p ~/laboratorio/{scripts,resultados,notas,descargas}

Comprueba la estructura:

tree ~/laboratorio

10. Consultar la versión instalada

Finalmente, verifica la versión del sistema:

cat /etc/os-release

También puedes revisar el kernel:

uname -r

Y obtener un resumen general:

hostnamectl

Conclusión

Con estos pasos tendrás una instalación de Kali Linux actualizada, organizada y preparada para comenzar a trabajar.

Recuerda utilizar sus herramientas exclusivamente en sistemas propios, laboratorios controlados o entornos para los que tengas autorización expresa.

El rincón secreto del hacker: aprender, experimentar y comprender la tecnología desde adentro.

---

Para que un laboratorio virtual de Ethical Hacking sea seguro, debes aislar las máquinas vulnerables de Internet y de tu red doméstica, permitiendo únicamente la comunicación necesaria entre Kali Linux y los objetivos del laboratorio.

Cómo asegurar la conexión de un laboratorio virtual de Ethical Hacking

Un laboratorio de Ethical Hacking suele incluir varias máquinas virtuales:

  • Kali Linux como sistema auditor.

  • Metasploitable, DVWA, OWASP Broken Web Apps o máquinas similares como objetivos.

  • Una máquina Ubuntu o Windows para pruebas defensivas.

  • El equipo anfitrión, llamado host, donde se ejecuta VirtualBox o VMware.

El principal riesgo consiste en configurar incorrectamente las interfaces de red y permitir que una máquina intencionalmente vulnerable quede expuesta a Internet o pueda comunicarse con otros dispositivos de la vivienda, oficina o universidad.

La regla fundamental es:

Las máquinas vulnerables nunca deben utilizar una interfaz de red en modo puente.


1. Modos de red disponibles

NAT

En modo NAT, la máquina virtual puede acceder a Internet utilizando la conexión del equipo anfitrión.

La máquina virtual queda detrás de un mecanismo de traducción de direcciones. Normalmente, otros dispositivos de la red física no pueden iniciar conexiones directamente hacia ella.

Ejemplo habitual:

Internet
   |
Router doméstico
   |
Equipo anfitrión
   |
NAT de VirtualBox
   |
Kali Linux

NAT es apropiado para:

  • Actualizar Kali Linux.

  • Instalar paquetes.

  • Descargar repositorios.

  • Consultar documentación.

  • Navegar desde una máquina que no sea deliberadamente vulnerable.

Ejemplo de actualización:

sudo apt update
sudo apt full-upgrade -y

Comprobación de la dirección IP:

ip address

Comprobación de la ruta predeterminada:

ip route

Salida típica:

default via 10.0.2.2 dev eth0
10.0.2.0/24 dev eth0 proto kernel scope link src 10.0.2.15

En VirtualBox, la red NAT tradicional suele asignar direcciones dentro de 10.0.2.0/24, aunque esto puede variar según la configuración.

Riesgos del modo NAT

NAT no equivale a aislamiento absoluto. La máquina virtual todavía puede:

  • Conectarse a Internet.

  • Descargar archivos.

  • Comunicarse con servicios externos.

  • Enviar información fuera del laboratorio.

  • Recibir conexiones si se configura redirección de puertos.

Por ese motivo, una máquina como Metasploitable no debería tener NAT activo mientras se utiliza como objetivo.


2. Red NAT

VirtualBox distingue entre el modo NAT tradicional y una red NAT.

En una red NAT, varias máquinas virtuales pueden:

  • Comunicarse entre ellas.

  • Acceder a Internet.

  • Permanecer parcialmente separadas de la red física.

Ejemplo:

               Internet
                   |
             Equipo anfitrión
                   |
              Red NAT
        10.20.30.0/24
             /          \
          Kali        Ubuntu

Puede ser útil para laboratorios donde varias máquinas necesitan Internet, pero no es la opción más segura para objetivos vulnerables.

Creación de una red NAT desde la terminal del host:

VBoxManage natnetwork add \
  --netname LabNAT \
  --network "10.20.30.0/24" \
  --enable \
  --dhcp on

Inicio de la red:

VBoxManage natnetwork start --netname LabNAT

Asignación a una máquina virtual:

VBoxManage modifyvm "Kali Linux" \
  --nic1 natnetwork \
  --nat-network1 "LabNAT"

Listado de redes NAT:

VBoxManage list natnetworks

La red NAT debe evitarse para Metasploitable, Windows XP vulnerable u otros objetivos sin soporte, salvo que sea estrictamente necesario y se apliquen controles adicionales.


3. Adaptador solo-anfitrión o Host-Only

Host-Only crea una red privada entre:

  • El equipo anfitrión.

  • Las máquinas virtuales conectadas a esa interfaz.

Las máquinas virtuales no tienen acceso directo a Internet mediante esa interfaz.

Ejemplo:

                Equipo anfitrión
                192.168.56.1
                      |
                Red Host-Only
                192.168.56.0/24
                  /          \
        Kali Linux        Metasploitable
       192.168.56.10       192.168.56.20

Esta configuración permite que Kali ataque el objetivo sin exponerlo directamente a Internet.

Configuración recomendada

Kali Linux:

  • Adaptador 1: NAT.

  • Adaptador 2: Host-Only.

Máquina vulnerable:

  • Adaptador 1: Host-Only.

  • Sin NAT.

  • Sin modo puente.

Representación:

Internet
   |
NAT
   |
Kali Linux
   |
Host-Only
   |
Metasploitable

Kali puede actualizarse mediante NAT y comunicarse con el objetivo mediante Host-Only. Metasploitable solo puede comunicarse con Kali y con el host.

Identificación de interfaces en Kali

ip -brief address

Salida posible:

lo        UNKNOWN        127.0.0.1/8
eth0      UP             10.0.2.15/24
eth1      UP             192.168.56.10/24

En este ejemplo:

  • eth0 corresponde a NAT.

  • eth1 corresponde a Host-Only.

Visualización de rutas:

ip route

Salida:

default via 10.0.2.2 dev eth0
10.0.2.0/24 dev eth0 proto kernel scope link src 10.0.2.15
192.168.56.0/24 dev eth1 proto kernel scope link src 192.168.56.10

Prueba de comunicación con el objetivo:

ping -c 4 192.168.56.20

Descubrimiento de hosts dentro del laboratorio:

sudo nmap -sn 192.168.56.0/24

Escaneo básico autorizado:

sudo nmap -sV 192.168.56.20

Es importante especificar siempre la red del laboratorio y evitar rangos pertenecientes a la red doméstica o institucional.


4. Red interna o Internal Network

La red interna ofrece un aislamiento mayor que Host-Only.

Solo pueden comunicarse entre sí las máquinas virtuales conectadas a la misma red interna. El equipo anfitrión no participa directamente.

Ejemplo:

Kali Linux
10.10.10.10
     |
Red interna: laboratorio
10.10.10.0/24
     |
Metasploitable
10.10.10.20

Esta configuración es apropiada para:

  • Análisis de malware controlado.

  • Explotación de máquinas muy vulnerables.

  • Simulación de redes empresariales.

  • Pruebas de movimiento lateral.

  • Laboratorios sin necesidad de Internet.

Configuración mediante VBoxManage:

VBoxManage modifyvm "Kali Linux" \
  --nic2 intnet \
  --intnet2 "laboratorio"

Para Metasploitable:

VBoxManage modifyvm "Metasploitable" \
  --nic1 intnet \
  --intnet1 "laboratorio"

Las dos máquinas deben utilizar exactamente el mismo nombre de red interna:

laboratorio

Configuración manual de IP

Si la red interna no dispone de DHCP, puedes asignar las direcciones manualmente.

En Kali:

sudo ip address add 10.10.10.10/24 dev eth1
sudo ip link set eth1 up

En Linux objetivo:

sudo ip address add 10.10.10.20/24 dev eth0
sudo ip link set eth0 up

Prueba desde Kali:

ping -c 4 10.10.10.20

No debe configurarse una puerta de enlace predeterminada en la máquina vulnerable, salvo que el diseño del laboratorio lo requiera.


5. Modo puente o Bridged Adapter

En modo puente, la máquina virtual aparece como un dispositivo más dentro de la red física.

Ejemplo:

Router
192.168.1.1
   |
   |--- Equipo anfitrión: 192.168.1.10
   |--- Teléfono: 192.168.1.15
   |--- Smart TV: 192.168.1.25
   |--- Máquina virtual: 192.168.1.40

Esto significa que la máquina virtual puede:

  • Comunicarse con otros equipos físicos.

  • Recibir conexiones desde la red local.

  • Ser visible para otros dispositivos.

  • Acceder potencialmente a impresoras, routers, televisores y servidores.

  • Quedar expuesta si el router tiene reglas inseguras.

Cuándo no utilizar modo puente

No debes usarlo con:

  • Metasploitable.

  • DVWA sin asegurar.

  • Windows XP o Windows 7 sin soporte.

  • Máquinas de VulnHub.

  • Laboratorios de malware.

  • Sistemas con servicios deliberadamente vulnerables.

  • Máquinas que ejecutan exploits o listeners.

El modo puente solo debería emplearse cuando sea imprescindible realizar una prueba autorizada contra dispositivos físicos de una red controlada.


6. Configuración segura recomendada

Una arquitectura equilibrada consiste en utilizar dos interfaces en Kali y una interfaz aislada en el objetivo.

Kali Linux

Adaptador 1: NAT
Adaptador 2: Host-Only

Metasploitable

Adaptador 1: Host-Only

Esquema

                       Internet
                          |
                         NAT
                          |
                   +-------------+
                   | Kali Linux  |
                   | 10.0.2.15   |
                   | 192.168.56.10
                   +-------------+
                          |
                     Host-Only
                  192.168.56.0/24
                          |
                +------------------+
                | Metasploitable   |
                | 192.168.56.20    |
                +------------------+

Kali tiene salida a Internet, pero Metasploitable no.


7. Comprobar que el objetivo no tenga Internet

En Metasploitable o en el objetivo Linux:

ip route

Una configuración aislada debería mostrar únicamente la ruta local:

192.168.56.0/24 dev eth0 proto kernel scope link src 192.168.56.20

No debería existir una línea como:

default via 192.168.56.1

Prueba de acceso externo:

ping -c 3 1.1.1.1

El comando debería fallar.

También puede comprobarse DNS:

ping -c 3 example.com

Debería aparecer un error de resolución o de conectividad.

Desde Kali, en cambio, la prueba mediante la interfaz NAT debería funcionar:

ping -c 3 1.1.1.1

8. Evitar que Kali reenvíe tráfico

Aunque el objetivo no tenga NAT, Kali podría convertirse accidentalmente en un router si se habilita el reenvío IP.

Comprobación:

sysctl net.ipv4.ip_forward

Resultado seguro:

net.ipv4.ip_forward = 0

Desactivación temporal:

sudo sysctl -w net.ipv4.ip_forward=0

Desactivación persistente:

echo 'net.ipv4.ip_forward=0' |
sudo tee /etc/sysctl.d/99-lab-isolation.conf

Aplicación:

sudo sysctl --system

También debe comprobarse IPv6:

sysctl net.ipv6.conf.all.forwarding

Para desactivarlo:

sudo sysctl -w net.ipv6.conf.all.forwarding=0

9. Bloqueo adicional con nftables

Kali puede utilizar nftables para impedir que el tráfico procedente de la red del laboratorio llegue a Internet.

Supongamos:

eth0 = NAT
eth1 = Host-Only
Red del laboratorio = 192.168.56.0/24

Creación de una tabla de filtrado:

sudo nft add table inet lab_filter

Creación de una cadena para tráfico reenviado:

sudo nft add chain inet lab_filter forward \
  '{ type filter hook forward priority 0; policy drop; }'

Bloqueo explícito del tráfico desde Host-Only hacia NAT:

sudo nft add rule inet lab_filter forward \
  iifname "eth1" oifname "eth0" drop

Visualización de reglas:

sudo nft list ruleset

Para eliminar la tabla:

sudo nft delete table inet lab_filter

Una política drop en la cadena forward impide que Kali funcione como puente o router entre ambas redes.


10. Bloqueo mediante iptables

En sistemas que todavía utilizan iptables:

sudo iptables -P FORWARD DROP

Bloqueo específico:

sudo iptables -A FORWARD \
  -i eth1 \
  -o eth0 \
  -s 192.168.56.0/24 \
  -j DROP

Comprobación:

sudo iptables -L FORWARD -n -v

No debes ejecutar reglas copiadas sin verificar previamente los nombres de las interfaces:

ip -brief link

Los nombres podrían ser:

eth0
eth1
enp0s3
enp0s8
ens33
ens37

11. Escuchar únicamente en la interfaz del laboratorio

Al iniciar un servidor web, listener o servicio de pruebas, conviene vincularlo a la dirección Host-Only y no a todas las interfaces.

Configuración insegura:

python3 -m http.server 8000 --bind 0.0.0.0

0.0.0.0 significa que el servicio escucha en todas las interfaces disponibles, incluida la interfaz NAT.

Configuración más segura:

python3 -m http.server 8000 --bind 192.168.56.10

Comprobación:

ss -lntp

Resultado esperado:

LISTEN 0 5 192.168.56.10:8000 0.0.0.0:*

Resultado menos seguro:

LISTEN 0 5 0.0.0.0:8000 0.0.0.0:*

También puede comprobarse una interfaz específica con:

sudo tcpdump -i eth1

Captura limitada a tráfico del laboratorio:

sudo tcpdump -i eth1 net 192.168.56.0/24

12. Redirección de puertos en NAT

VirtualBox permite redirigir un puerto del host hacia una máquina virtual NAT.

Ejemplo:

VBoxManage modifyvm "Kali Linux" \
  --natpf1 "ssh,tcp,127.0.0.1,2222,,22"

Esto redirige:

127.0.0.1:2222 -> Kali:22

La dirección 127.0.0.1 limita la conexión al propio host.

Conexión:

ssh -p 2222 kali@127.0.0.1

Una configuración menos segura sería:

VBoxManage modifyvm "Kali Linux" \
  --natpf1 "ssh,tcp,,2222,,22"

Al omitir la dirección del host, el puerto podría quedar escuchando en varias interfaces físicas.

Para eliminar la regla:

VBoxManage modifyvm "Kali Linux" \
  --natpf1 delete "ssh"

No deben configurarse redirecciones hacia máquinas vulnerables salvo que exista una razón específica y controlada.


13. Desactivar IPv6 cuando no se utiliza

Un laboratorio configurado únicamente para IPv4 podría mantener conectividad IPv6 accidental.

Comprobación:

ip -6 address

Desactivación temporal:

sudo sysctl -w net.ipv6.conf.all.disable_ipv6=1
sudo sysctl -w net.ipv6.conf.default.disable_ipv6=1

Configuración persistente:

cat << 'EOF' |
sudo tee /etc/sysctl.d/98-disable-ipv6-lab.conf
net.ipv6.conf.all.disable_ipv6=1
net.ipv6.conf.default.disable_ipv6=1
EOF

Aplicación:

sudo sysctl --system

No es obligatorio desactivar IPv6, pero sí debe considerarse dentro del modelo de aislamiento.


14. Comprobaciones antes de iniciar las prácticas

En Kali:

ip -brief address
ip route

En el objetivo:

ip -brief address
ip route

Desde Kali, identificar los hosts del segmento aislado:

sudo nmap -sn 192.168.56.0/24

Comprobar que Kali tenga Internet:

curl -I https://example.com

Comprobar que el objetivo no tenga Internet:

curl --connect-timeout 5 https://example.com

Comprobar que el reenvío esté deshabilitado:

sysctl net.ipv4.ip_forward

Comprobar los puertos expuestos por Kali:

sudo ss -lntup

Verificar la configuración de VirtualBox:

VBoxManage showvminfo "Kali Linux"

Filtrar información relacionada con la red:

VBoxManage showvminfo "Kali Linux" |
grep -iE 'NIC|Attachment|Network'

15. Uso de instantáneas

Antes de realizar una prueba, conviene crear una instantánea de las máquinas virtuales.

Desde VirtualBox:

VBoxManage snapshot "Metasploitable" \
  take "Estado limpio"

Listado:

VBoxManage snapshot "Metasploitable" list

Restauración:

VBoxManage snapshot "Metasploitable" \
  restore "Estado limpio"

Las instantáneas permiten:

  • Revertir modificaciones.

  • Recuperar archivos dañados.

  • Deshacer cambios de configuración.

  • Restaurar servicios vulnerables.

  • Repetir una práctica desde el mismo estado.

No reemplazan una copia de seguridad, pero son esenciales en un laboratorio.


16. Carpetas compartidas, portapapeles y arrastrar archivos

La red no es el único canal de comunicación entre el host y las máquinas virtuales.

También deben controlarse:

  • Carpetas compartidas.

  • Portapapeles compartido.

  • Arrastrar y soltar.

  • Dispositivos USB.

  • Montaje automático.

  • Integraciones del hipervisor.

En una máquina vulnerable o utilizada para análisis de malware, es recomendable:

Portapapeles compartido: Desactivado
Arrastrar y soltar: Desactivado
Carpetas compartidas: Ninguna
USB: Desactivado

Para Kali puede utilizarse una carpeta compartida, pero debería contener únicamente archivos destinados al laboratorio.

Nunca deben compartirse directamente:

  • Documentos personales.

  • Claves SSH.

  • Contraseñas.

  • Repositorios privados.

  • Carteras digitales.

  • Directorios completos del usuario.

  • Archivos laborales o académicos sensibles.


17. DNS y resolución de nombres

En una red aislada puede asignarse un nombre local a cada máquina mediante /etc/hosts.

En Kali:

sudo nano /etc/hosts

Contenido:

192.168.56.20 metasploitable.lab
192.168.56.30 dvwa.lab
192.168.56.40 windows-lab.lab

Prueba:

ping -c 2 metasploitable.lab

Escaneo:

sudo nmap -sV metasploitable.lab

Esto evita depender de servidores DNS externos para identificar los sistemas del laboratorio.


18. Evitar rangos que coincidan con la red real

Si la red doméstica utiliza:

192.168.1.0/24

no conviene utilizar el mismo rango en Host-Only.

Es preferible elegir un rango diferente:

192.168.56.0/24
10.10.10.0/24
172.22.50.0/24

Comprobación de la red física del host en Windows:

ipconfig

Comprobación en Linux:

ip address
ip route

Ejemplo de conflicto:

Red doméstica: 192.168.1.0/24
Red del laboratorio: 192.168.1.0/24

Este solapamiento puede provocar:

  • Rutas incorrectas.

  • Escaneos contra equipos reales.

  • Dificultad para distinguir objetivos.

  • Pérdida de conectividad.

  • Exposición accidental.


19. Configuración avanzada con una máquina firewall

Para laboratorios más completos puede utilizarse una máquina virtual con pfSense, OPNsense o Linux como router controlado.

Ejemplo:

                   Internet
                      |
                     NAT
                      |
               Firewall virtual
                /             \
           Red atacante     Red víctima
          10.10.10.0/24    10.20.20.0/24
               |                 |
             Kali          Windows/Ubuntu

El firewall permite practicar:

  • Segmentación.

  • Reglas de entrada y salida.

  • Registros.

  • IDS e IPS.

  • Filtrado DNS.

  • Enrutamiento.

  • Simulación de DMZ.

  • Control del tráfico entre subredes.

Las máquinas vulnerables pueden permanecer en una red interna sin acceso directo a Internet.


20. Arquitecturas recomendadas

Laboratorio básico

Kali:
- NAT
- Host-Only

Objetivo:
- Host-Only

Laboratorio completamente aislado

Kali:
- Red interna

Objetivo:
- Red interna

Laboratorio segmentado

Kali:
- Red interna atacante

Firewall:
- Red interna atacante
- Red interna objetivo
- NAT opcional

Objetivo:
- Red interna objetivo

Laboratorio de malware

Analista:
- Red interna

Máquina infectada:
- Red interna

Internet:
- Desactivado

Carpetas compartidas:
- Desactivadas

Portapapeles:
- Desactivado

Lista final de seguridad

Antes de iniciar el laboratorio, verifica:

  • La máquina vulnerable no utiliza modo puente.

  • La máquina vulnerable no tiene NAT.

  • Kali utiliza NAT solo para actualizarse.

  • Kali y el objetivo se comunican por Host-Only o red interna.

  • El objetivo no tiene una ruta predeterminada hacia Internet.

  • El reenvío IP está desactivado.

  • No existen reglas de redirección de puertos innecesarias.

  • Los servicios escuchan únicamente en la interfaz del laboratorio.

  • Las carpetas compartidas están desactivadas o limitadas.

  • El portapapeles compartido está desactivado en máquinas de riesgo.

  • Se ha creado una instantánea limpia.

  • La red del laboratorio no coincide con la red doméstica.

  • Los escaneos se dirigen únicamente al rango autorizado.

  • Las máquinas virtuales y el hipervisor están actualizados.

  • No se almacenan archivos personales dentro de las máquinas vulnerables.

La configuración más recomendable para comenzar es utilizar NAT y Host-Only en Kali, y únicamente Host-Only en la máquina vulnerable. Para pruebas de mayor riesgo, debe utilizarse una red interna sin acceso al host ni a Internet.


Comentarios

Entradas populares de este blog

El libro secreto de bash scripting, ya a la venta en Amazon!!!

Bash Scripting desde cero: crea tu primer script en Linux

Cap 1 de mi nuevo libro "Breve introducción al Ethical hacking" (Ya a la venta en Amazon!)