Un capítulo le lleva a comprender la gestión de permisos y cuentas de Liunx

Archivos de cuentas de usuario y archivos de cuentas de grupo

Linux se basa en la identidad del usuario para controlar el acceso a los recursos.

cuenta de usuario

Superusuario (root): el usuario root es la cuenta de superusuario predeterminada en el sistema operativo Linux y tiene la máxima autoridad en el host. El superusuario es el único en el sistema.

Usuario ordinario: creado por el usuario raíz u otros usuarios administradores, los permisos que tienen estarán restringidos y, por lo general, solo tendrán permisos completos en el registro diario del host del usuario.

Usuarios del programa: al instalar el sistema operativo Linux y algunas aplicaciones, se agregan ciertas cuentas de usuario con pocos privilegios. Por lo general, estos usuarios no pueden iniciar sesión en el sistema y solo se utilizan para mantener el funcionamiento normal del sistema o de un programa. como bin, daemon, Ftp, mail, etc.

Cuenta de grupo

Grupo básico (grupo privado): solo hay una cuenta de grupo básico, generalmente el grupo especificado al crear un usuario.
El cuarto campo registrado en el archivo / etc / passwd es el número GID del grupo básico del usuario.

Grupo adicional (grupo público): además del grupo básico, el usuario agrega un
grupo específico.

UID y GID

UID (identidad de usuario, número de identificación de usuario)
GID (grupo de identidad, número de identificación de grupo)
El número UID y GID de la cuenta de usuario de la raíz son valores fijos. 0 El UID y GID número de
cuenta valores predeterminados del usuario programa a
los números de UID y GID de usuarios normales de 1 a 499 El valor predeterminado es 500 ~ 60.000

Gestión de cuentas de usuario

Archivo de cuenta de usuario useradd

Función: guarde información básica como nombre de usuario, directorio de host, shell de inicio de sesión, etc.
Ubicación del archivo: / etc / passwd
Cada línea corresponde al registro de la cuenta de un usuario

Campo Descripción
Campo 1 El nombre de la cuenta de usuario.
Campo 2 Marcador de posición de contraseña de usuario "x"
(Debido a que en los primeros sistemas operativos UNIX, la información de la contraseña de la cuenta de usuario se almacena en el archivo passwd, los usuarios ilegales pueden obtener fácilmente la cadena de contraseña y la fuerza bruta, por lo que existen ciertos riesgos de seguridad. después de la mejora, la contraseña se transfirió a un archivo de sombra especial, y solo el marcador de posición de contraseña "x" se mantuvo en el archivo de contraseña)
Campo 3 Número de UID de la cuenta de usuario
Campo 4 Número GID de la cuenta del grupo básico al que pertenece
Campo 5 Nombre completo del usuario
Campo 6 Directorio de inicio
Campo 7 Información del shell de inicio de sesión
(/ bin / bash es el sistema de inicio de sesión, / sbin / nologin y / bin / false tienen prohibido a los usuarios iniciar sesión en el sistema)
P.ej root: x: 0: 0: root: / root: / bin / bash

Sombra de archivo de cuenta de usuario

De forma predeterminada, solo el usuario root puede leer el contenido del archivo de sombra y no se le permite editar directamente el contenido del archivo.
Función: guardar la contraseña del usuario, el período de validez de la cuenta y otra información.
Ubicación del archivo: / etc / shadow
Cada línea corresponde al registro de contraseña de un usuario

Campo Descripción
Campo 1 El nombre de la cuenta de usuario.
Campo 2 Utilice información de cadena de contraseña cifrada MD5. Cuando es "*" o "!!", significa que el usuario no puede iniciar sesión en el sistema. Si el contenido de este campo está vacío, el usuario puede iniciar sesión en el sistema sin contraseña
Campo 3 La hora en la que se modificó la contraseña por última vez, lo que significa el número de días entre el momento de la última modificación de la contraseña desde el 1 de enero de 1970.
Campo 4 El número mínimo de días para que la contraseña sea válida. Después de que se cambie la contraseña esta vez, al menos este número de días debe transcurrir antes de que la contraseña se pueda volver a cambiar. El valor predeterminado es 0, lo que significa que no hay restricciones.
Campo 5 El número máximo de días que la contraseña es válida. Después de cambiar la contraseña esta vez, la contraseña debe cambiarse nuevamente después de este número de días. El valor predeterminado es 99999, lo que significa que no hay restricciones.
Campo 6 Con cuántos días de anticipación para advertir al usuario que la contraseña caducará, el valor predeterminado es 7
Campo 7 ¿Cuántos días después de que expire la contraseña para deshabilitar a este usuario?
Campo 8 Hora de vencimiento de la cuenta. Este campo especifica la cantidad de días que el usuario está invalidado (calculado a partir del 1 de enero de 1970). El valor predeterminado está vacío, lo que significa que la cuenta está disponible permanentemente.
Campo 9 Campo reservado (sin usar)
P.ej raíz: 6 66 VyoUGqoC $ v5HlLM1wagzC / FwGfnrtJFnlT: 18445: 0: 99999: 7 :::

Agregar cuenta de usuario useradd o adduser

useradd [opciones] nombre de usuario

Agregue el registro de la cuenta de usuario al final del archivo / etc / passwd y del archivo / etc / shadow.
Si el directorio de inicio del usuario no se especifica explícitamente, se creará automáticamente un directorio de inicio con el mismo nombre que la cuenta de usuario en el directorio / home y se crearán varios archivos de configuración inicial del usuario en este directorio.
Si el grupo al que pertenece el usuario no está claramente especificado, se creará automáticamente una cuenta de grupo básica con el mismo nombre que la cuenta de usuario, y la información de registro de la cuenta de grupo se guardará en / etc / group y / etc Archivos / gshadok.

Opciones Descripción
-u
El número de UID del usuario especificado requiere que otros usuarios no utilicen el número de UID.
-D Especificar la ubicación del directorio de inicio del usuario
(cuando se usa con -M, no tiene efecto)
solo puede especificar el directorio con una ruta absoluta
-mi 指定用户的账户失效时间
可使用YYYY-MM-DD的日期格式。
-g 指定用户的基本组名(或使用GID号)
对应的组名必须已存在
-G 指定用户的附加组名(或使用GID号)
对应的组名必须已存在。
-M 不建立宿主目录
-s(小写) 指定用户的登录Shell
/bin/bash为可登陆系统,/sbin/nologin和/bin/false为禁止用户登陆系统
例如 useradd -d / admin -g wheel -G root admin1
useradd -e 2020-12-31 -s / sbin/nologin admin2

设置/更改用户口令passwd

passwd [选项] 用户名
不指定用户名时,修改当前账号的密码
root用户可以指定用户名作为参数,对指定账号的密码进行管理
普通用户只能执行单独的"passwd"命令修改自己的密码

选项 命令
-d 清空指定用户的密码,仅使用用户名即可登录系统
-l 锁定用户账户,锁定的用户账号将无法再登录系统
-S(大写) 查看用户账户的状态(是否被锁定)
-u 解锁用户账户

设置用户密码方法二
echo “密码” | passwd --stdin 用户名

修改用户账号的属性usermod

usermod [选项] 用户名

选项 说明
-l 更改用户账号的登录名
-L 锁定用户账号
-U 解锁用户账号
其他 -u、-d、-e、-g、-G、-s与useradd命令的含义相同
例如 将admin1用户的登录名改为master
usermod -l master admin1

删除用户账号userdel

userdel [-r] 用户名
添加-r时,表示连用户目录的宿主目录一并删除

例如:删除用户账号stu01
在这里插入图片描述

用户账号的初始配置文件

文件来源
useradd命令添加一个新的用户账号后会在该用户的宿主目录中建立一些初始配置文件
这些文件账号模板目录/etc/skel/,基本上都是隐藏文件
用户宿主目录下的初始配置文件只对当前用户有效

主要的用户初始配置文件

文件 说明
~ /.bash_profile 此文件中的命令将在该用户每次登录时被执行,它会设置一些环境变量,并且会调用该用户的-/.bashrc
-/.bashrc 此文件中的命令会在每次打开新的bash shell时(也包括登录系统)被执行,并且会调用/etc/bashrc文件
-/.bash_logout 此文件中的命令将在用户每次退出登录或退出bash shell时执行

以下是全局配置文件对所有用户有效

文件 说明
/etc/profile 这个文件是为系统全局变量配置文件,可通过重启系统或者执行source(.) /etc/profile 命令使profile文件被读取
/etc/profile.d/ 这个文件是/etc/profile的子目录,存放的是一些应用程序所需的启动脚本
/etc/bashrc 每一个运行bash shell的用户都会执行此文件,可通过执行bash 命令打开一个新的bash shell时,使 bashrc文件被读取

PATH变量

PATH变量用于设置可执行程序的默认搜索路径
PATH生效的原理
每次启动系统的时候会初始化命令,会执行/etc/profile和-/.bash_profile。/etc/profile会将路径/usr/local/bin、/use/bin、/usr/local/sbin、/usr/sbin 追加到PATH中,然后调用/etc/profile.d 目录下的脚本

组账号管理

组账号文件与用户文件类型

文件位置 作用
/etc/group 保存组账号的基本信息
/etc/gshadow 保存组账号的密码信息
字段 描述
字段1 组账号的名称
字段2 占位符"x"
字段3 组账号的GID号
字段4 组账号包含的用户成员
多个成员之间用“,” 分隔
例如 mail:x:12:postfix
postfix:x:89:

添加组账号groupadd

groupadd [-g GID] 组账号名

选项 说明
-g 指定GID号
例如 groupadd -g 1000 market

添加/删除组成员gpasswd

作用:设置组账号密码、添加/删除组成员

选项 说明
-a 向组内添加一个用户
-d 从组内删除一个用户成员
-M 定义组成员列表,以逗号分隔
例如 gpasswd -M root,mike,postfix market

删除组账号groupdel

groupdel 组账号名

查询账号信息

groups

作用:查询用户所属组
groups [用户名]

id

作用:查询用户身份标识(身份标识就是ID号、GID或UID)
id [用户名]

finger

finger命令系统不自带,需要先进行finger软件包的安装(yum install -y finger)
作用:查询用户账号的登录属性
finger [用户名]

w、whos、user

作用:查询已经登录到主机的用户信息

通过tty快捷键的切换也可查询已经登录到主机的用户信息
通常使用tty来简称各种类型的终端设备。
CentOS7系统中tty1表示图形界面,tty2-tty6表示文字界面。可以使用Ctrl+Alt+F1-F6进行切换。
例如按Ctrl+Alt+F2登录,执行w命令查看使用的终端就是tty2
pts说明是用远程工具连接的,比如xshell。后面的数字代表登录时间顺序,越小证明登录的越早

文件/目录的权限和归属

访问权限

读取r:允许查看文件内容、显示目录列表
写入w:允许修改文件内容,允许在目录中新建、移动、删除文件或子目录
可执行x:允许运行程序、切换目录

归属(所有权)

属主:拥有该文件或目录的用户账号
属组:拥有该文件或目录的组账号

查看文件/目录的权限和归属

在这里插入图片描述
在这里插入图片描述这里的数字用的是八进制数字
权限s:s(setuid)该位是让普通用户临时拥有root用户的权限去执行相关程序与命令

设置目录与文件权限(chmod)

chmod [ugoa] [+ -=] [rwx] 文件或目录…
或者
chmod [nnn] 文件或目录

u:属主
g:属组
o:其他用户
a:所有用户
+:增加权限
-:去除权限
=:设置权限
r:读权限
w:写权限
x:运行权限
nnn:3位八进制数
-R:递归修改指定目录下所有子项的权限

设置目录与文件归属(chown)

chown命令
chown 属主 文件或目录
chgrp 属组 文件(此命令只能修改文件)
chown :属组 文件或目录
chgrp 属组 文件或目录
chown 属主:属组 文件或目录
chown 属主.属组 文件或目录

-R:递归修改指定目录下所有子项的权限

设置目录与文件的默认权限(umask)

作用:
1.控制新建的文件或目录的权限
2.默认权限去除umask的权限则为新建的文件或目录的权限
(普通文件的最大默认权限为6,目录的最大默认权限问7)

umask 022(设置权限为022)
umask(查看)

Supongo que te gusta

Origin blog.csdn.net/TaKe___Easy/article/details/113484527
Recomendado
Clasificación