Linux账户管理详解

用户与用户组

用户

Linux下用户分为三种:

  • 超级用户:拥有对系统的最高管理权限,默认是root用户。
  • 普通用户:只能对自己目录下的文件进行访问和修改,具有登录系统的权限。
  • 虚拟用户:这类用户不能登陆系统,他们存在的意义主要是方便系统管理,满足相应的系统进程对文件属主的要求。

用户&&组

  • Linux是一个多用户多任务的分时操作系统,当使用系统资源,就必须拥有一个账户。通过不同属性的账户,一方面,可以合理的利用和控制系统资源,另一方面,也可以帮助用户组织文件,提供对用户文件的安全性保护。
  • 每个用户都有一个唯一的用户名和用户口令。
  • Linux系统中每一个用户都默认拥有一个用户组,系统可以对一个用户组中的所有用户进行统一管理。用户和用户组的对应关系可以是:一对一、一对多、多对一、多对多。

用户和组相关配置文件

/etc/passwd文件

  • 这个文件是系统用户配置文件,是用户管理中最重要的一个文件。里面记录着每个用户的一些基本属性,且对所有用户可读。
  • 每一行记录对应着一个用户,一冒号分隔,其格式与含义如下:
  • 用户名:口令:用户标识号:组标识号:注释性描述:主目录:默认shell
[root@centos7 ~]# more /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
  • 用户名:代表着用户账户
  • 口令:代表着加密后的用户口令
  • 用户标识号:用户的UID,每个用户都有一个唯一的UID,取值范围为0~65535,0代表着超级用户,1-99有系统保留,普通用户默认从500开始。注意:超级用户的标志不是root而是就UID为0
  • 组标识号:组的GID,与用户的UID类似
  • 注释性描述:记录用户的注释信息
  • 主目录:用户的家目录
  • 默认shell:默认的命令解释器

/etc/shadow文件

  • 这个文件记录着用户的密码信息,该文件只有root用户有读权限,从而保证了用户密码的安全性。
  • 文件内容的格式为:
  • 用户名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:告警时间:不活动时间:失效时间:保留字段
[root@centos7 ~]# more /etc/shadow
root:$6$uWHpbaH5s8/fN/ah$n0cQ8FqSR3g.IRzB0IYU3qYiGneG6T0R6y3vncjIll7W6NACkOxg9oKtkmBs3xXu/nPudamuDcet0fPDbeWbY/::0:99999:7:::
bin:*:18353:0:99999:7:::
daemon:*:18353:0:99999:7:::
adm:*:18353:0:99999:7:::
lp:*:18353:0:99999:7:::
  • 用户名:代表着用户账户
  • 加密口令:存放着加密后的用户密码,如果此字段是*、!、x等字符,则对应的用户不能登陆系统
  • 最后一次修改时间:表示从某个时间起,到用户最近一次修改口令的间隔天数,可通过passwd修改密码
  • 最小时间间隔:表示两次修改密码之间的最小时间间隔
  • 最大时间间隔:表示两次修改密码之间的最大时间间隔
  • 告警时间:表示从系统开始警告用户,到密码正式失效之间的天数
  • 不活动时间:是用户口令作废多少天后,系统会禁用此账户,如果字段值为空,要是账号永远可用
  • 保留字段:目前为空

/etc/group文件

  • 这个文件是用户组配置文件
  • 此文件的格式为:
  • 组名:口令:组标识号:组内用户列表
[root@centos7 ~]# more /etc/group
root:x:0:
bin:x:1:
daemon:x:2:
sys:x:3:
  • 组名:用户组名称
  • 口令:公户组加密后的口令字串
  • 组标识号:组的GID
  • 组内用户列表:还是属于这个组的用户

/etc/login.defs文件

  • 这个文件用来定义看见一个用户时的默认设置
  • 比如指定用户的UID和GID范围、用户过期时间、是否创建主目录等
  • 列举几个常用的配置:
# 指定密码有效的最大天数
PASS_MAX_DAYS	99999
# 表示从上次密码修改后多少天用户才被允许修改口令
PASS_MIN_DAYS	0
# 指定密码的最小长度
PASS_MIN_LEN	5
# 口令到期前多少天开始通知用户
PASS_WARN_AGE	7
# 表示添加用户时,UID默认从1000开始
UID_MIN                  1000
# 表示最大UID为60000
UID_MAX                 60000
# 代表组的GIU,与UID类似
GID_MIN                  1000
GID_MAX                 60000
# 默认创建用户主目录
CREATE_HOME	yes

/etc/default/useradd文件

  • 这个文件代表不加任何参数,创建一个用户,默认的主目录未元/home下,默认的shell为/bin/bash
[root@centos7 ~]# cat /etc/default/useradd 
# useradd defaults file
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes

/etc/skel文件

  • 这个文件定义了新建用户在主目录下默认的配置文件

账户管理相关命令

组管理

命令:groupadd

表示创建用户组

groupadd [-g -o] gid group
  • -g:指定组的GID
  • -o:表示新用户组的GID可以与系统已有用户组GID相同

命令:newgrp

用于多个用户组之间的切换

newgrp [group]

命令:groupdel

表示删除用户组

groupdel [group]

用户管理

命令:useradd

表示创建一个用户

useradd [选项] name
  • -u uid:用户标识号
  • -g group:指定用户组
  • -G group:指定附加组
  • -d home:指定主目录。
  • -s shell:指定默认使用的shell

命令:userdel

删除一个用户,加-r表示不但删除用户,同时删除用户的主目录及目录下文件。

useradd [-r] [用户账号]

命令:usermod

用来修改用户账号

usermod [选项] [用户名]
  • -L:锁定用户密码,使密码无效
  • -U:解除密码锁定
  • 其他选项与useradd类似

文件权限属性

文件权限是指对文件的访问权限。包括对文件的读、写、删除、执行等。在Linux中,每个用户具有不同的权限。
在Linux中常见的几种文件类型:

  • 普通文件:(-)
  • 目录:(d)
  • 字符设备文件:(c)
  • 块设备文件:(b)
  • 套接字文件:(s)
  • 管道:(p)
  • 符号连接文件:(l)
[root@centos7 ~]# ll
总用量 12
-rw-r--r--  1 root root   42 1月  11 11:48 11.txt

以空格为分隔符,以上每列信息分别为:

文件类型与权限;连接数;文件所属用户和组;文件大小;文件最后修改的日期;文件名称

利用chown改变属主和属组

chown [-R] 用户名 文件或目录
chowm [-R] 用户名:用户组 文件或目录
-R:代表递归,就是将目录下的所有文件子目录会变更所属

下面这个例子可以看出文件所属的更改

[root@centos7 ~]# ll
总用量 12
-rw-r--r--  1 root root   42 1月  11 11:48 11.txt
[root@centos7 ~]# chown haha:haha 11.txt 
[root@centos7 ~]# ll
总用量 12
-rw-r--r--  1 haha haha   42 1月  11 11:48 11.txt

利用chmod改变访问权限

这个这个命令用于改变文件或目录的访问权限。可以使用字母代表权限,也可以使用数字代表权限。

chmod [who] [+ | - | =] [mode] 文件名

who表示操作对象:

  • u:表示用户,属主
  • g:表示用户组
  • o:表示其他用户
  • a:表示所有用户你呢

操作符号含义:

  • +:添加某个权限
  • -:取消某个权限
  • =:赋予给定的权限

mode:表示可以执行的权限:

  • 读:r(4)
  • 写:w(2)
  • 执行:x(1)

下面这个例子是更改文件的权限:数字的方式比较方便

[root@centos7 ~]# ll
总用量 12
-rw-r--r--  1 haha haha   42 1月  11 11:48 11.txt
[root@centos7 ~]# chmod 755 11.txt 
[root@centos7 ~]# ll
总用量 12
-rwxr-xr-x  1 haha haha   42 1月  11 11:48 11.txt

此部分内容到此结束:

同系列文章链接:

Linux软件管理详解

Linux磁盘管理详解

おすすめ

転載: blog.csdn.net/qq_42527269/article/details/122475547