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..
- 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. - 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.
- Haga que el script sea ejecutable: después de crear el script, deberá hacerlo ejecutable.
- 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.