1.用户和用户组存在的意义:
为了限制权限的使用,系统安全中的最底层保护
Linux用户分类(两种):
普通用户
超级用户 root 管理所有的资源
系统用户:用户使用持有的身份
登录用户:用户登录时身份的验证
2.用户如何存在:
1)vim /etc/passwd ###编辑用户身份
Eg:
插入图:
westos❌1001:1001:westos—westos:/home/westos:/bin/bash
共七个:
westos:用户名字
x密码:用户无法访问/etc/shadow,保证了密码
1001:UID
1001:GID:vim /etc/login.defs
s:用户说明:在登录界面可以看到用户信息被改变
/home/westos:家目录:(登录系统之后默认所在位置),按下ctrl 、Alt、F2进行到切换到虚拟平台 用pwd去查看家目录
/bin/bash:用来交流的软件(shell),按下ctrl 、Alt、F2进行到切换到虚拟平台, 按下ctrl 、Alt、F1回到图形界面 用ps去查看家目录
2)Vim /etc/group ###编辑用户组身份
Eg:
westos❌1001:
用户名称、密码、GID、组里面的成员
插入图:
3)mkdir /home/westos ##用户家目录
4) su –westos ##切换到此用户
5)在超级用户下把家目录给用户 chown westos.westos /home/westos /##超级用户下给权限
6) cp /etc/skel/.*/home/westos/ ##把用户使用的系统配置文60件从模板中复制到家目录中
设定密码:passwd westos
3.用户涉及到的配置文件和内容
/etc/passwd ##用户信息库
/etc/group ##组信息库
/home/用户同名目录 ##默认用户家目录
/etc/skel/所有文件 ##用户环境配置文件模板
/etc/shadow ##用户认证信息—密码属性(用户名称、加密字符、密码最后一次修改修改时间、最短有效期、最长有效期、警告期、非活跃天数、到期时间点)
/etc/gshadow ##组认证信息(组的名称、租的密码、组的管理员
组的成员)
注意:
记不住的话,man 5 加文件相对路径(文件名称:比如shadow)去查看
插入图:
4、用户信息查看
gerent passwd 用户名:查看用户信息
id ##查看用户id 信息
参数 -u 查看用户uid
-g gid
-G 所在所有组的id
-n 显示名字不显示数字(要和其他参数一起用)
-a 所有id
插入图:
5.用户身份的切换
gnome-session-quit ##表示注销当前用户
gnome-session-quit—force ##表示立即注销
whoami ##可以查看用户身份
su – 用户名
注意:1、在同一个shell里面不要反复去执行su - ,用完一定要及时推出:输入exit
2.超级用户到普通用户不用密码,其他都要密码(包括普通到普通)
3.su不加上‘-’之后,会少读取系统的配置文件
例如:vim /etc/profile 编辑a=we
Vim /etc/bashrc 编辑b=we
su – 时候echo $a 和echo $b 皆有显示,而当su 时,只有echo $b 有显示
6.用户和用户组的建立
用watch去进行每秒中的监控
watch –n 1 ‘tail –n 3 /etc/passwd /etc/group;ls –l /home/’(同时执行两条命令时要用分号)
插入图:
同时再打开一个shell
输入
groupadd westos是建立
groupdel westos是删除(去重新建立)
groupadd -g 6666 westos表示gid是6666
然后删掉之后建立用户
useradd westos
userdel –r westos(要加-r,否则用户其他信息依然保留,要用rm –fr /home/用户/去删除)
然后添加用户信息:
useradd –u 6666 westos ##uid
useradd –g 8888 westos ##gid
useradd –c “westos-we”westos ##用户说明
useradd –d /mnt westos ##家目录,但是/mnt的家目录不合理
useradd –s /bin/bash westos ##用户shell
useradd -M –s /bin/bash westos ###用-M 则表示不建立家目录
useradd -G 72 westos ##表示建立附加组
7.用户用户组的信息的管理
用watch去进行每秒中的监控
watch –n 1 ‘tail –n 5 /etc/passwd /etc/group;ls –l /home/’(同时执行两条命令时要用分号)
1) groupmod –g
2) usermod
-l 修改用户名称
-u 修改用户的uid
-g 修改用户的初始gid
-aG 指定用户的附加组,只会添加只用-G会改变原始
-c 修改用户说明
-md 修改用户家目录,-d只能更改家目录的指向
-s 修改shell类型
8.用户认证文件内容
- 用户名称
- 用户密码
3)最后一次被更改时间(1970.1.1开始算)
4)密码最短有效期(多场时间才能去修改密码,例如1是24小时)
5)密码最长有效期(在一个周期之内必须修改密码)
6)密码警告期(密码到期前多少天警告去修改密码)
7)非活跃天数(密码到期,在给一个时间去警告修改)
8)帐号到期时间 - 用户自定义
9.用户认证信息的修改
建立westos,用watch监控/etc/shadow 最后一行
/etc/shadow
passwd 不能修改密码到期日
-d, --delete ###删除
-l, --lock ###冻结(出现两个感叹号)
-u, --unlock ###解除冻结
-e, --expire ###最后一次被更改时间
-f, --force ###强制
-x, --maximum=DAYS ##最长有效期
-n, --minimum=DAYS ##最长有效期
-w, --warning=DAYS ##警告期
-i, --inactive=DAYS ##非活跃天数
-S, --status 情况
chage(不能修改密码)
-d, --lastday LAST_DAY ###最后一次被修改时间
-E, --expiredate EXPIRE_DATE ##密码到期日
-I, --inactive INACTIVE ##非活跃天数
-l, --list ###查看密码信息
-m, --mindays MIN_DAYS ###最短有效期
-M, --maxdays MAX_DAYS ### 最长有效期
-W, --warndays WARN_DAYS ###警告期
10.用户授权
1.权利下放文件为/etc/sudoers,此文件可以直接用vim直接编辑,但是不检测语法的检测
也可以使用visudo,可以提供语法的监测
2、下放方式:
用户 主机名称=(新的用户身份:root) 命令,命令(多个命令,还可以使用别名的方式)
westos localhost=(root) /usr/sbin/useradd ###westos 用户可以在localhost 的主机以root的身份执行useradd命令
3、测试
su – westos
sudo useradd hello
一定要在执行命令前面加sudo