一、开篇
系统解析用户的时候,并不能直接的去解析用户名 root,能够识别解析的是ID号:UID,GID
UID 即 user ID;GID 即 group ID
1、用户 UID
管理员: 0 root
普通用户 1-65535
系统用户:1-499 Centos6 1-999 Centos7
登录用户:500-65535 Centos6 1000-65535 Centos7
**所有普通用户的用户信息保存在该目录下:/etc/passwd**
2、组 GID:用户集合,相同的用户特征
管理员组: 0 root
普通用户: 1-65535
系统用户:1-499 (Centos6) 1-999 (Centos7)
登录用户:500-65535 (Centso6) 1000-65535 (Centos7)
在这里我们就可以解释管理员账户也可以用00来代替了,它的属主和属组ID号均为0
用户的组还可以分为基本组和附加组,也就是说,一个用户可以在有一个基本组的前提下,有一个或多个附加组
**当然,普通组信息保存在该目录下: /etc/group**
3、密码策略
在设置命令中,最重要的一条便是定期修改密码
- 密码长度不少于8位
- 至少使用三类字符和符号
- 使用随机密码
4、加密算法
对称加密:加密和解密使用的是同一个密文
非对称加密:密钥对
算法:MD5 sha128 sha256
二、用户和组
安全上下文:进程以其发起者的身份来运行,进程对文件的访问权限,取决于发起此进程的用户的权限
1、groupadd:添加组
命令用法:
groupadd [options] groupname
命令选项:
-g GID:指定GID more创建时无法创建系统用户组。 GID+1
-r:创建系统组
2、groupmod:修改组
命令选项:
-g GID:修改GID
-n newgroupname :修改组名
3、groupdel:删除组
命令语法:
goupdel groupname
4、useradd:添加用户
命令选项:
-u:指定UID
-g:基本组,组先存在
-G:指明附加组
-c:添加注释信息
-d:指定家目录,复制/etc/skel并重命名实现
-s:指定默认shell
-r:创建系统用户
-D:显示创建用户的默认配置
创建新的用户时默认的配置文件,/etc/login.defs
5、usermod:修改用户
命令选项
-u:
-g:
-G:
-a:追加新的附加组
-c:
-d:
-m:与-d一起使用,把原来的家目录移动为新的家目录
-l:修改用户名
-s:修改默认shell
-L:锁定用户
-U:解锁用户
6、userdel:删除用户
命令语法:
-r:和家目录一并删除
三、其他用户、组管理命令
1、passwd创建或者修改自己的密码
1、passwd 修改自己的密码
2、passwd username 修改指定用户密码 只有root有权限
命令选项:
-l,-u 锁定和解锁用户
-d:清除密码串,
-e date:过期期限
-n days:最短使用期限
-x days:最长使用期限
-w days:告警时间
--stdin: 非交互式创建密码
echo "password" | passwd --stdin username
2、gpasswd创建或者修改密码
命令语法:
gpasswd groupname
命令选项:
-a username:向组中添加用户
-d username:从组中删除用户
3、newgrp临时切换指定的组为基本组
命令语法:
newgrp - groupname
4、id显示用户的ID号
命令选项:
-u 显示UID
-g 显示GID
-G 显示所属组ID
-n 需要和-u -g -G 配合使用显示名字而非ID
5、chage更改用户密码过期信息
命令选项:
-d date:指定密码最后修改时间
-E date:密码到期日期,过了时间后帐号不可用
-w days:告警时间
-m days:密码可以更改的最小天数,
-M days:密码有效的最大天数:
6、sudo允许普通用户使用超级用户权限的工具
允许系统管理员让普通用户执行一些或者全部的root命令
1、设置用户在某台机器上运行某些命令
2、sudo提供了丰富的日志,详细记录每个用户干了什么
3、通行证作用,免验证时间
4、/etc/sudoers
命令用法:
1、编辑/etc/sudoers, 使用visudo编辑
2、用户需要是登录用户,并且启用密码
3、在普通用户下 sudo commond username
四、解析库文件
/etc/passwd 7个字段
**root:x:0:0:root:/root:/bin/bash**
1、用户名,长度不要超过8个字符,数字字母组成
2、口令:password, shawod, 使用x占位符
3、用户的标识符UID
4、用户组的标识符GID
5、注释信息
6、用户的家目录
7、登录shell
/etc/shadow
root:
6
6
6rxtW5qBw
$yNHpzQxqF61aBP.4EgWwdZG32DiaRg537VnUFV0x947zXHs3VLgEiToxwCQB1YsdqgTBlaQuP.gYirQQABoYB.:18312:0:99999:7:::
1、登录名
2、用户的加密口令,*,被锁定,!!代表过期,$6$加密算法,$rxtW5qBw$加密因子
3、口令最后一次修改时间
4、两次修改口令最小的时间间隔
5、口令有效的最大天数
6、告警时间
/etc/group
root:x:0:
1、组名
2、口令
3、GID
4、以他为附加组的组内用户
五、练习命令
1、创建用户gentoo,UID为4001,基本组为gentoo,附加组为distro(GID为5000)和peguin(GID为5001);
2、创建用户fedora,其注释信息为"Fedora Core",默认shell为/bin/tcsh;
3、修改gentoo用户的家目录为/var/tmp/gentoo;要求其原有文件仍能被用户访问;
4、为gentoo新增附加组netadmin;