Módulo 2 · Lección 2 · 30 minutos

⌨️ El terminal no es peligroso

10 comandos que utilizarás cada día. Al final de la lección, podrás navegar por Kali sin ratón.

📖 Gancho de la historia

Cuando vi por primera vez el terminal de Linux, pensé «esto es como los hacker de las películas». Pantalla negra, letras blancas, nada que entender.

Ahora abro el terminal 200 veces al día. Y cada vez es más cómodo que usar el ratón. En serio.

El terminal es una conversación directa con la computadora. Sin 10 clics «Abrir → Carpeta → Documentos → Nueva carpeta». Una sola comando y listo.

En esta lección, aprenderemos 10 comandos. Después, el terminal será tuyo.

🎯 Comando #1: pwd — «dónde estoy»

Abre el terminal. Escribe:

pwd

Respuesta:

/home/kali

pwd = «Print Working Directory». Muestra la carpeta actual.

Esta es tu carpeta de inicio. Similar a «C:\Users\Nombre» en Windows.

🎯 Comando #2: ls — «qué hay alrededor»

ls

Muestra los archivos y carpetas en el directorio actual:

Escritorio  Documentos  Descargas  Música  Imágenes  Público  Plantillas  Videos

Opciones (siempre después del comando con un espacio):

ls -l       # detallado (tamaño, fecha, permisos)
ls -a       # incluyendo archivos ocultos (que comienzan con .)
ls -la      # ambos al mismo tiempo
ls -lh      # tamaño en formato legible (KB / MB / GB)

Prueba: ls -la. Verás muchos más archivos.

🎯 Comando #3: cd — «ir a otra carpeta»

cd Documentos

Entraste en la carpeta Documentos. Verifica:

pwd
# /home/kali/Documentos

Símbolos especiales:

cd ..       # un nivel hacia arriba (carpeta padre)
cd ~        # a casa (=/home/kali)
cd /        # raíz del sistema
cd -        # a la carpeta anterior (como Retroceder)

💡 Consejo de Tab: comienza a escribir el nombre de la carpeta → presiona Tab → el terminal completará automáticamente. Esto te ahorrará horas en tu carrera.

🎯 Comando #4: cat — «mostrar contenido de archivo»

cat /etc/hostname

Muestra «kali» (el nombre de tu computadora).

cat /etc/os-release

Muestra información sobre el sistema (versión de Kali, ID, etc.).

Para archivos largos:

less /etc/passwd     # desplazarte con flechas, salir — q
head -10 archivo.txt    # primeras 10 líneas
tail -10 archivo.txt    # últimas 10 líneas
tail -f /var/log/auth.log  # seguir cambios en tiempo real

🎯 Comando #5: grep — «encontrar texto en archivo»

Esta es una comando muy importante para un hacker. Busca líneas que contienen texto determinado.

grep "kali" /etc/passwd

Muestra líneas en /etc/passwd que contienen «kali».

Opciones útiles:

grep -i "PASSWORD" config.txt    # sin distinguir mayúsculas y minúsculas
grep -r "secret" /var/www/        # recursivamente en toda la carpeta
grep -n "error" log.txt           # con números de línea
grep -v "INFO" log.txt            # excluir coincidencias

Caso real: has crackeado un sitio web, descargaste base.tar.gz, necesitas encontrar la contraseña de la base de datos:

grep -ri "DB_PASSWORD\|db_pass\|database.*password" archivos_extraidos/

🎯 Comando #6: find — «encontrar archivos»

find / -name "passwd" 2>/dev/null

Encuentra todos los archivos con el nombre «passwd» en todo el sistema. 2>/dev/null elimina errores de permisos.

Patrones útiles:

find . -name "*.conf"              # todos .conf en la carpeta actual y subcarpetas
find /home -type f -size +10M      # archivos mayores a 10MB en /home
find / -perm -4000 2>/dev/null     # todos archivos SUID (importante para escalar permisos)
find / -mtime -1                   # modificados en las últimas 24 horas

🎯 Comando #7: mkdir / rm / mv / cp

mkdir carpeta_prueba           # crear carpeta
mkdir -p ruta/a/carpeta/profunda   # crear carpetas anidadas

cp archivo.txt copia.txt          # copiar archivo
cp -r carpeta1 carpeta2           # copiar carpeta recursivamente

mv antiguo.txt nuevo.txt          # renombrar (o mover)
mv archivo.txt /tmp/              # mover a /tmp

rm archivo.txt                    # eliminar archivo
rm -rf carpeta/                   # eliminar carpeta con todo su contenido (CUIDADO)

⚠️ rm -rf / eliminará TODO. No ejecutes este comando nunca. Y no confíes en código de fuentes no verificadas que lo contenga.

🎯 Comando #8: chmod — «cambiar permisos»

Más detalles en la Lección 2.3, pero básicamente:

chmod +x script.sh    # hacer ejecutable
chmod 755 archivo        # rwx para el propietario, r-x para los demás
chmod 644 config.txt     # rw para el propietario, r para los demás

🎯 Comando #9: pipes (|) y redirects (>, >>)

Esta es la magia de Unix. Conecta varias comandos:

# Pipe (|): salida de una comando → entrada de otra
ls -la | grep "kali"          # ls + búsqueda de líneas con "kali"
cat log.txt | grep "ERROR" | head -10   # últimas 10 líneas de error

# Redirect (>): guardar salida en archivo
ls -la > archivos.txt            # sobrescribir
ls -la >> archivos.txt           # agregar (append)

# Stderr (2>): redirigir errores
find / -name "secret" 2>/dev/null   # ignorar errores

Caso real: encontrar todos los archivos .php que mencionen «mysql_query»:

find /var/www -name "*.php" | xargs grep -l "mysql_query" 2>/dev/null

🎯 Comando #10: sudo — «ejecutar como administrador»

sudo apt update         # actualizar lista de paquetes
sudo apt install nmap   # instalar nmap
sudo -i                 # convertirse en root (salir: exit)

sudo = «Super User DO». Pide la contraseña (la tuya normal, de kali). Después de ingresar la contraseña, la comando se ejecuta con permisos de root.

💡 Consejo: sudo recuerda la contraseña ~15 minutos. Una vez que la ingresas, las siguientes comandos sudo pasarán sin pedir contraseña.

🏆 Ejercicio final

Ejecuta en el terminal en orden:

  1. cd ~ — ve a casa
  2. mkdir practica_hacking — crea carpeta
  3. cd practica_hacking — entra en ella
  4. echo "Hola mundo hacker" > saludar.txt — crea archivo
  5. cat saludar.txt — verifica contenido
  6. ls -la — mira qué hay en la carpeta
  7. grep "hacker" saludar.txt — encuentra palabra
  8. cp saludar.txt copia_saludar.txt — hace copia
  9. ls — deberían haber dos archivos
  10. rm copia_saludar.txt — elimina copia
  11. cd .. — sale de la carpeta

Si las 11 comandos se ejecutan correctamente — has dominado los fundamentos del terminal. Esto es suficiente para el 95% del trabajo de un pentester.

🤖 Tarea de vibración: pregunta a Claude

Abre Claude y pregunta:

Acabo de aprender 10 comandos básicos de Linux:
pwd, ls, cd, cat, grep, find, mkdir/rm/mv/cp, chmod, pipes, sudo.

Dame 5 tareas prácticas de complejidad de fácil a media
que pueda realizar ahora mismo en mi Kali Linux para consolidar habilidades.
Cada tarea — 1 oración de qué hacer + resultado esperado.

Realiza estas 5 tareas. Si te atasca — vuelve a Claude.

💡 Resumen (imprimir)

ComandoQué haceEjemplo
pwdDónde estoypwd
lsQué hay alrededorls -la
cdIr a otra carpetacd Documentos
catMostrar archivocat archivo.txt
grepEncontrar textogrep "error" log
findEncontrar archivofind / -name "*.conf"
mkdirCrear carpetamkdir prueba
cp / mv / rmCopiar / mover / eliminarcp a b
chmodPermisoschmod +x script
|Pipels | grep "txt"
sudoComo administradorsudo apt update

🎬 ¿Qué sigue?

En la Lección 2.3 — permisos de acceso y root. Qué significa «root», dónde viven las contraseñas en Linux, qué es chmod 755 (valor exacto). Esto es la base para el Módulo 5 «Vulnerabilidades web» — allí necesitamos entender cómo almacena el servidor los datos.

← Lección 2.1 Lección 2.3: Permisos de acceso →