Este documento describe varios comandos y conceptos clave relacionados con permisos y seguridad en Linux. Explica el rol del usuario root, la importancia de proteger su cuenta, y cómo gestionar usuarios y grupos mediante comandos como useradd, groups y newgrp. También describe el sistema de permisos de Linux, incluyendo los permisos de lectura, escritura y ejecución, y cómo aplicarlos a usuarios, grupos y otros mediante comandos como chmod. Finalmente, resume varios comandos útiles como grep, ls, top, tail
2. PERMISOS DE LINUX la seguridad y las políticas en Linux. Vamos a empezar por ver que es root. Es el administrador del sistema, el usuario que tiene poder absoluto sobre la maquina en Linux. Por esa razón cualquier hacker bajo el entorno Linux intentara ser root, ya que así tendrá acceso a cualquier cuenta de usuario. Es muy importante proteger bien la cuenta de root. El prompt de root es la almohadilla, y vamos a ver como accedemos a root desde otros sitios que no son el login. El prompt por defecto de un user normal es “$”. Además cada vez que accedemos como root el sistema lo registra en un archivo llamado “auth.log”. Para ver la info. De un fichero de lóg. según se va escribiendo ponemos tail –f. Se debe distinguir los usuarios de grupos. Un usuario es una conexión lógica al sistema y un grupo es la forma de agrupación de distintos usuarios del sistema.
3. Dentro de los user del sistema podemos distinguir la cuenta de root y las cuentas de usuarios convencionales. Los administradores del sistema deben de controlar los accesos al sistema y desactivar las cuentas que no se usan en un largo periodo de tiempo. Todas las cuentas se caracterizan porque además del nombre tiene una contraseña. Es muy importante que no haya ninguna cuenta sin contraseña. Cuando el Linux damos de alta un user se crea automáticamente un grupo con el mismo nombre del usuario. Para añadir nuevos usuarios en Linux usamos el comando “useradd” o “adduser”.
4. Los comandos básicos para gestionar los grupos son: Groups: sirve para ver a los grupos que pertenece un user. Newgrp: sirve para cambiarse a un grupo. Passwd –g grupo: sirve para cambiar la clave del grupo. Gpasswd grupo: administrar grupos con clave. Luego tiene modificadores como:
5. El sistema de permisos de Linux es simple y efectivo. Ejecución: Si es para un archivo será ejecutable y si es para un directorio significa que podemos pasar por él. Es representado por una X. Lectura: Si es para un archivo significa que podemos leerlo y si es un directorio es que podemos leerlo también. Es representado por una R. Escritura: Si es para un archivo será que podemos escribir en él y si es para un directorio significa que podemos crear ficheros dentro de él. Es representado por una W También existen tres tipos de roles sobre los que se aplican estos permisos. Un archivo pertenece a un usuario y a un grupo: Usuario: El propietario del archivo. Grupo: Grupo al que pertenece el archivo. Otros: Los demás usuarios.
6. Los permisos sirven en linux para limitar el acceso y privilegios de determinados usuarios a ciertos archivos o directorios. Los permisos se organizan en tres grupos. El primero se refiere al propietario del archivo, el segundo se refiere al grupo propietario del archivo el tercero al resto de usuarios. Los permisos se pueden asignar de forma octal (numérica) o con combinaciones de letras rwx. RRead (Lectura), WWrite (Escritura), XExecute (Ejecución).
7. Veamos un ejemplo de como pasar una cadena de permisos a modo octal. Si tenemos estos permisos: rwx r-- --x, lo primero que se debe hacer es separarlos por grupos de tres. Entonces sabiendo que la letra de más peso es la de más a la izquierda y que en modo octal con tres dígitos, el primer dígito valdrá 4, el segundo 2 y el tercero 1.rwx = 421r-- = 400--x = 001Entonces sumando los tres dígitos de cada grupo obtendremos que:El primer dígito (propietario) 4+2+1 = 7El segundo dígito (grupo) 4+0+0 = 4El tercer dígito (otros) 0+0+1 = 1Por lo tanto, el permiso rwx r-- --x en octal es 741.
8. Comando Chmod Este comando sirve para modificar permisos de archivos, En el primer caso añadimos permisos de forma octal, En el ejemplo añadimos el permiso ejecutar al grupo propietario del archivo. Podemos usar o+,o- para los otros usuarios, g+, g- para añadir o quitar permisos sobre el grupo, y u+, u- para los permisos del usuario propietario, seguidos de la letra r(read), w(write) o x(execute). Comando Grep Este es un comando indispensable. Sirve para buscar cadenas de texto dentro de un archivo o dentro de otra cadena. (ls es para listar todos los archivos y directorios y wc -l para contar el número de líneas. Comando ls Comando indispensable. Sirve para listar los archivos y directorios de una carpeta.
9. Comando Top Muestra toda la actividad de los procesos que se están ejecutando en tiempo real. Así como información varia del sistema, uptime, memoria, etc. Comando Tail Este comando sirve para visualizar la parte final de un documento (en inglés tail significa cola). Se puede usar en muchos casos, por ejemplo, supongamos que tenemos un log de errores del servidor web Apache que ocupa varios GB. Mostrarlo usando el comando cat error_log no sería una buena idea, y menos si lo único que queremos es ver un error reciente que está en las últimas líneas del fichero. En este caso esta instrucción nos vendría muy bien para que nos mostrara por pantalla las últimas 50 líneas del archivo error_log. Comando Kill Este comando es muy útil para detener un proceso. Normalmente se utiliza el comando ps para buscar el PID (Process id o número identificador de proceso) y luego kill para 'matarlo' .
10. Comando Du Muestra el uso de disco de cada ARCHIVO y directorio (incluído sus subdirectorios). Comando Head Devuelve las primeras líneas de un texto dado. Este ejemplo devolvería las primeras 10 líneas del archivo. Comando Locate Este comando sirve para localizar la ruta de un archivo en linux para saber dónde está guardado. Puede ser más rápido que find ya que almacena las rutas en una base de datos. Es especialmente útil cuando se conoce el nombre del programa pero no se recuerda la ruta.