Saltar al contenido
PURPLEDUEL

Entorno e historial

Fundamentos de Linux · nivel medio · 4 objetivos · 600 XP en total

Has sustituido a un compañero y te ha dejado su shell. Consulta el entorno y el historial de comandos para recuperar las credenciales de la base de datos de producción... y descubre por qué nunca deben escribirse en la línea de comandos.

Laboratorio 9 de 9 de la ruta Fundamentos de Linux. Si te atascas tienes 3 pistas, de la más vaga a la más precisa: cuestan 0, 50 y 150 XP.

Qué aprendes

Los objetivos se completan solos mientras trabajas en el terminal; cada uno vale puntos de experiencia:

  • Listar las variables de entorno con env (100 XP)
  • Leer una variable con echo $NOMBRE (120 XP)
  • Consultar el historial de comandos (130 XP)

Temas: linux, ambiente, history.

Los comandos que usarás

El terminal es simulado y entiende unos cuarenta comandos de Linux. En este laboratorio te servirán sobre todo estos:

  • cat: muestra el contenido de un archivo: la forma más directa de leer configuraciones, notas y registros.
  • env: lista las variables de entorno de la shell, donde a veces acaban configuraciones y credenciales.
  • echo: muestra un texto o el valor de una variable, como $HOME.
  • history: muestra el historial de los comandos escritos: cuenta quién hizo qué, a veces con contraseñas escritas en la línea de comandos.
  • grep: busca las líneas que contienen una palabra, incluso en carpetas enteras con -r. Es la herramienta principal para analizar texto y registros.
  • |: la barra vertical | encadena comandos: la salida del primero se convierte en la entrada del siguiente, y así pequeñas herramientas forman un análisis completo.

El entorno simulado

Trabajas en una shell de Linux simulada, en la carpeta personal del usuario runner: archivos y carpetas inventados, ningún objetivo en red.

La lección de defensa

Con el laboratorio resuelto, el informe explica qué falló y cómo protegerse:

El entorno y el historial cuentan mucho: quién ha usado la shell, con qué usuarios y a veces con qué contraseñas. Escribir una contraseña en la línea de comandos (-p'...') la deja en ~/.bash_history y en la lista de procesos (ps), visible para otros usuarios. Defensa: deja vacía la opción (-p: la contraseña se escribe en el prompt), usa archivos con permisos 600 o un gestor de secretos; con HISTCONTROL=ignorespace un comando que empieza por un espacio no se guarda; y cambia enseguida toda contraseña que haya acabado en un historial.

Antes y después de este laboratorio

Para abrirlo debes haber resuelto:

Después de este laboratorio puedes pasar a:

La ruta Fundamentos de Linux

Fundamentos de Linux es el punto de partida. Casi todos los servidores, los dispositivos de red y las herramientas de seguridad funcionan con Linux, y quien defiende un sistema (o lo pone a prueba con permiso) pasa gran parte del tiempo en un terminal. Aquí aprendes a moverte por el sistema de archivos, a encontrar archivos ocultos, a leer por partes registros larguísimos, a buscar palabras con grep, a encadenar comandos con tuberías y a entender permisos, variables de entorno e historial: la base que usarás en todas las demás rutas.

Todos los laboratorios de la ruta Fundamentos de Linux

Profundiza con las guías (en inglés)

Todas las guías (en inglés)