账号和权限管理

账号和权限管理

引言

​ 大家无论安装完linux系统和windows系统后,都会要求你去新建一个用户去登录,

不会让你们直接使用超级管理员身份去登录自己的系统,这样是为了安全性的考虑。

(演示linux图形化界面如何调出root用户)。

​ 大家对于Windows的了解是否知道新加的用户默认分配到那个组(user组),详解下计算机管理的一些选项。可以演示一下如何修改密码,新加用户等操作。查看日志报错,等信息

1用户账号和组账号概述

1.1用户帐号类型

  • 超级用户
  • 普通用户
  • 程序用户
1、查看当前登录用户信息 
who命令: 
[root@localhost ~]# whoami
root
[root@localhost ~]# who
root     pts/0        2021-08-17 14:16 (192.168.91.1)
root     pts/1        2021-08-17 14:30 (192.168.91.1)
[root@localhost ~]# who -b
         系统引导 2021-08-17 14:15

2、last命令 
选项: 
(1)-x:显示系统开关机以及执行等级信息 
(2)-a:将登陆ip显示在最后一行 
(3)-f :读取特定文件,可以选择 -f /var/log/btmp文件 
(4)-d:将IP地址转换为主机名 
(5)-n:设置列出名单的显示列数 
(6)-t:查看指定时间的用户登录历史 

3、lastlog 查看所有用户的最近一次登录
-u 查看指定用户
[root@localhost ~]# lastlog -u root
用户名           端口     来自             最后登陆时间
root             pts/1    192.168.91.1     二 817 14:30:01 +0800 2021

-t 表示几天之内的
[root@localhost ~]# lastlog -t 1
用户名           端口     来自             最后登陆时间
root             pts/1    192.168.91.1     二 817 14:30:01 +0800 2021
gdm              :0                        二 817 14:15:56 +0800 2021
zhangsan         :0                        二 817 16:25:37 +0800 2021

1.1.1超级用户

超级用户:root 用户是 Linux 操作系统中默认的超级用户账号,对本主机拥有至高
无上的权限,类似于 Windows 操作系统中的 Administrator 用户。只有当进行系统
管理、维护任务时,才建议使用 root 用户登录系统,日常事务处理建议只使用普通用户账号。日常工作一般不会使用root账号,小公司除外,小公司运维可能就你一个人你说了算。

思考:超级管理员是否是按照名称来定义的吗?

普通用户:账号需要由 root 用户或其他管理员用户创建,拥有的权限受
到一定限制,处理问题受到限制,一般只在用户自己的宿主目录中拥有完整权限。

演示:使用普通用户修改网卡

Tips:用户名后面的符号有所改变

[lisi@test1 root]$ ifconfig ens37 192.168.100.100
SIOCSIFADDR: 不允许的操作
SIOCSIFFLAGS: 不允许的操作
[lisi@test1 root]$ su root
密码:
[root@test1 ~]# 
1.1.3程序用户

程序用户:在安装 Linux 操作系统及部分应用程序时,会添加一些特定的低权限用
户账号,这些用户一般不允许登录到系统,而仅用于维持系统或某个程序的正常运
行,如 bin、daemon、ftp、mail 等,以后实验中会经常遇到,先了解下即可。

1.2组帐号

看到组最常见的组词是不是组织?组织:按照一定的宗旨和系统建立起来的集体。那linux和windows中的组就是将多个用户集合起来,统一分配某种相同的权限(开通或关闭)。

1.2.1基本组(私有组)
  • 私有组:建立账户时,若没有指定账户所属的组,系统会建立一个和用户名相同的组,这个组就是私有组,这个组只容纳了一个用户。
  • 基本组:在用户所属组中的第一个组称为基本组,基本组在 /etc/passwd 文件中指定
1.2.2附加组(公共组)

附加组:除了第一个组外的其他组为附加组或公共组,附加组在 /etc/group 文件中指定

[root@test1 ~]# id lisi
uid=1004(lisi) gid=1004(lisi)=1004(lisi),1005(kgc)
               1004为基本组或私有             1005为附加组或公共组

1.3 ID

1.3.1 UID

UID(User IDentity,用户标识号):Linux 操作系统中的每一个用户账号都有一个数字形式的身份标记,称为 UID(UserIDentity,用户标识号),对于操作系统核心来说,UID 是区分用户的基本依据,原则上每个用户的 UID 号应该是唯一的。root 用户账号的 UID 号为固定值 0,而程序用户账号的 UID号默认为1~499,500~60000 的 UID 号默认分配给普通用户使用。

登录用户是从1000起

[root@test1 ~]# id zhangsan
uid=1000(zhangsan) gid=1000(zhangsan)=1000(zhangsan),10(wheel)
1.3.2 GID

GID(Group IDentify,组标识号):与 UID 类似,每一个组账号也有一个数字形式的身份标记,称为 GID(Group IDentity,组标识号)。root 组账号的 GID 号为固定值 0,而程序组账号的 GID 号默认为 1~499,500~60000 的 GID 号默认分配给普通组使用。

1.4 用户账号管理

1.14.1文件位置:
  • /etc/passwd

    存放保存用户名称、宿主目录、登录 Shell 等基本信息,

[root@test1 ~]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
省略多行
  • /etc/shadow

  • chage 用户

    存放保存密码

[root@test1 ~]# head -2 /etc/shadow
root:$6$HzYRIWo05k6aVw2p$aLg7wfHGwoghmuUrIYced/vtejEu32K/yyP9CrF..hAejvS4Y64if3DCfJxwjV1.NhLow40mm5Pkmd6R8KOBU/::0:99999:7:::bin:*:17110:0:99999:7:::

用户名:root

密码: 6 6 6HzYRIWo05k6aVw2p$aLg7wfHGwoghmuUrIYced sha-512 看不懂

修改密码时间:

1970 年 01 月 01 日这是linux诞生的第一年已他作为元年开始计算

1.4.2添加用户

useradd命令

基本格式

useradd 【选项】 用户名

添加用户:查看是否在 passwd和shadow文件中生成信息

  • 在/etc/passwd 文件和/etc/shadow 文件的末尾增加该用户账号的记录
  • 若未明确指定用户的宿主目录,则在/home 目录下自动创建与该用户账号同名的宿
    主目录,并在该目录中建立用户的各种初始配置文件。
  • 若没有明确指定用户所属的组,则自动创建与该用户账号同名的基本组账号,组账
    号的记录信息将保存到/etc/group 和/etc/shadow 文件中。
[root@test1 ~]# useradd lisi
[root@test1 ~]# id lisi
uid=1004(lisi) gid=1004(lisi)=1004(lisi),1005(kgc)
[root@test1 ~]# cat /etc/passwd |grep lisi
lisi:x:1004:1004::/home/lisi:/bin/bash
[root@test1 ~]# tail -1 /etc/passwd
lisi:x:1004:1004::/home/lisi:/bin/bash
[root@test1 ~]# tail -1 /etc/shadow
lisi:$6$wbBIX3M/$QCPLfO0hs6gd0IyOHfblrwi2b319fCJFLHP2SG/QTgyjNTKON01S1qsUpNnjdeeS9Vd0cBFareY9mUh/87brz0:18809:0:99999:7:::
选项
  • -u:指定用户的 UID 号,要求该 UID 号码未被其他用户使用。
  • -d:指定用户的宿主目录位置(当与-M 一起使用时,不生效)。
  • -e:指定用户的账户失效时间,可使用 YYYY-MM-DD 的日期格式。
  • -g:指定用户的基本组名(或使用 GID 号)。
  • -G:指定用户的附加组名(或使用 GID 号)。
  • -M:不建立宿主目录,即使/etc/login.defs 系统配置中已设定要建立宿主目录。
  • -s:指定用户的登录 Shel
[root@test1 ~]# useradd -u 1100 zhou
[root@test1 ~]# id zhou
uid=1100(zhou) gid=1100(zhou)=1100(zhou)

1.4.3密码管理

passwd命令

为用户账号设置密码

passwd [选项]… 用户名

基本用法 不加选项 可以添加密码

[root@test1 /]# passwd lisi    修改lisi 用户密码输入两次密码
更改用户 lisi 的密码 。
新的 密码:
无效的密码: 密码少于 8 个字符
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。

选项

  • -d:清空指定用户的密码,仅使用用户名即可登录系统。
  • -l:锁定用户账户。
  • -S:查看用户账户的状态(是否被锁定)。
  • -u:解锁用户账户。
[root@test1 /]# passwd -l lisi
[root@test1 /]# tail -1 /etc/shadow
lisi:!!:18809:0:99999:7:::
[root@test1 /]# passwd -d lisi
清除用户的密码 lisi。
passwd: 操作成功
[root@test1 /]# passwd -S lisi
lisi NP 2021-07-01 0 99999 7 -1 (密码为空。)
[root@test1 /]# passwd -u lisi
解锁用户 lisi 的密码。
passwd: 警告:未锁定的密码将是空的。
passwd: 不安全的操作(使用 -f 参数强制进行该操作)
[root@test1 /]# passwd -fu lisi
解锁用户 lisi 的密码。
passwd: 操作成功
[root@test1 dnf]# echo "123123"|passwd --stdin lisi  //免于交互
更改用户 lisi 的密码 。
passwd:所有的身份验证令牌已经成功更新。
1.4.4修改用户账号的属性

usermod命令

usermod [选项]… 用户名

常见选项

  • -l 更改用户账号的登录名称(Login Name)
  • -L 锁定用户账户
  • -u 修改用户的 UID 号
  • -U 解锁锁用户账户
  • -d:修改用户的宿主目录位置。
  • -e:修改用户的账户失效时间,可使用 YYYY-MM-DD 的日期格式。
  • -g:修改用户的基本组名(或使用 GID 号)
  • -G:修改用户的附加组名(或使用 GID 号)
  • -s:指定用户的登录 Shell
[root@test1 home]# echo "123123" | passwd --stdin zhou   //无交互修改
更改用户 zhou 的密码 。
passwd:所有的身份验证令牌已经成功更新。
[root@test1 home]# usermod -L zhou       //锁定用户
[root@test1 home]# passwd -S zhou        //查看状态
zhou LK 2021-07-02 0 99999 7 -1 (密码已被锁定。)
[root@test1 home]# usermod -U zhou   //解锁   
[root@test1 home]# passwd -S zhou   //查看状态
zhou1 PS 2021-07-02 0 99999 7 -1 (密码已设置,使用 SHA512 算法。)

[root@test1 home]# usermod -l zhou1 zhou  //修改用户名
[root@test1 home]# id zhou                //验证查看
id: zhou: no such user
[root@test1 home]# id zhou1
uid=1002(zhou1) gid=10(wheel)=10(wheel),0(root)

[root@test1 ~]# cd /home/
[root@test1 home]# ls
lisi  zhangsan  zhou
[root@test1 home]# mv zhou/ /
[root@test1 home]# ls
lisi  zhangsan
[root@test1 home]# usermod -d /zhou zhou
使用前要先手动更改目录,-d只是更新信息

1.4.5删除用户

userdel [选项] 用户

  • -r 将宿主目录一起删除

    [root@test1 etc]# userdel -r zhou1    //连宿主目录一起删除
    [root@test1 etc]# id zhou1            //验证
    id: zhou1: no such user
    [root@test1 etc]# cd /home/
    [root@test1 home]# ls
    lisi  zhangsan
    

1.5组管理

1.5.1组账号文件

与用户帐号文件相类似
/etc/group:保存组帐号基本信息
/etc/gshadow:保存组帐号的密码信息基本不使用

[root@test1 /]# grep "adm" /etc/group   //过滤/etc/group文件下的adm文件
adm:x:4:
1.5.2添加组

groupadd命令

groupadd [-g GID] 组账号名

[root@test1 /]# groupadd zhou           //添加组账号
[root@test1 /]# tail -1 /etc/group
zhou:x:1002:
[root@test1 /]# groupadd -g 88 zhou    //-g指定组id
[root@test1 /]# tail -1 /etc/group
zhou:x:88:
1.5.3组内管理

gpasswd 命令——添加、设置、删除组成员

  • -a:向组内添加一个用户
  • -d:从组内删除一个用户成员
  • -M:定义组成员列表,以逗号分隔
[root@test1 /]# useradd zhou1             //组内加入新成员
[root@test1 /]# gpasswd -a zhou1 zhou
正在将用户“zhou1”加入到“zhou”组中
[root@test1 /]# gpasswd -d zhou1 zhou
正在将用户“zhou1”从“zhou”组中删除
[root@test1 /]# gpasswd -M zhou1,zhou zhou
[root@test1 /]# grep "^zhou" /etc/group
zhou:x:88:zhou1,zhou
1.5.4删除组账号

groupdel 组帐号名

[root@test1 /]# groupdel zhou
[root@test1 /]#
1.5.5查询
  • finger命令查询用户帐号的详细信息(finger [用户名])
[root@test1 Packages]# finger zhangsan
Login: zhangsan       			Name: zhangsan
Directory: /home/zhangsan           	Shell: /bin/bash
Last login 五 72 09:17 (CST) on pts/0
No mail.
No Plan.
  • w ,who,uers

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

[root@test1 Packages]# w
 11:20:58 up  2:05,  1 user,  load average: 0.00, 0.01, 0.05
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    192.168.100.99   09:16    2.00s  0.74s  0.02s w
[root@test1 Packages]# who
root     pts/0        2021-07-02 09:16 (192.168.100.99)
[root@test1 Packages]# users
root

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

,who,uers

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

[root@test1 Packages]# w
 11:20:58 up  2:05,  1 user,  load average: 0.00, 0.01, 0.05
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    192.168.100.99   09:16    2.00s  0.74s  0.02s w
[root@test1 Packages]# who
root     pts/0        2021-07-02 09:16 (192.168.100.99)
[root@test1 Packages]# users
root

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值