Linux账号与身份管理

使用者识别:UID与GID

虽然我们登录Linux主机的时候,输入的是我们的账号,但是,Linux主机并不会直接认识账号名称的,他只认识ID。而登录者一般都会至少取得两个ID,一个是使用者ID(UID)、一个是群组ID(GID)。

账户登入过程:

1. 先找寻 /etc/passwd 里面是否有这个账号?如果没有则跳出,如果有的话则将该账号对应的 UID
( User ID )与 GID ( Group ID )读出来,另外,该账号的家目录与 shell 设定也一并读出;
2. 再来则是核对密码表啦!这时 Linux 会进入 /etc/shadow 里面找出对应的账号与 UID,然后核
对一下你刚刚输入的密码与里头的密码是否相符?
3. 如果一切都 OK 的话,就进入 Shell 控管的阶段啰!

使用者相关联的文件

/etc/passwd

[root@localhost aaa]# 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
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
polkitd:x:999:998:User for polkitd:/:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
chrony:x:998:996::/var/lib/chrony:/sbin/nologin

 /etc/shadow

[root@localhost aaa]# cat /etc/shadow
root:$6$bEoHh/9hmfTspiq2$MUaEmjkwTprK8jy2EZ9y.o/TEvsz/825wI4vE4.PSnPbI/6.8G4RWF5KhG4XP22DSPKe0wnfxag8fOUqd4wH40::0:99999:7:::
bin:*:17834:0:99999:7:::
daemon:*:17834:0:99999:7:::
adm:*:17834:0:99999:7:::
lp:*:17834:0:99999:7:::
sync:*:17834:0:99999:7:::
shutdown:*:17834:0:99999:7:::
halt:*:17834:0:99999:7:::
mail:*:17834:0:99999:7:::
operator:*:17834:0:99999:7:::
games:*:17834:0:99999:7:::
ftp:*:17834:0:99999:7:::
nobody:*:17834:0:99999:7:::
systemd-network:!!:18456::::::
dbus:!!:18456::::::
polkitd:!!:18456::::::
sshd:!!:18456::::::
postfix:!!:18456::::::
chrony:!!:18456::::::

群组相关联的文件

/etc/group

[root@localhost aaa]# cat /etc/group
root:x:0:
bin:x:1:
daemon:x:2:
sys:x:3:
adm:x:4:
tty:x:5:
disk:x:6:
lp:x:7:
mem:x:8:
kmem:x:9:
wheel:x:10:
cdrom:x:11:
mail:x:12:postfix
man:x:15:
dialout:x:18:
floppy:x:19:
games:x:20:
tape:x:33:
video:x:39:
ftp:x:50:
lock:x:54:
audio:x:63:
nobody:x:99:
users:x:100:
utmp:x:22:
utempter:x:35:
input:x:999:
systemd-journal:x:190:
systemd-network:x:192:
dbus:x:81:
polkitd:x:998:
ssh_keys:x:997:
sshd:x:74:
postdrop:x:90:
postfix:x:89:
chrony:x:996:

新增和移除使用者

新增用户

#新增用户hydra
[root@localhost aaa]# useradd hydra
#给新用户添加密码,否则无法登录,root用户可以无视密码规则,其他用户不可以
[root@localhost aaa]# passwd hydra
更改用户 hydra 的密码 。
新的 密码:
无效的密码: 密码少于 8 个字符
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。

我们可以使用新账号登陆一下试试。 

删除用户

#完全删除用户资料
userdel -r hydra

修改用户资料

root@linux ~]# usermod [-cdegGlsuLU] username 
参数: -c  :后面接账号的说明,即 /etc/passwd 第五栏的说明栏,可以加入一些账号的说明。 
-d  :后面接账号的家目录,即修改 /etc/passwd 的第六栏; 
-e  :后面接日期,格式是 YYYY-MM-DD 也就是在 /etc/shadow 内的第八个字段数据啦! 
-g  :后面接 group name,修改 /etc/passwd 的第四个字段,亦即是 GID 的字段! 
-G  :后面接 group name,修改这个使用者能够支持的群组,修改的是 /etc/group 啰~ 
-l  :后面接账号名称。亦即是修改账号名称, /etc/passwd 的第一栏! 
-s  :后面接 Shell 的实际档案,例如 /bin/bash 或 /bin/csh 等等。 
-u  :后面接 UID 数字啦!即 /etc/passwd 第三栏的资料; 
-L  :暂时将使用者的密码冻结,让他无法登入。其实仅改 /etc/shadow 的密码栏。 
-U  :将 /etc/shadow 密码栏的 ! 拿掉,解冻啦!

例子:

一般用户修改资料:chfn、chsh

[hydra@localhost ~]$ chfn
Changing finger information for hydra.
名称 [degGlsuLU]: hydra
办公 []: hand
办公电话 []: 123
住宅电话 []: 123

密码:
Finger information changed.

chsh -s :用来修改shell

id指令

[root@localhost aaa]# id
uid=0(root) gid=0(root) 组=0(root) 环境=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
[root@localhost aaa]# id hydra1
uid=1000(hydra1) gid=1000(hydra) 组=1000(hydra)

新增和移除群组

#新增群组
[root@localhost aaa]# groupadd group1
#修改
groupmod [-g gid] [-n group_name]
#删除群组
[root@localhost aaa]# groupdel group1

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值