Domina los permisos de los directorios y archivos de Linux
Si hay un aspecto que destaca de Linux respecto a otros sistemas, como Windows, es la seguridad. Y no solo hablamos de vulnerabilidades y privacidad, sino también de la forma en la que gestiona los archivos personales de sus usuarios. Cada archivo y cada carpeta cuenta con unos permisos definidos, sin los cuales nadie podrá acceder al archivo en cuestión. Y, si estamos aprendiendo a usar Linux, los permisos es uno de los aspectos que debemos conocer y aprender.
El sistema de archivos que utiliza Linux es mucho más avanzado, y a la vez sencillo, que el que utilizan otros sistemas, como Windows. Este se basa en especificar si el propietario, el grupo de usuarios o cualquiera puede leer, escribir o ejecutar el archivo. Sin duda, es una forma muy eficaz de mantener a cada usuario del sistema controlado, evitando que este pueda acceder a los datos de los demás sin permiso.
Es cierto que este sistema de permisos puede parecer algo complicado. Pero, a continuación, te explicamos en qué se basa y cómo podemos cambiar a nuestro gusto estos permisos.
Qué significan los «números» o «letras» en los permisos de Linux
Los permisos en Linux se pueden reflejar tanto con letras como con números. Ambas formas son correctas e igual de funcionales. Sin embargo, lo más intuitivo son las letras, ya que nos permiten comprender mejor de qué permiso se trata. Los números son más usados por usuarios avanzados, al ser más rápido de especificar.
Cada archivo o carpeta que nos encontremos al listar el contenido de un directorio irá indicado con un sÃmbolo:
- – indica que se trata de un archivo.
- d indica que se trata de un directorio.
- l indica que se trata de un enlace (acceso directo, por ejemplo).
Y cada archivo o directorio lleva tres niveles de permisos diferentes: uno para el propietario, otro para los usuarios del mismo grupo que el propietario, y otro para los demás usuarios. A su vez, cada uno de estos niveles puede tener 3 valores diferentes en función del grado de privilegios que especifiquemos en el sistema. Estos valores podemos especificarlos por las siguientes letras:
- r – permiso de lectura (permite abrirlo, copiarlo, etc).
- w – permiso de escritura (permite modificarlo, borrarlo, etc).
- x – permiso de ejecución (si es binario, permite ejecutarlo).
De esta manera, tenemos que elegir los permisos (rwx) para cada nivel de usuario (dueño, grupo y otros).
Por ejemplo, supongamos que tenemos un archivo llamado «softzone» en nuestro disco duro con Linux. Vamos a configurar que el propietario tenga control total sobre él (rwx), los miembros del grupo solo lectura (r–) y los demás usuarios ningún permiso (—). En ese caso, los permisos serÃan los siguientes:
Tipo | Propietario | Grupo | Otros |
---|---|---|---|
- | rwx | r-- | --- |
Cómo funcionan los permisos de Linux mediante números
Si no nos gustan las letras, también podemos usar el código numérico para cambiar los permisos de Linux. Este código no es más que el valor del código binario según los permisos que estén o no usados. Supongamos que cada uno de los permisos ocupa una posición en binario. En este caso, rwx equivaldrÃa a 111 binario, que en decimal serÃa 7. r– serÃa 100 en binario, o lo que es lo mismo, 4 en decimal. Y — serÃa 000 en binario, 0 en decimal.
Siguiendo estas directrices, los permisos del ejemplo del caso anterior serÃa 740. El primer dÃgito corresponde al propietario del archivo, el segundo al grupo y el tercero a todos los demás. Los números de permisos que nos podemos encontrar serán los siguientes:
- 0 = —
- 1 = –x
- 2 = -w-
- 3 = -wx
- 4 = r-
- 5 = r-x
- 6 = rw-
- 7 = rwx
Algunos ejemplos de esto serÃan:
Propietario | Grupo | Otros | Resultado | |
---|---|---|---|---|
Código de letras | rwx | r-- | --- | rwxr----- |
Código numérico | 7 | 4 | 0 | 740 |
--- | ||||
Código de letras | r-- | --- | --- | r-------- |
Código numérico | 4 | 0 | 0 | 400 |
--- | ||||
Código de letras | r-x | rw- | --x | r-xrw---x |
Código numérico | 5 | 6 | 1 | 561 |
Ambos sistemas son igual de efectivos, y cada uno tiene sus ventajas e inconvenientes. Mientras que las letras nos permiten tener ver más claro el nivel de permisos, los números son mucho más simples, aunque hay que pensar un poco más.
Cómo cambiar los permisos en Linux
Para cambiar los permisos en Linux es necesario usar el comando «chmod». Este comando debe ir acompañado del nuevo nivel de privilegios que queramos darle al nuevo archivo o directorio, asà como de un «+» si lo que vamos a hacer es darle ese nuevo permiso, o un «-» si lo que vamos a hacer es quitarle permisos. También podemos cambiar los permisos del «grupo» y «otros usuarios» añadiendo los parámetros «g» y «o» respectivamente. El propietario se indicarÃa sin este parámetro, o con una «u». Y si queremos cambiar los permisos a todos a la vez, podemos usar el parámetro «a».
Partiendo de un archivo «softzone», estos son algunos ejemplos para cambiar los permisos usando el código de letras:
- chmod +rwx softzone -> añade permiso de lectura, escritura y ejecución al propietario.
- chmod g+rwx softzone -> añade permiso de lectura, escritura y ejecución al grupo del usuario propietario.
- chmod o+rwx softzone -> añade permiso de lectura, escritura y ejecución al resto de usuarios.
- chmod -x softzone -> quita el permiso de ejecución al propietario.
- chmod g-wx softzone -> quita los permisos de escritura y ejecución al grupo del usuario propietario.
- chmod o-rwx softzone -> quita todos los permisos al resto de usuarios.
- chmod a+r -> añade permiso de lectura a propietario, grupo y resto de usuarios.
También podemos usar el código numérico para cambiar el nivel de permisos de cualquier archivo de la siguiente manera:
- chmod 777 softzone -> permiso rwx para propietario, grupo y resto de usuarios.
- chmod 700 softzone -> permiso rwx para propietario, y grupo y usuarios sin permisos.
- chmod 327 softzone – permiso de escritura y ejecución para propietario, escritura para grupo y rwx para resto de usuarios.
Para cambiar los privilegios a un directorio, los comandos son los mismos, con la diferencia de que en vez del nombre del archivo tendremos que especificar el directorio en cuestión.
Cambiar el propietario o grupo de un archivo o directorio
Además de cambiar los permisos de los archivos o los directorios, si tenemos problemas también podemos cambiar nosotros el propietario o el grupo al que pertenece cualquiera de ellos.
Por ejemplo, podemos cambiar el grupo de un archivo (o directorio) usando el comando «chgrp groupname archivo» (cambiando «groupname» por el nombre del grupo que queremos añadir, y «archivo» por el nombre del fichero o el directorio que corresponda).
También podemos cambiar quién es el propietario de cualquier archivo. Para ello, usaremos el comando «chown» seguido del nombre del nuevo propietario del archivo, y el nombre del archivo o directorio sobre el que realizar el cambio.
Fuente: SoftZone https://ift.tt/3tCebhS Autor: Rubén Velasco