Linux——administración de usuarios, grupos y configuración de permisos de archivos

 

1. Usuarios y grupos

El código de identificación único de un usuario en un sistema Linux es un ID de usuario, es decir, UID, y cada usuario pertenece al menos a un grupo, que es un grupo de usuarios. Hay un código de identificación único para grupos de usuarios, que es GID. Diferentes usuarios tienen diferentes permisos.

1. Conozca el archivo de la cuenta de usuario /etc/passwd y el archivo shadow del usuario /etc/shadow

cat /etc/passwd muestra la información del usuario del sistema

 

Cada línea contiene información sobre un usuario, incluidos siete dominios, separados por: .

raíz:6x:0:0:raíz:/raíz:/bin/bash

Primer campo: nombre de usuario

Segundo campo: contraseña

El tercer campo: UID

El cuarto campo: GID

El quinto campo: el nombre completo del nombre de usuario

El sexto campo: el directorio de inicio de sesión del usuario

El séptimo campo: el tipo de shell utilizado por el usuario

cat /etc/shadow muestra:

 

raíz:$1$HYFeV$E24GrTEYNjXQptoHpHOan.:16349:0:99999:7:::

Incluye nueve dominios

(1) Nombre de la cuenta: dado que la contraseña también debe corresponder a la cuenta, debe ser la misma que la cuenta en /etc/passwd.

(2) Contraseña: esta es la contraseña real y es una contraseña codificada. Solo la raíz puede leer y escribir. Si el primer carácter en la columna de la contraseña es '*' o '#', significa que esta cuenta no se utilizará iniciar sesión.
(3) Fecha del último cambio de contraseña: Este tiempo es el intervalo de tiempo (número de días) desde el 1 de enero de 1970 hasta el último cambio de contraseña.

(4) El número mínimo de días entre dos cambios de contraseña: el cuarto campo registra cuántos días debe pasar la contraseña de la cuenta antes de poder cambiarla.

(5) El número máximo de días entre dos cambios de contraseña

(6) Con cuántos días de antelación avisar al usuario que la contraseña va a caducar

(7) ¿Cuántos días después de que caduque la contraseña para deshabilitar a este usuario?

(8) Fecha de vencimiento de la cuenta: el número de días desde el 1 de enero de 1970

(9) Campo reservado. No usado.

2. Conozca el archivo de cuenta de grupo /etc/group y el archivo shadow de grupo de usuarios /etc/gshadow

La configuración de grupos de usuarios es para facilitar la verificación y configuración de los derechos de acceso de archivos o directorios. Ejemplo: Para que algunos usuarios tengan permiso para ver un determinado archivo, como un horario, la persona que escribe el horario debe tener permiso para leer, escribir y ejecutar. Queremos que algunos usuarios conozcan el contenido del horario y no permitirles modificarlo, por lo que podemos asignar estos usuarios a un grupo (usando el comando chgrp) y luego modificar los permisos de este archivo (usando el comando chmod) para que el grupo de usuarios sea legible (usando el comando chgrp para atribuir este archivo a este grupo), por lo que cada usuario del grupo de usuarios es legible y otros usuarios no pueden acceder a él.

Cat / etc / espectáculos grupales

nombre_grupo:contraseña:GID:lista_usuario

 

 

 

El directorio gshadow no presenta

 

2. Gestión de usuarios

Para realizar la gestión de cuentas de usuario, el trabajo a realizar incluye principalmente los siguientes aspectos:
a) Agregar, eliminar y modificar cuentas de usuario.
b.Gestión de las contraseñas de los usuarios.

Gestión de cuentas de usuario de Linux

La gestión de cuentas de usuario consiste principalmente en agregar, eliminar y modificar cuentas de usuario.
Agregar una cuenta de usuario es crear una nueva cuenta en el sistema y luego asignar recursos como número de usuario, grupo de usuarios, directorio de inicio y shell de inicio de sesión a la nueva cuenta. La cuenta recién agregada está bloqueada y no se puede usar.
1. Para agregar una nueva cuenta de usuario , use el comando useradd, la sintaxis es la siguiente:


useradd opción nombre de usuario
Los significados de cada opción son los siguientes:
-c comentario especifica una descripción de comentario.
El directorio -d especifica el directorio de inicio del usuario. Si este directorio no existe, use la opción -m al mismo tiempo para crear el directorio de inicio.
-g grupo de usuarios Especifica el grupo de usuarios al que pertenece el usuario .
-G grupo de usuarios, grupo de usuarios Especifica grupos adicionales a los que pertenece el usuario. (Establecer nuevos usuarios en otros grupos)
-s El archivo Shell especifica el shell de inicio de sesión del usuario.
-u número de usuario especifica el número de usuario del usuario .Si existe la opción -o al mismo tiempo, se puede reutilizar el número de identificación de otros usuarios.
-p Este comando es necesario para proporcionar la contraseña cifrada del código md5, los números ordinarios no son aceptables.

 

 

Ejemplo 1:
# useradd -d /usr/sam -m sam
Este comando crea un usuario sam, donde las opciones -d y -m se usan para generar un directorio de inicio /usr/sam para el nombre de inicio de sesión sam (/usr es el directorio principal de usuario predeterminado del directorio de inicio).
Ejemplo 2:
# useradd -s /bin/sh -g group -G adm,root gem
Este comando crea una nueva gema de usuario, el shell de inicio de sesión del usuario es /bin/sh, pertenece al grupo de usuarios del grupo y al mismo time pertenece a adm y El grupo de usuarios raíz, del cual el grupo de usuarios del grupo es su grupo principal.
Se puede crear un nuevo grupo aquí: groupadd group y groupadd adm
Agregar una cuenta de usuario es agregar un registro para el nuevo usuario en el archivo /etc/passwd y actualizar otros archivos del sistema, como /etc/shadow, /etc/ grupo, etc

2. Eliminar cuenta
Si una cuenta de usuario ya no se usa, se puede eliminar del sistema. Eliminar una cuenta de usuario es eliminar el registro de usuario en los archivos del sistema, como /etc/passwd, y eliminar el directorio de inicio del usuario si es necesario. Para eliminar una cuenta de usuario existente , use el comando userdel, el formato es el siguiente:
Código:
userdel option nombre de usuario
La opción comúnmente utilizada es -r, y su función es eliminar el directorio de inicio del usuario juntos.
Por ejemplo:
# userdel -r sam
Este comando elimina los registros del usuario sam en los archivos del sistema (principalmente /etc/passwd, /etc/shadow, /etc/group, etc.) y elimina el directorio de inicio del usuario al mismo tiempo. .

3. Modificar la cuenta
Modificar la cuenta de usuario es cambiar los atributos relevantes del usuario (chgrp es para archivos) de acuerdo con la situación real, como el número de usuario, el directorio de inicio, el grupo de usuarios, el shell de inicio de sesión, etc.
Use el comando usermod para modificar la información de un usuario existente, el formato es el siguiente:
código:
opción usermod nombre de usuario [solo el administrador final tiene la autoridad para modificar el nombre de la cuenta, si usa el comando sudo para autorizar la cuenta ordinaria, también está bien]
las opciones comunes incluyen -c, -d, -m, -g, -G, -s, -u, -o, etc., el significado de estas opciones es el mismo que en el comando useradd, que puede especificar nuevos valores de recursos para los usuarios. Además, algunos sistemas pueden usar las siguientes opciones:
Código:
-l nuevo nombre de usuario
Esta opción especifica una nueva cuenta, es decir, el nombre de usuario original se cambia por un nuevo nombre de usuario .
Por ejemplo:
# usermod -s /bin/ksh -d /home/z -g desarrollador sam
Este comando cambia el shell de inicio de sesión del usuario sam a ksh, el directorio de inicio a /home/z y el grupo de usuarios a desarrollador.
#usermod zte1 -g cheng
#Este comando es para cambiar el grupo del usuario zte1 a cheng

4. Ver las propiedades de la cuenta

Formato: id usuario1  muestra el uid y gid de usuario1, y el valor predeterminado es la información de id del usuario actual.

grupos usuario1 Muestra los grupos del usuario usuario1, el valor predeterminado es la información del grupo del usuario actual.

 

Gestión de contraseñas de usuarios de Linux

Una parte importante de la gestión de usuarios es la gestión de cuentas de usuario. La cuenta de usuario no tiene contraseña cuando se crea por primera vez, está bloqueada por el sistema y no se puede usar. Se le debe asignar una contraseña antes de que se pueda usar, incluso si es una contraseña vacía.
El comando Shell para especificar y modificar la contraseña del usuario es passwd. Los usuarios finales pueden especificar contraseñas para ellos mismos y para otros usuarios, y los usuarios comunes solo pueden modificar sus propias contraseñas. El formato del comando es:
Código:
contraseña opción nombre de usuario
Opciones disponibles:
-l Bloquear la contraseña, es decir, deshabilitar la cuenta.
-u Contraseña para desbloquear.
-d hace la cuenta sin contraseña.
-f Obliga al usuario a cambiar la contraseña en el próximo inicio de sesión.
Si es el nombre de usuario predeterminado, modifique la contraseña del usuario actual.
Por ejemplo: Suponiendo que el usuario actual es sam, el siguiente comando modifica la propia contraseña del usuario:
 passwd
Contraseña anterior:******
Contraseña nueva:********
Vuelva a ingresar la contraseña nueva:*** ** **
Si es un usuario final, la contraseña de cualquier usuario se puede especificar de la siguiente forma:
 passwd sam
Nueva contraseña: ********
Vuelva a ingresar la nueva contraseña: ******* *


Cuando los usuarios comunes modifican sus propias contraseñas, el comando passwd primero solicitará la contraseña original y luego requerirá que el usuario ingrese la nueva contraseña dos veces. Si las contraseñas ingresadas dos veces son las mismas, la contraseña se asignará al usuario; y el El usuario final asignará la contraseña al usuario. , no necesita saber la contraseña original. Por razones de seguridad, los usuarios deben elegir contraseñas complejas, preferiblemente de no menos de 8 dígitos, que contengan letras mayúsculas, minúsculas y números, y deben ser diferentes de nombres, cumpleaños, etc.
Al especificar una contraseña vacía para un usuario, ejecute un comando de la forma:
Código:
# passwd -d sam

 

La próxima vez que inicie sesión, puede iniciar sesión sin ingresar una contraseña.
Este comando elimina la contraseña del usuario sam para que el sistema no solicite la contraseña cuando el usuario sam inicie sesión la próxima vez.
El comando passwd también puede usar la opción -l (bloquear) para bloquear a un usuario para que no pueda iniciar sesión, por ejemplo:
código:
# passwd -l sam (al iniciar sesión nuevamente después de apagar, se producirá una falla de autenticación)

3. Gestión de grupos

Gestión de grupos de usuarios de Linux

La gestión de grupos de usuarios implica agregar, eliminar y modificar grupos de usuarios. La adición, eliminación y modificación de grupos en realidad actualizan el archivo /etc/group.

1. Agregue un nuevo grupo de usuarios usando el comando groupadd. El formato es el siguiente:
Código:
groupadd option user group [Después de agregar el grupo de usuarios, asigne el usuario al grupo con los comandos chown y chgrp]
Las opciones que se pueden usar son:
-g GID Especifica el número de identificación del grupo ( GID) del nuevo grupo de usuarios.
-o generalmente se usa junto con la opción -g, lo que indica que el GID del nuevo grupo de usuarios puede ser el mismo que el GID del grupo de usuarios existente en el sistema.
Ejemplo 1:
# groupadd group1
Este comando agrega un nuevo grupo group1 al sistema, y ​​el número de identificación de grupo del nuevo grupo se basa en el número de identificación de grupo más grande actual más 1.
Ejemplo 2:
# groupadd -g 101 group2
Este comando agrega un nuevo grupo group2 al sistema y, al mismo tiempo, especifica que el número de identificación de grupo del nuevo grupo es 101.
2. Si desea eliminar un grupo de usuarios existente , use el comando groupdel, el formato es el siguiente:
Código:
groupdel user group
Por ejemplo:
# groupdel group1
Este comando elimina el grupo group1 del sistema.
3. Modifique los atributos de los grupos de usuarios utilizando el comando groupmod. Su sintaxis es la siguiente:
Código:
groupmod opción grupo de usuarios
Las opciones comúnmente utilizadas son:
-g GID especifica un nuevo número de identificación de grupo para el grupo de usuarios.
Cuando las opciones -o y -g se usan al mismo tiempo, el nuevo GID del grupo de usuarios puede ser el mismo que el GID del grupo de usuarios existente en el sistema.
-n nuevo grupo de usuarios Cambia el nombre del grupo de usuarios a un nuevo nombre
Ejemplo 1:
# groupmod -g 102 group2
Este comando cambia el número de identificación de grupo del grupo group2 a 102.
Ejemplo 2:
# groupmod -g 10000 -n group3 group2
Este comando cambia el número de identificación de group2 a 10000 y el nombre del grupo a group3.
4. Si un usuario pertenece a varios grupos de usuarios al mismo tiempo, el usuario puede cambiar entre grupos de usuarios para tener los permisos de otros grupos de usuarios. Después de iniciar sesión, los usuarios pueden usar el comando newgrp para cambiar a otros grupos de usuarios. El parámetro de este comando es el grupo de usuarios de destino.
Por ejemplo:
$ newgrp root
Este comando convierte al usuario actual en el grupo de usuarios raíz, siempre que el grupo de usuarios raíz sea de hecho el grupo principal o el grupo adicional del usuario. De forma similar a la gestión de cuentas de usuario, la gestión de grupos de usuarios también se puede realizar a través de herramientas integradas de gestión del sistema.

Atributos de archivo y permisos:

Los permisos y atributos de los archivos son una parte muy importante de Linux. Hoy veremos principalmente los atributos de los archivos de Linux.

 

 

herramienta

  • sistema operativo linux

método/paso

  1. Básicamente, debe usar la identidad raíz para ver las propiedades de Linux, por lo que el primer paso es iniciar sesión como identidad raíz.

su raíz

  1. En primer lugar, comprenda un comando importante y de uso común para ver archivos, ls, ls significa lista, y el enfoque es mostrar el nombre del archivo y los atributos relacionados del archivo.

Después de iniciar sesión en Linux como root, ejecute ls -al para ver el contenido;

Traiga el parámetro -al para enumerar todos los permisos y atributos detallados del archivo, incluidos los archivos ocultos (el archivo cuyo primer carácter es "." en el nombre del archivo es un archivo oculto)

 

 

  1. Vea el diagrama esquemático de los atributos del archivo en los resultados mostrados por ls -al

El primer carácter de la columna indica que el archivo es un "directorio, archivo o archivo vinculado, etc."

Si es [d], significa que el registro es un directorio;

Si es [-], significa que es un archivo;

Si es [ l ], se expresa como un archivo de enlace (linkfile);

Si es [b], significa el dispositivo de interfaz disponible para almacenamiento en el archivo del dispositivo;

Si es [c], significa el dispositivo de puerto serie en el archivo del dispositivo, como el teclado y el mouse.

Los siguientes caracteres están en grupos de 3 y son todos "rwx":

Donde [r] significa legible (leer);

Donde [w] significa escribible (escribir);

Donde [x] significa ejecutable (ejecutar);

Las posiciones de estos 3 permisos no cambiarán, si no hay un permiso correspondiente, aparecerá un signo menos [-]

 

  1. La segunda columna indica cuántos nombres de archivo están conectados a este nodo (i-nodo)

La tercera lista indica la "cuenta de propietario" de este archivo (o directorio)

La cuarta lista indica el grupo de usuarios al que pertenece este archivo

La quinta columna es el tamaño de este archivo, la unidad predeterminada es B

La sexta columna es la fecha de creación del archivo o la última fecha de modificación de este archivo

La séptima columna es el nombre del archivo.

  1. Para el uso detallado de ls, también puede usar man ls para obtener más información

 

En Linux, se agregan muchos atributos a cada archivo, especialmente al grupo de usuarios, cuyo mayor uso es en "seguridad de datos". Si tiene un equipo de desarrollo, en su equipo, quiere que todos puedan usar los archivos en ciertos directorios, pero otras personas que no están en su equipo no pueden usarlo, entonces puede escribir los permisos de archivo requeridos por el equipo como 【-rwxrwx---】

2. Cambiar los atributos y permisos de los archivos

Aquí presentamos varios comandos que se usan comúnmente para permisos de grupos, propietarios y varias identidades. Como sigue

chgrp:  cambia el grupo al que pertenece el archivo

chown: cambiar el propietario del archivo

chmod: cambia los permisos del archivo , 

1. Comando chmod

El comando chmod es muy importante y se usa para cambiar los permisos de acceso de un archivo o directorio. Los usuarios lo utilizan para controlar el acceso a archivos o directorios. Hay dos usos para este comando. Uno es un método de configuración de texto que incluye letras y expresiones de operador; el otro es un método de configuración de números que incluye números.

Método de configuración de texto

chmod [quién] [+ | - | =] [modo]

El significado de cada opción en el comando de nombre de archivo es:

el objeto de operación que puede ser cualquiera de las siguientes letras o una combinación de ellas:

u significa " user (usuario)", el propietario del archivo o directorio.

g significa "usuarios del mismo grupo", es decir, todos los usuarios con el mismo ID de grupo que el propietario del archivo.

o significa "otros".

a significa "todos (todos) los usuarios". Es el sistema por defecto.

Los símbolos de acción pueden ser:

+ Agrega un permiso.

- Cancelar un permiso.

= otorga el permiso otorgado y revoca todos los demás (si los hubiere).

Se puede usar cualquier combinación de las siguientes letras para establecer el permiso indicado por el modo:

r legible.

w es escribible.

x es ejecutable.

X El atributo x se agrega solo si el archivo de objeto es ejecutable para algunos usuarios o si el archivo de objeto es un directorio.

s establece el propietario o ID de grupo del proceso como el propietario del archivo cuando se ejecuta el archivo. El modo "u+s" establece el bit de ID de usuario del archivo y "g+s" establece el bit de ID de grupo.

t Guarde el texto del programa en el dispositivo de intercambio.

Tiene los mismos permisos que el propietario del archivo.

g tiene los mismos permisos que los usuarios del mismo grupo que el propietario del archivo.

o Tener los mismos permisos que otros usuarios.

Nombre de archivo: una lista de archivos para cambiar los permisos separados por espacios, se admiten comodines.

Se pueden dar múltiples métodos de permiso en una línea de comando, separados por comas. Por ejemplo: chmod g+r, o+r ejemplo

permite que el mismo grupo y otros usuarios tengan permiso de lectura en el archivo ejemplo.



Método de configuración de números

Primero debemos comprender el significado de los atributos representados por números: 0 significa que no hay permiso, 1 significa permiso de ejecución, 2 significa permiso de escritura, 4 significa permiso de lectura y luego sumarlos. Entonces, el formato del atributo numérico debe ser de 3 números octales del 0 al 7 en el orden (u)(g)(o).

 

Por ejemplo, si desea que el propietario de un archivo tenga permisos de "lectura/escritura", debe configurar 4 (legible) + 2 (escribible) = 6 (lectura/escritura). La forma general del método de ajuste digital es:

chmod [modo] nombre de archivo

 

2. Comando chgrp



Función: Cambia el grupo al que pertenece un archivo o directorio.

Sintaxis: chgrp [opción] nombre de archivo de grupo

Este comando cambia el grupo de usuarios al que pertenece el archivo especificado. Entre ellos, grupo puede ser el ID del grupo de usuarios o el nombre de grupo del grupo de usuarios en el archivo /etc/group. El nombre del archivo es una lista de archivos separados por espacios para cambiar el grupo al que pertenecen, y se admiten comodines. Si el usuario no es el propietario o el superusuario del archivo, no se puede cambiar el grupo del archivo.

Los significados de cada opción de este comando son:

- R Cambiar recursivamente el grupo de atributos del directorio especificado y todos los subdirectorios y archivos debajo de él.

Ejemplo 1: $ chgrp - R book /opt/local /book

Cambia el grupo de propiedades de todos los archivos en /opt/local /book/ y sus subdirectorios a book.

3. función de comando chown

: cambia el propietario y el grupo de un archivo o directorio. Este comando también se usa muy comúnmente. Por ejemplo, el usuario root copia un archivo propio al usuario xu. Para permitir que el usuario xu acceda a este archivo, el usuario root debe establecer el propietario de este archivo en xu, de lo contrario, el usuario xu no puede acceder a este archivo.

Sintaxis: chown [Opciones] Descripción del archivo de usuario o grupo

: chown cambia el propietario del archivo especificado al usuario o grupo especificado. usuario puede ser nombre de usuario o ID de usuario. El grupo puede ser un nombre de grupo o una ID de grupo. Archivos es una lista de archivos separados por espacios para cambiar los permisos, se admiten comodines.

Los significados de las opciones de este comando son los siguientes:

- R Cambia recursivamente el propietario del directorio especificado y todos los subdirectorios y archivos que se encuentran debajo de él.

-v Muestra el trabajo realizado por el comando chown.

Ejemplo 1: cambie el propietario del archivo shiyan.c a wang.

$ chown wang shiyan c

Ejemplo 2: cambie el propietario del directorio /his y todos los archivos y subdirectorios debajo de él a wang, y el grupo a usuarios.

$ chown -R wang:usuarios /su

 

 práctica:

Salida de los números divisibles por 3 en 1-30 :

 

 

 

Muestre la identidad del usuario actual, vea el usuario que inició sesión y cambie a raíz :

Lea el nombre de la variable y muestre el mensaje de aviso "Ingrese su nombre:" antes de ingresar el nombre (el nombre de entrada está en formato pinyin), y la longitud del nombre de entrada está limitada a 9.

Lea la variable mima y muestre el mensaje "Ingrese su contraseña:" antes de ingresar mima (la mima ingresada está en formato digital), limite la longitud de la mima ingresada a 6 y no se mostrará en la pantalla al ingresar la contraseña.  

Lea la variable x ingbie y configure x ingbie para que esté vacía si no se asigna ningún valor a x ingbie en 10 segundos . :

 

 Cree tres usuarios zte_a, zte_b, zte_c, todos pertenecen al grupo de usuarios:


Cambie el nombre de usuario de zte_c a zte_c_remend y cambie el grupo de zte_c_remend a root:

 

 

Establezca contraseñas para los tres usuarios respectivamente, que son las mismas que los nombres de usuario:

 

Cree un directorio de tiempo bajo el usuario raíz y cree archivos time.txt y time2.txt en el directorio de tiempo

Deje que el usuario raíz pueda escribir el archivo time.txt en el directorio de tiempo y, al mismo tiempo, otros usuarios son de solo lectura.

Cambie el propietario de time2.txt a zte_a, y solo permita que los usuarios que pertenecen al grupo de usuarios lean el archivo time2.txt. Otros usuarios no tienen ningún permiso. ¿Cuál es el permiso de zte_a para time2.txt en este momento?

 

El permiso de zte_a para time2.txt es : rwx

Supongo que te gusta

Origin blog.csdn.net/qq_52117201/article/details/128377824
Recomendado
Clasificación