Seguridad

Explicación de los permisos de Linux

Explicación de los permisos de Linux

El sistema operativo (SO) Linux fue desarrollado para ser multitarea y multiusuario. Un sistema operativo multitarea nos permite ejecutar diferentes programas simultáneamente, un sistema operativo multiusuario permite que diferentes usuarios lo usen simultáneamente. Lo que significa que Linux es un sistema operativo multitarea porque puede ejecutar programas al mismo tiempo mientras es multiusuario porque puede conectarse a un dispositivo y usarlo a través de ssh mientras otro usuario lo está usando.Si no me equivoco, las últimas versiones de Windows, al menos las versiones del servidor, permiten que diferentes usuarios usen la computadora a través del escritorio remoto, también son compatibles con ssh a través de OpenSSH.  Pero a diferencia de Linux, Windows se desarrolló inicialmente para ser un sistema operativo personal y durante muchos años los sistemas basados ​​en Linux y Unix monopolizaron las funciones multitarea y multiusuario, lo que significa una mayor seguridad y estabilidad para un sistema desarrollado para ser compartido entre usuarios sin permisos para romper. el sistema ejecutando un código peligroso o eliminando un archivo vital.Como sistema operativo multiusuario, Linux ha incorporado una forma muy sofisticada de administrar permisos para usuarios, grupos de usuarios, archivos, directorios e incluso particiones o discos.

Comprender la sintaxis de permisos en Linux

En Linux tenemos 3 tipos de permisos:

Permiso de lectura: Permiso para leer un archivo, por ejemplo, podemos leer el código de un script, pero no podemos ejecutarlo.

Permiso de escritura: Permiso para escribir un archivo, en este caso podemos editar el script mencionado anteriormente como ejemplo, también podemos eliminarlo, o podemos crear archivos dentro de un directorio.

Permiso de ejecución: Podemos ejecutar el script o ejecutar programas con este permiso.

En un programa o directorio no podemos tener ninguno de estos derechos, todos ellos o uno o dos de ellos, pero los permisos también especifican quién tiene qué de estos derechos. Para Linux tenemos 3 objetos para las reglas de permisos:

El usuario: El propietario del archivo o directorio.

El grupo: Usuarios o programas pertenecientes al grupo del archivo.

Alguien:  Alguien mas.

Cada archivo o directorio en Linux contendrá información sobre sus propios permisos, la información está compuesta por estas 9 especificaciones mencionadas anteriormente: Permisos de lectura, escritura y ejecución para el usuario, grupo y cualquier otra persona.

La sintaxis de permisos de Linux es casi la siguiente:

rwxrwxrwx
rwxrwxrwx

En este caso, en el que el usuario, grupo y cualquier otra persona tiene plenos derechos tenemos 9 caracteres, R, W Y X repetidos 3 veces. Los primeros 3 caracteres definen los derechos / permisos del usuario, los 3 segundos caracteres definen los derechos / permisos del grupo, mientras que los últimos 3 caracteres definen los derechos / permisos de cualquier otra persona. En este caso, el usuario, grupo y cualquier otra persona tienen permisos de lectura, escritura y ejecución.

Entonces, la sintaxis explicada anteriormente se verá realmente así: Pero los permisos siempre están precedidos por un "-" en el caso de los archivos, por una "d" en el caso de los directorios (no profundizaremos con estos, sino también una B para el bloque dispositivos, una C para dispositivo de caracteres, una S para socket Unix y una P para Named Pipe).

-rwxrwxrwx
o
drwxrwxrwx

El primero para archivos y el segundo para directorios. La utilidad de los primeros caracteres es solo para determinar el tipo de archivo y no es útil para administrar permisos para que pueda concentrarse en rwxrwxrwx.

Como se dijo anteriormente, un archivo con todos los derechos para todos será -rwxrwxrwx, un archivo con todos los derechos para el usuario y el grupo, pero no para nadie más, sería -rwxrwx-, con 3 líneas reemplazando las letras de cualquier otra persona.

A directorio con todos los derechos para el usuario, los derechos de lectura solo para el grupo y cualquier otra persona sería drwxr-r-.

Estos caracteres tienen equivalentes numéricos que podemos usar con los comandos chmod:

rwx= 7 (permisos completos)
rw- = 6 (solo permisos de lectura y escritura, sin permiso de ejecución)

r-x  = 5 (leer y ejecutar solo permisos, sin permiso de escritura)

r-  = 4 (solo permiso de lectura, sin permisos de escritura ni ejecución)

-wx= 3 (solo permisos de escritura y ejecución, sin permiso de lectura)

-w- = 2 (solo permiso de escritura, sin permisos de lectura ni de ejecución)

-X = 1 (solo permiso de ejecución, sin permisos de lectura ni de ejecución)

- = 0 (sin permisos)

Empezar con chmod

El comando en Linux para definir permisos para un archivo es chmod, antes de comenzar con chmod, cree un archivo vacío con nano:

nano fileforchmod

Una vez dentro del nuevo archivo, escriba "tutorial para chmod" y presione CTRL + X y Y para guardar y salir.

Después de guardar el archivo, veamos sus permisos, para ver el tipo de permiso de un archivo o directorio:

ls -l

En este caso:

ls -l fileforchmod

Como vemos, el archivo tiene permisos de lectura y escritura para el usuario, y permisos de escritura para el grupo y cualquier otra persona, el usuario y el grupo son "compartido".

Si ejecutamos el comando menos, podremos ver nuestro documento:

Ahora salgamos de todos los permisos para este archivo, dando el permiso 0 (-), para que se ejecute:

chmod a-rw fileforchmod

Dónde:

chmod = llama al programa para cambiar los permisos

a = significa "Todos"

-= significa menos, estamos eliminando derechos, no agregando.

rw = derechos de lectura y escritura

fileforchmod = nombre de archivo.

Al ejecutar chmod, primero debemos definir sobre quién se aplica el permiso o restricción, si queremos agregar o descansar un permiso, qué permiso y para qué archivo.

P.ej:

Para definir para quién administramos los permisos podemos usar:

a = todo

tu = usuario

gramo = grupo

o = otros / cualquier otra persona

Para definir si queremos agregar o quitar un permiso usamos:

- = quitar permiso.
+= agregar permiso.

Tipos de permisos: rwx

filename = nombre del archivo que desea modificar.

Ahora veamos si funcionó volviendo a ejecutar "ls -l fileforchmod"

Como vemos, los pocos permisos que tenía el archivo anteriormente fueron eliminados. Ahora, agreguemos permisos para que el usuario lea, para que el grupo escriba y para que otros ejecuten:

Otorgar derechos de lectura al usuario:

chmod u + r fileforchmod

Otorgar derechos de escritura al grupo:

Otorgando otros derechos de ejecución:

chmod o + x fileforchmod

Como podemos ver si corremos "ls -l fileforchmod ” ahora tenemos los derechos que agregamos.

Es importante recordar que solo necesitamos definir el objeto de nuestra regla: el usuario, el grupo u otros, que si estamos agregando o reduciendo permisos (+ o -) y el permiso que queremos agregar o quitar (rwx).

Si queremos agregar o eliminar permisos para todos, usamos a en lugar de ugo (también podemos usar ugo), ahora si desea agregar permisos de ejecución tanto para el usuario como para el grupo, puede escribir:

chmod ug + x fileforchmod

Entonces consulte con ls -l fileforchmod si los derechos de ejecución se agregaron correctamente:

Para cambiar el permiso de un directorio de forma recursiva usaremos el parámetro -R.

En primer lugar, cree un directorio llamado directoryforchmod usando el comando:

directorio mkdir forchmod

Ingrese al directorio usando el comando cd:

directorio de cd forchmod

Vuelve usando el comando:

CD…

Para verificar los derechos del directorio, necesitamos agregar un parámetro a ls. Tipo:

ls -ld directorioforchmod


Como vemos, el propietario tiene todos los derechos, el grupo y otros pueden leer y ejecutar, pero no pueden escribir.
Ahora eliminemos los derechos de lectura para el usuario, para hacerlo, escriba:

directorio chmod u-r forchmod

Como vemos tras lanzar un nuevo ls -ld los permisos de lectura fueron modificados para el usuario.

Chmod permite el uso para administrar permisos de manera diferente para diferentes destinatarios a la vez mediante el uso de coma, escriba:

chmod u + r, g-r, o-r directorio forchmod

Como vemos tras otro ls -ld Se restauraron los derechos de lectura para el usuario y se eliminaron para el grupo y otros.

Como puede ver, administrar permisos en Linux es simple, hay comandos adicionales para cambiar archivos, propietario y grupos que enseñaremos en tutoriales futuros.  Espero que haya encontrado útil este artículo sobre chmod, siga siguiendo LinuxHint para obtener más consejos y actualizaciones sobre Linux.

5 mejores juegos de arcade para Linux
Hoy en día, las computadoras son máquinas serias que se usan para jugar. Si no puede obtener la nueva puntuación más alta, sabrá a qué me refiero. En ...
Batalla por Wesnoth 1.13.6 Desarrollo liberado
Batalla por Wesnoth 1.13.6 lanzado el mes pasado, es el sexto lanzamiento de desarrollo en el 1.13.x y ofrece una serie de mejoras, sobre todo en la i...
Cómo instalar League Of Legends en Ubuntu 14.04
Si eres fanático de League of Legends, esta es una oportunidad para que pruebes League of Legends. Tenga en cuenta que LOL es compatible con PlayOnLin...