理论:账号和权限管理

一、管理用户账号和组账号

1.1 用户账号和组账号概述

■ Linux基于用户身份对资源访问进行控制

  • 用户账号
    ◆超级用户,普通用户,程序用户

  • 组账号
    ◆ 基本组(私有组)
    ◆ 附加组(公有组)

  • UID和GID
    ◆ UID(User IDentity,用户标识号)
    ◆ GID(Gronp IDentity,组标识号)

1.2 用户账号文件/etc/passwd

■ 保存用户名称、宿主目录、登录shell等基本信息

  • 文件位置:/etc/passwd
  • 每一行对应一个用户的账号记录
[root@localhost~] # head-2/etc/passwd
root:x:0:O:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
  1. 帐户名
  2. mde5密码加密信息###或!!则不等登录 如空则没密码可以登录 ####做项目的时候,所有设备上线都要弱口令扫描,如果结果密码强度不高,则需要重新设置密码。如果过弱口令方案,你可以备份shadow文件,然后进shadow删除没过的账号
  3. 上次修改密码时间1970年一月一号到最近的修改密码间隔的天数
  4. 密码的最短有效天数,如0则不限制
  5. 密码的最长有效天数,如99999则不进行限制
  6. 提前多少天告警,用户口令将过期,默认是7
  7. 密码过气候多少天内警用此用户
  8. 账号失效时间,1970年一月一号计算,默认是空则账号永久使用
  9. 保留字段,目前没使用

1.3 添加用户账号

■ useradd命令

useradd [选项]...用户名

■ 常用选项

  • -u、-d、-e、-g、-G、-M、-s
-u  指定UID多少
-d  指定宿主目录
-e  指定账户失效时间
-g  指定用户基本组
-G  指定用户附加组  ##既可以属于用户组也可以属于其他
-M  不建立宿主目录
-s   指定登录的shelluser

1.4 设置/更改用户口令passwd

■ passwd命令

passwd [选项]...用户名

■ 常用选项

  • -d、-I、-S、-u
    不指定用户名时,修改当前账号的密码
    -d 清空密码
    -I 查看账户是否被锁定
    -u 解锁用户账户

1.5 修改用户账号的属性usermod

■ usermod命令

usermod [选项]...用户名

■ 常用选项

  • -I、-L、-U

■ 以下选项与useradd命令中的含义相同

  • -u、-d、-e、-g、-G、-s

-u 修改用户UID
-d 修改用户的宿主目录位置
-e 修改用户账户失效时间 可以YYYY-MM-DD日期
-g 修改用户的基本组名
-G 修改用户的附加组名
-s 指定用户登陆的shell
-l 更改用户登录的名称
-L 锁定账户
-U 解锁用户账户

1.6 删除用户账号userdel

■ userdel命令

userdel [-r]用户名
  • 添加-r选项时,表示连用户的宿主目录一并删除
[root@localhost~] #user add stu 01
[root@localhost~] #Is-ld/home/stu 01/
drwx------2stu01stu01409609-0912:38/home/stu01/
[root@localhost~] #userdel-r stu 01
[root@localhost~] #Is-ld/home/stu 01/
is:/home/stu01/:没有那个文件或目录

1.7 用户账号的初始配置文件

■ 文件来源

  • 新建用户账号时,从/etc/skel目录中复制而来

■ 主要的用户初始配置文件

  • ~/.bash_profile
  • ~/.bashrc
  • ~/.bash_logout

1.8 组账号文件

■ 与用户账号文件相类似

  • /etc/group:保存组账号基本信息
  • /etc/gshadow:保存组账号的密码信息
[root@localhost~]# grep "adm" /etc/group

1.9 添加组账号groupadd

■ groupadd目录

groupadd [-g GID] 组账号名

1.10 添加删除组账号gpasswd

■ gpasswd命令

  • 设置组账号密码、添加/删除组成员
gpasswd [选项]...组账号名

■ 常用选项

  • -a:想组内添加一个用户
  • -d:从组内删除一个用户成员
  • -M:定义组成员列表,以逗号分隔

1.11 删除组账号groupdel

■ groupdel命令

groupdel 组账号名

■ 示例

groupdel market 

1.12 查询账号信息

■ groups 命令

  • 查询用户所属的组
groups [用户名]

■ id命令

  • 查询用户身份标识
id [用户名]

■ finger命令

  • 查询用户账号的详细信息
finger [用户名]

■ w、who、users命令

  • 查询已登录到主机的用户信息

1.13 文件/目录的权限和归属

■ 访问权限

  • ●读取r:允许查看文件内容、显示目录列表
  • 写入w:允许修改文件内容,允许在目录中新建、移动、删除文件或子目录
  • 可执行x:允许运行程序、切换目录
    ■ 归属(所有权)
  • 属主:拥有该文件或目录的用户帐号
  • 属组:拥有该文件或目录的组帐号

1.14 设置文件和目录的权限chmod

■ chmod命令

chmod [ugoa] [+-=]  [rwx]  文件或目录...

■ 常用选项

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

1.15 设置文件和目录的归属chown

■ chown命令

chown 属主 文件或目录
chown :属组  文件或目录
chown  属主:属组  文件或目录

■ 常用选项

  • -R :递归修改指定目录下所有文件、子目录的归属

1.16 权限掩码umask

■ umask作用

  • 控制新建的文件或者目录的权限
  • 默认权限去除umask的权限为新建的文件或者目录的权限
    ■ umask设置:umask 022
    ■ Mum ask查看:umask
    ■ 示例
  • 将umask设为000, 新建目录或者文件, 查看权限
  • 将umask设为022, 新建目录或者文件, 再查看权限

猜你喜欢

转载自blog.csdn.net/weixin_44733021/article/details/109184752