linux入门篇--用户及用户组的管理

来源:互联网 发布:安徽自考网络助学加分 编辑:程序博客网 时间:2024/06/14 15:34

linux入门篇–用户及用户组的管理

用户组和权限管理

一、AAA认证资源分派:

Authorization认证 授权 Accouting Audition审计 令牌token identity身份

二、用户组的UID,GID 定位number范围。

Linux系统用户 username/UID group GID (centos7):root,0 0 0 (centos7):系统用户 1-999 1-999 (centos7):普通用户 1000+以上 1000+以上 (centos6):root,0 0 0 (centos6):系统用户 1-499 1-499 (centos6):普通用户 500+以上 500+以上

linux安全上下文

运行中的程序:进程(process)
以进程发起者的身份运行:root:/bin/cat mage:/bin/cat
进程所能够访问资源的权限取决于进程的运行者

linux组的类别

用户的主要组(primary group):用户必须属于一个且只有一个主组
组名同用户名,且仅包含一个用户:

用户的附加组(supplementary group) 一个用户可以属于零个或多个辅助组

三、linux用户和组的主要配置文件

1、用户和组最重要的四个文件/etc/passwd: 用户及其属性名称(名称、uid、主组ID等)/etc/group:  组及其属性信息/etc/shadow: 用户密码及其相关属性/etc/gshadow:组密码及其相关属性
[root@jeffary7 ~]#cat /etc/passwd 该文件存放的是用户及其属性名称例如root:x:0:0:root:/root:/bin/bash            root用户id:x表示密码:0账户最大权限:0组最大权限:root表示用户述:/root家目录:/bin/bash

这里写图片描述

2、/etc/group    组及其属性信息root:x:0:     root用户:x密码:0group文件格式群组名称:就是群组名称群组密码:通常不需要设定,密码是被记录在/etc/gshadowGID:就是群组的ID以当前组为附加组的用户列表(分隔符为逗号)

这里写图片描述

3、/etc/shadow: 用户密码及其相关属性 例如:root:$6$J2hMOTJ7$eZEJsA6ClwQu7eIfgaBg/wvYIJ7BPoUZQq3YpQB53zDbWrlmMz1NowikE1xOZaMoKxteYqkyGMlzPNJ/8KmVw/:17363:0:99999:7:5:10:①、登录用户:有密码sha512加密(如果为空则登录不需要密码)星号代表帐号被锁定;双叹号表示这个密码已经过期了。②、$6$J2hMOTJ7$用户密码:(!!表示锁定2个叹号双保险)一般用sha512加密 $表示加密类型 $salt打乱顺序 $密码  从197011日起到密码最近一次被更改的时间    ③17363:表示从(1970-1-1)开始计算到现在,用户最后一次修改密码的时间是多久④00表示随时都可以更改密码,例如7表示用户7天以后才能修改密码⑤100:密码最长使用100天(99999表示永不过期) ⑥7:表示密码过期前几天系统提醒用户(默认为一周)⑦5:密码过期几天后帐号会被锁定⑧10:从197011日算起,多少天后帐号失效冻结⑨:表示保留位

这里写图片描述

4、/etc/gshadow:组密码及其相关属性   与/etc/passwd中的登录名一样,组名不应重复   root:::root用户组名:组的口令(一般不安全):GID标识:组内用户列表

这里写图片描述

/etc/gshadow     /etc/gshadow是/etc/group的加密资讯文件,比如用户组(Group)管理密码就是存放在这个文件。/etc/gshadow和/etc/group是互补的两个文件;对于大型服务器,针对很多用户和组,定制一些关系结构比较复杂的权限模型,设置用户组密码是极有必要的。比如我们不想让一些非用户组成员永久拥有用户组的权限和特性,这时我们可以通过密码验证的方式来让某些用户临时拥有一些用户组特性,这时就要用到用户组密码。   [root@localhost ~]# cat /etc/gshadow     root:::root     bin:::root,bin,daemon     组名:口令:组管理者:组内用户列表     1) 组名: 是用户组的名称,由字母或数字构成。     2) 口令:用户组密码,这个段可以是空的或!,如果是空的或有!,表示没有密码    3) 组管理者:这个字段也可为空,如果有多个用户组管理者,用,号分割    4) 组内用户列表:如果有多个成员,用,号分割 
    加密方式:    加密:明文--> 密文    解密:密文--> 明文    单向加密:哈希算法,原文不同,密文必不同    相同算法定长输出,获得密文不可逆推出原始数据    雪崩效应:初始条件的微小改变,引起结果的巨大改变    md5: message digest, 128bits    sha1: secure hash algorithm, 160bits    sha224: 224bits    sha256: 256bits    sha384: 384bits    sha512: 512bits    更改加密算法authconfig--passalgo=sha256 --update    备注:强烈建议使用sha512加密  较安全加密:sha256  不安全:md5加密    密码的复杂性策略    /etc/login.defs  可以进行全局密码策略修改    使用数字、大写字母、小写字母及特殊字符中至少3种    足够长    使用随机密码    定期更换,不要使用最近曾经使用过的密码    不使用与自己本身有关的密码例如身份证手机号出生年月日等
四、用户管理命令useradd  账户资料的创建usermod  账户资料的更改设置userdel  账户资料删除组帐号维护命令groupadd 用户组的创建groupmod 用户组的修改groupdel 用户组的删除
4.1、用户创建:useradd useradd[options] LOGIN-u UID: [UID_MIN, UID_MAX]定义在/etc/login.defs-o 配合-u 选项,不检查UID的唯一性-g GID:指明用户所属基本组,可为组名,也可以GID-c "COMMENT":用户的注释信息-d HOME_DIR:以指定的路径(不存在)为家目录-s SHELL: 指明用户的默认shell程序可用列表在/etc/shells文件中-G GROUP1[,GROUP2,...]:为用户指明附加组,组须事先存在-N 不创建私用组做主组,使用users组做主组-r: 创建系统用户CentOS 6: ID<500CentOS 7: ID<1000
默认值设定:/etc/default/useradd文件中显示或更改默认设置:useradd  -Duseradd  –D -s SHELLuseradd  –D –b BASE_DIRuseradd  –D –g GROUP新建用户的相关文件和命令/etc/default/useradd    此文件为用户新建账户元数据生成设置选项/etc/skel/*             此目录里为新建用户的初始家目录的模板/etc/login.defs         账户信息初始化选项设置newusers passwd         格式文件批量创建用户chpasswd                批量修改用户口令
4.2、用户属性修改usermod            [OPTION] login-u UID:UID-g GID: 新主组-G GROUP1[,GROUP2,...[,GROUPN]]]:新附加组,原来的附加组将会被覆盖;若保留原有,则要同时使用-a选项-s SHELL:新的默认SHELL-c 'COMMENT':新的注释信息-d HOME: 新家目录不会自动创建;若要创建新家目录并移动原家数据,同时使用-m选项-l login_name: 新的名字;-L: lock指定用户,在/etc/shadow 密码栏的增加!-U: unlock指定用户,将/etc/shadow 密码栏的! 拿掉-e YYYY-MM-DD: 指明用户账号过期日期-f INACTIVE: 设定非活动期限
4.3、删除用户userdel               [OPTION]... login-r: 删除用户家目录44查看用户相关的ID信息例如[root@jeffary7 ~]#id jeffuid=1006(jeff) gid=1010(apple) groups=1010(apple)id [OPTION]... [USER]-u: 显示UID-g: 显示GID-G: 显示用户所属的组的ID-n: 显示名称,需配合ugG使用
45切换用户或以其他用户身份执行命令su - jeff    表示完全切换su jeff      表示不完全切换,用于测试su[options...] [-] [user [args...]]切换用户的方式:suUserName:非登录式切换,即不会读取目标用户的配置文件,不改变当前工作目录su-UserName:登录式切换,会读取目标用户的配置文件,切换至家目录,完全切换root su至其他用户无须密码;非root用户切换时需要密码换个身份执行命令:su[-] UserName-c 'COMMAND'选项:-l --loginsu-l UserName相当于su-UserName
 4.6、其他方法查看加密并设置密码 1.使用pwuncover 显示cat /etc/passwd vipw 显示passwd里密码加密信息 pwconv 关闭显示加密信息 2.finger root  使用finger显示passwd账户里面的描述信息    rpm -ivh Packages/Packages/finger-0.17-52.el7.x86_64.rpm passwd[OPTIONS] UserName: 修改指定用户的密码,仅root用户权限
4.7、passwd: 修改自己的密码常用选项:-l:锁定指定用户-u:解锁指定用户-e:强制用户下次登录修改密码-n mindays: 指定最短使用期限-x maxdays:最大使用期限-w warndays:提前多少天开始警告-iinactivedays:非活动期限--stdin:从标准输入接收用户密码echo "PASSWORD" | passwd--stdinUSERNAMEecho  mima | passwd --stdin root &>/dev/null
4.8、修改用户密码策略chage[OPTION]... LOGIN-d LAST_DAY-E --expiredateEXPIRE_DATE-I --inactive INACTIVE-m --mindaysMIN_DAYS-M --maxdaysMAX_DAYS-W --warndaysWARN_DAYS–l 显示密码策略示例:chage-d 0 tom 下一次登录强制重设密码chage-m 0 –M 42 –W 14 –I 7 tomchage-E 2016-09-10 tom4.9、单独修改用户描述信息例如[root@jeffary7 ~]#chfnChanging finger information for root.Name [root]: testOffice []: IT              Office Phone []: 666Home Phone []: 777Finger information changed.chfn指定个人信息  chsh指定shellvipw=/etc/passwd   编辑passwd文件vigr=/etc/group    编辑group文件grpck 检查组错误配置文件pwck 检查用户配置错误文件getent /etc/passwd ftp 只显示getent
4.10、创建用户组例如groupadd -g 1314 love  创建指定GID为love的用户组groupadd[OPTION]... group_name-g GID: 指明GID号;[GID_MIN, GID_MAX]-r: 创建系统组CentOS 6: ID<500CentOS 7: ID<10004.11、组属性修改:groupmodgroupmod[OPTION]... group-n group_name: 新名字-g GID: 新的GID4.12、组删除:groupdelgroupdelGROUP4.13、组密码:gpasswdgpasswd[OPTION] GROUP-a user: 将user添加至指定组中-d user: 从指定组中移除用户user-A user1,user2,...: 设置有管理权限的用户列表newgrp命令:临时切换主组如果用户本不属于此组,则需要组密码4.14、其他方式修改、查看用户组信息groupmems[options] [action]options:-g, --group groupname更改为指定组(只有root)Actions:-a, --add username 指定用户加入组-d, --delete username 从组中删除用户-p, --purge 从组中清除所有成员-l, --list 显示组成员列表groups [OPTION].[USERNAME]... 查看当前用户所属组列表

以上就是小编为大家详细介绍linux操作系统之用户组及权限组的入门知识。

原创粉丝点击