Saltar al contenido
HACKME

Nivel 3 · 3A Sistemas y terminal · Lección 3 de 3

Permisos: quién puede qué

2 min de lectura · Gratis · Desde cero

En Linux cada archivo dice quién puede leerlo (r), modificarlo (w) y ejecutarlo (x). Y lo dice para tres grupos: el dueño, el grupo y todos los demás. Con ls -l lo ves como -rw-r----- al principio de cada línea.

Los números de chmod

chmod cambia los permisos. Cada cifra suma: leer vale 4, escribir vale 2 y ejecutar vale 1. Se escriben tres cifras, en orden dueño, grupo y otros. 600 significa que solo el dueño lee y escribe. 640 suma que el grupo también lea. 777 es que cualquiera puede todo: casi nunca es buena idea.

ls -l
chmod 600 claves.txt
chmod 640 copia-seguridad.sql
Qué hace este código:
  • ls -l muestra los permisos de cada archivo.
  • chmod 600 deja el archivo legible solo por su dueño.
  • chmod 640 permite además que el grupo lo lea.

El principio del menor privilegio

Cada persona y cada programa debe tener solo los permisos que necesita para su trabajo, y nada más. Si una cuenta cae en manos de un atacante, el daño queda limitado a lo que esa cuenta podía hacer. Archivos con claves, copias de bases de datos y claves privadas SSH deberían poder leerlos solo sus dueños.

ls -a /tmp
rm /tmp/.actualizar.sh
Qué hace este código:
  • ls -a muestra también los archivos ocultos, los que empiezan con punto.
  • rm archivo borra un archivo (rm -r borra una carpeta). No hay papelera: lo que borrás no vuelve, así que pensalo dos veces.

Para ir más a fondo

Dueño, grupo y otros

Cuando alguien intenta abrir un archivo, el sistema revisa en orden: ¿es el dueño? usa los permisos del dueño. ¿Está en el grupo? usa los del grupo. Si no, usa los de «otros». Por eso un archivo 644 lo puede leer cualquier usuario del servidor: no sirve para guardar secretos.

Preguntas de repaso

¿Qué permisos da chmod 600 a un archivo?

Respuesta: Solo el dueño lo lee y lo escribe. 6 = leer (4) + escribir (2) para el dueño; los ceros quitan todo al grupo y a otros.

Un archivo con claves de la base de datos tiene permisos 777. ¿Qué hacés?

Respuesta: Lo cerrás con chmod 600. Con 777 cualquiera lee y modifica las claves. El menor privilegio pide cerrarlo.

En el registro ves que una IP rara entró con éxito a la cuenta «deploy» después de muchos intentos fallidos. ¿Qué hacés primero?

Respuesta: Tratar la cuenta como comprometida: cambiar su clave, bloquear la IP y revisar lo que dejó. Muchos fallos seguidos de un acierto es la huella de una clave adivinada. Hay que contener, limpiar y avisar.