📖 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:
cd ~ — ve a casa
mkdir practica_hacking — crea carpeta
cd practica_hacking — entra en ella
echo "Hola mundo hacker" > saludar.txt — crea archivo
cat saludar.txt — verifica contenido
ls -la — mira qué hay en la carpeta
grep "hacker" saludar.txt — encuentra palabra
cp saludar.txt copia_saludar.txt — hace copia
ls — deberían haber dos archivos
rm copia_saludar.txt — elimina copia
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)
| Comando | Qué hace | Ejemplo |
pwd | Dónde estoy | pwd |
ls | Qué hay alrededor | ls -la |
cd | Ir a otra carpeta | cd Documentos |
cat | Mostrar archivo | cat archivo.txt |
grep | Encontrar texto | grep "error" log |
find | Encontrar archivo | find / -name "*.conf" |
mkdir | Crear carpeta | mkdir prueba |
cp / mv / rm | Copiar / mover / eliminar | cp a b |
chmod | Permisos | chmod +x script |
| | Pipe | ls | grep "txt" |
sudo | Como administrador | sudo 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.