Linux系统用户管理介绍
Linux系统是一个多用户多任务的操作系统,即多个用户可以同时登录到同一台Linux系统进行相关操作,每个用户在系统上的操作权限也互相不同。
1. Linux系统中用户的作用
利用用户登录系统
登录一台Linux主机,必须要拥有该主机的用户和密码信息
利用用户管理数据
系统中每一个文件,都有对应的用户进行管理,即属主和属组等信息
利用用户管理进程
系统上每一个运行的进程,都有一个特定的用户管理
2. Linux系统用户分类
2.1 管理员用户
root uid=0
拥有系统最高权限
2.2 系统用户(虚拟用户)
centos7中,uid处于1-999之间,包括1和999。没有家目录,不能登录系统,智能管理部分进程和数据。centos7之前版本系统中,系统用户uid处于1-499之间,包含1和499。
2.3 普通用户
centos7中,普通用户uid大于999,可以管理指定的数据,管理指定的进程,可以登录系统,具有家目录。centos7之前版本系统中,普通用户uid大于499。
3. 用户组
将多个用户归纳至一个组,当我们对组操作,其实就相当于对组中的所有用户操作。用户组是具有相同特征用户的逻辑集合
创建用户的同时默认会创建一个与用户名相同的用户组,可以通过useradd命令 -g 参数进行指定(当然前提是该组已存在)
4. 用户与用户组的关系
用户与用户组可以是一对一关系,也就是说一个用户对应一个用户组。
用户与用户组可以是多对一的关系,就是说多个用户可以在同一个用户组。
用户与用户组可以是一对多的关系,就是说一个用户可以属于多个用户组。
5. 普通用户如何获得管理员的权限
5.1 使用 su 命令,切换至root用户,获得管理员的身份
操作简单,但是需要管理员用户的密码。
[admin@backup ~]$ whoami admin [admin@backup ~]$ su - Password: #<==== 输入root用户密码 Last login: Wed Nov 4 16:37:57 CST 2020 on pts/0 [root@backup ~]# whoami root
5.2 使用 sudo 进行提权
[root@backup ~]# visudo #<==== 相当于直接编辑/etc/sudoers配置文件 ## Allow root to run any commands anywhere root ALL=(ALL) ALL admin ALL=(ALL) ALL #<==== 可设置指定命令(白名单),ALL 表示与root用户权限相同
[root@backup ~]# visudo -c #<==== 检测是否有语法错误
/etc/sudoers: parsed OK
[admin@backup ~]$ rm -fr /opt rm: cannot remove ‘/opt’: Permission denied [admin@backup ~]$ sudo rm -fr /opt #<==== 提权后删除/opt目录
6. 企业中服务器用户如何管理
6.1 禁止root用户远程登录,配置ssh配置文件生效
6.2 更改ssh远程端口,配置ssh配置文件生效
vim /etc/ssh/sshd_config PermitRootLogin no #<==== 禁止root用户远程登录Linux系统 Port xxxx #<==== 设置ssh服务远程登录端口,默认为22,保存退出后,重启sshd服务
7. 用户及用户组的创建、删除
[root@backup ~]# useradd admin #<==== 创建用户admin [root@backup ~]# passwd admin #<==== 设置密码(方法一) Changing password for user admin. New password: #<==== 设置密码 BAD PASSWORD: The password is shorter than 8 characters Retype new password: passwd: all authentication tokens updated successfully. [root@backup ~]# echo "admin"|passwd --stdin admin #<==== 设置密码(方法二) Changing password for user admin. passwd: all authentication tokens updated successfully.
[root@backup ~]# groupadd dba #<==== 创建dba用户组 [root@backup ~]# tail -1 /etc/group #<==== 查看用户组信息 dba:x:1002: [root@backup ~]# useradd user01 -g dba #<==== 创建用户user01并指定用户组 [root@backup ~]# echo "123456"|passwd --stdin user01 #<==== 设置密码 Changing password for user user01. passwd: all authentication tokens updated successfully. [root@backup ~]# id user01 #<==== 查看用户信息 uid=1002(user01) gid=1002(dba) groups=1002(dba)
[root@backup ~]# tail -2 /etc/passwd admin:x:1001:1001::/home/admin:/bin/bash user01:x:1002:1002::/home/user01:/bin/bash [root@backup ~]# userdel -r user01 #<==== 删除用户,同时删除家目录 [root@backup ~]# groupdel dba #<==== 删除用户组 [root@backup ~]# id user01 id: user01: no such user [root@backup ~]# userdel -r admin [root@backup ~]# tail -2 /etc/passwd ntp:x:38:38::/etc/ntp:/sbin/nologin rsync:x:1000:1000::/home/rsync:/sbin/nologin [root@backup ~]# tail -2 /etc/group ntp:x:38: rsync:x:1000:

浙公网安备 33010602011771号