zoukankan      html  css  js  c++  java
  • Linux的用户管理

    UID,是用户身份证明(User Identification)的缩写,作为Linux中用户在系统中的唯一身份识别(唯一标示符扩展),Linux 并不识别用户名称,而是以用户名对应的 ID 号来识别不同类型的用户,不同的uid对应不同用户的权限。

    Linux的用户分类

    用户user

    1、管理员用户 用户名:root,UID:0

    2、普通用户

    • 系统用户   这部分用户无法登录系统。2.6.x的内核中,这部分用户的UID范围为1-499。3.10.x版本内核中,这部分用户的UID范围为1-999
    • 本地用户   可以交互式登录系统。2.6.x的内核中,这部分用户的UID范围为500+。3.10.x版本内核中,这部分用户的UID范围为1000+

    用户组group:

    用户的主要组:用户必须属于一个且只有一个主组,组名同用户名,当用户组内仅包含一个用户时,该组为私有组

    用户的附加组:一个用户可以属于0个或多个附加组

    Linux用户和用户组的配置文件

    /etc/passwd:存放用户及其属性信息,文件格式为:

    root x 0 0 root /root /bin/bash
    用户名 密码 uid gid 用户名解释 用户的家目录 用户默认使用的shell

    /etc/group:存放用户的组及属性信息,文件格式为:

    mail x 12 postfix
    组名 组密码占位符 组id 以当前组为附加组的用户列表(分隔符为逗号)

    /etc/shadow:存放用户密码及其相关属性,文件格式为: 

    bin * 17110 0 99999 7      
    用户名 加密的密码 从unix元年到
    最近一次更改密码的日期
    密码的最小使用期限
    (0)表示随时可以修改
    密码的最大使用期限
    (99999)表示永不过期
    密码警告时间段 密码禁用期 账号的过期日期 保留字段

    /etc/gshadow:组密码及相关属性

    使用命令快速操作passwd和group文件

    编辑命令

    • vipw 编辑密码文件,并且上锁,其他人是无法修改成功的

    • vipw -s :修改/etc/shadow文件

    • vigr 修改/etc/groups文件
    • vigr -s 修改/etc/gshadow文件

    检查命令

    • pwck  检查用户密码文件的完整性(/etc/passwd以及/etc/shadow文件)
    • grpck  检查用户组及密码文件的完整性(etc/group以及/etc/gshadow文件)

    用户管理命令

    1、useradd添加用户

    语法:useradd [options] LOGIN

    选项:

    选项名 含义
    -u UID 定义在/etc/login.defs
    -o 与-u同用,不检查UID的唯一性
    -g GID 指定用户所属的基本组,可以是组名,也可以是GID
    -c "COMMENT" 用户的注释信息
    -d HOME_DIR 指定用户的家目录
    -s SHELL 指定用户默认shell
    -G GROUP1[,GROUP2,...[,GROUPN]]] 为用户指明附加组,组必须实现存在
    -N 不创建私用组做主组,使用users组做主组
    -r 创建系统用户
    -D 修改默认值设置,默认值在/etc/default/useradd文件

    测试

    创建一个test用户,附加组为bin和root,使用tsh

    [root@localhost ~]# useradd test -G bin,root -s /bin/tsh -c "test useradd"
    
    [root@localhost ~]# grep test /etc/group
    root:x:0:gentoo,test
    bin:x:1:gentoo,test
    test:x:1005:
    
    [root@localhost ~]# grep test /etc/passwd
    test:x:1004:1005:test useradd:/home/test:/bin/tsh

    2、usermod修改用户属性

    语法:usermod [options] LOGIN

    选项:

    选项名 含义
    -u UID 新的UID
    -g GID 新的基本组
    -G GROUP1[,GROUP2,...[,GROUPN]]] 新的附加组,原附加组会被覆盖;
    如果需要保留原附加组,要同时使用-a选项,表append
    -s SHELL 新的默认shell
    -d HOME_DIR 新的家目录
    不会自动创建,原家目录的文件不会自动移动至新家目录
    如果需要创建新家目录,并移动原家目录数据到新家目录,需要同时使用-m选项
    -l login_name 新的名字
    -c "COMMENT" 新的注释信息
    -L  给指定用户加锁,在/etc/shadow文件的密码栏增加 ! 叹号
    -U  解锁指定用户,移除/etc/shadow文件密码栏 ! 叹号
    -e YYYY-MM-DD 指定用户账户过期日期
    -f  INACTIVE 设定非活动期限


    1、修改uid

    [root@localhost ~]# usermod -u 1010 test
    [root@localhost ~]# grep test /etc/passwd
    test:x:1010:1005:test useradd:/home/test:/bin/tsh

    2、修改GID

    [root@localhost ~]# usermod -g 1009 test
    [root@localhost ~]# grep test /etc/passwd
    test:x:1010:1009:test useradd:/home/test:/bin/tsh

    3、修改附加组

    [root@localhost ~]# grep test /etc/group
    root:x:0:gentoo,test
    bin:x:1:gentoo,test
    admins:x:1003:test2,test3,test4
    test:x:1005:
    test2:x:1006:
    test3:x:1007:
    test4:x:1008:
    test5:x:1009:
    
    [root@localhost ~]# usermod -G test3 test
    
    [root@localhost ~]# grep test /etc/group
    admins:x:1003:test2,test3,test4
    test:x:1005:
    test2:x:1006:
    test3:x:1007:test
    test4:x:1008:
    test5:x:1009:

    3、userdel 删除用户家目录

    语法:userdel [options] LOGIN

    选项: -r :删除用户家目录

    4、id 查看用户ID信息

    语法:id [OPTION]... [USER]

    选项:

    选项名 含义
    -u UID
    -g GID
    -G Groups
    -n Name
    [root@localhost ~]# id -nu test
    test

    5、passwd 设置密码(仅root权限)

    语法:passwd [-k] [-l] [-u [-f]] [-d] [-e] [-n mindays] [-x maxdays] [-w warndays] [-i inactivedays] [-S] [--stdin] [username]

    选项:

    选项名 含义
    -l 锁定用户
    -u 解锁用户
    -e 强制用户下次登录修改密码
    -n mindays 指定最短使用期限
    -x maxdays 指定最大使用期限
    -w warndays 提前多少天开始警告
    -i inactivedays 非活动期限
    --stdin 非交互式设置密码

    6、chage 修改用户密码策略

    语法:

    选项:

    选项名 含义
    -d LAST_DAY 最近日期
    -E 过期日期
    -I 非活动期限
    -m 最小天数
    -M 最大天数
    -W 提醒天数
    -l 显示密码策略

    强制下次登录设置密码

    [root@localhost ~]# chage -d 0 test

    修改期限

    [root@localhost ~]# chage -l test2
    Last password change                    : Jun 05, 2021
    Password expires                    : Jul 17, 2021
    Password inactive                    : Jul 24, 2021
    Account expires                        : never
    Minimum number of days between password change        : 0
    Maximum number of days between password change        : 42
    Number of days of warning before password expires    : 14
    
    [root@localhost ~]# chage -m 0 -M 42 -W 100 -I 7 test2
    
    [root@localhost ~]# chage -l test2
    Last password change                    : Jun 05, 2021
    Password expires                    : Jul 17, 2021
    Password inactive                    : Jul 24, 2021
    Account expires                        : never
    Minimum number of days between password change        : 0
    Maximum number of days between password change        : 42
    Number of days of warning before password expires    : 100

    7、groupadd 创建用户组

    语法:groupadd [options] group

    选项:

    • -g:指明GID
    • -r:创建系统组,组ID500-1000

    8、groupmod  修改用户组

    语法:groupmod [options] GROUP

    选项:

    • -n group_name:新组名
    • -g GID:新GID

    9、groupdel 删除用户组

    语法:groupdel GROUP

  • 相关阅读:
    手风琴效果
    开关门
    常用的一些获取尺寸的方法
    话话js中的事件监听
    数组去重
    百度地图 之 热力图
    小程序 之 百度智能小程序(第二章)
    小程序 之 百度智能小程序(第一章)
    javascript 之 继承与闭包
    浅谈prototype与__proto__、constructor三者之间的关系
  • 原文地址:https://www.cnblogs.com/zh-dream/p/14852883.html
Copyright © 2011-2022 走看看