Cómo restringir a los usuarios la ejecución de chmod 777

1 feb 2024 2 min di lettura
Cómo restringir a los usuarios la ejecución de chmod 777
Indice dei contenuti

Introducción

Crear un contenedor de secuencias de comandos personalizado para chmod puede ayudarlo a administrar y restringir el uso de ciertos comandos chmod, por ejemplo, evitando que se establezcan permisos 777. A continuación se muestra un ejemplo básico de cómo crear una secuencia de comandos de este tipo en Ubuntu o cualquier otro sistema basado en Linux..

  1. Cree el script: creará un script llamado safe_chmod y lo colocará en un directorio como /usr/local/bin el que se encuentra comúnmente en $PATH del usuario.
  2. Contenido del guión:
    • El script comprobará el patrón de permiso específico (por ejemplo, 777) y mostrará un mensaje de advertencia si se utiliza ese patrón.
    • Ejecutará el comando chmod normal para todos los demás casos.
  3. Haga que el script sea ejecutable: después de crear el script, deberá hacerlo ejecutable.
  4. Crear un alias: cree un alias de safe_chmod para chmod en scripts de inicio de sesión/sin inicio de sesión

Aquí hay una guía paso a paso:

Paso 1: crea el guión

Abra una terminal y use un editor de texto para crear el script. Por ejemplo, usando nano:

sudo nano /usr/local/bin/safe_chmod

Agregue el siguiente contenido al archivo:

#!/bin/bash
 # Custom script wrapper for chmod to prevent setting 777 permissions

 # Check if any of the arguments is '777'
 for arg in "$@"; do
 if [ "$arg" == "777" ]; then
 echo "Error: Setting 777 permissions is not allowed for security reasons."
 exit 1
 fi
 done

 # If 777 is not found, execute the original chmod command with all arguments
 /bin/chmod "$@"

Paso 2: hacer ejecutable el script

Guarde y cierre el archivo. Luego, haga que el script sea ejecutable:

sudo chmod +x /usr/local/bin/safe_chmod

Paso 3: alias el comando chmod

Para que el script reemplace efectivamente el comando chmod, puede crear un alias chmod en safe_chmod. Esto se puede hacer editando los archivos `.bashrc` o `.bash_profile` para cada usuario o globalmente en `/etc/bash.bashrc`:

echo "alias chmod='/usr/local/bin/safe_chmod'" >> ~/.bashrc
source ~/.bashrc

Conclusión y consideraciones

Este método de script contenedor es una forma sencilla y eficaz de evitar el uso de chmod 777, mejorando la seguridad de sus sistemas Linux. Sin embargo, es importante señalar que este método no es infalible. Los usuarios con permisos suficientes pueden evitar esta restricción y no interrumpe las invocaciones directas de /bin/chmod a menos que el alias esté activo.

Por lo tanto, esta estrategia debe ser parte de un enfoque de seguridad más amplio que incluya capacitación de usuarios, prácticas apropiadas de administración del sistema y auditorías periódicas. Recuerde, las mejores prácticas de seguridad implican múltiples capas de protección para salvaguardar su sistema de manera efectiva.

Support us with a

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.