Linux用户权限
1.系统中和用户相关的文件
(1)/etc/passwd:记录系统用户信息文件
(2)/etc/shadow:系统用户密码文件
(3)/etc/group:组用户信息文件
(4)/etc/gshadow:组用户密码文件
2./etc/passwd文件含义
[root@shuai /etc]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
#第一列:用户名
#第二列:用户密码信息
#第三列:用户的uid
#第四列:用户的gid
#第五列:用户的注释信息
#第六列:用户的家目录
#第七列:用户登录方式(解释器)

3.用户概念介绍:
管理员用户 root id(0)
虚拟用户 nobody id(1-999)
普通用户 shuai id(1000+)
4.系统用户相关命令
(1)创建用户命令(useradd)
[root@shuai ~]# useradd shuai #创建虚拟用户 [root@shuai ~]# useradd shuai -M -s /sbin/nologin #指定用户uid -u [root@shuai ~]# useradd shuai -u 3000 #指定用户用户组 -g [root@shuai ~]# useradd shuai01 -u 3000 -g amy [root@shuai ~]# id shuai01 uid=3000(shuai01) gid=1002(amy) groups=1002(amy) [root@shuai ~]# useradd shuai02 -u 3001 -g1002 [root@shuai ~]# id shuai02 uid=3001(shuai02) gid=1002(amy) groups=1002(amy) #添加附属组 -G [root@shuai ~]# useradd shuai03 -u 3004 -g amy -Gshuai [root@shuai ~]# id shuai03 uid=3004(shuai03) gid=1002(amy) groups=1002(amy),1001(shuai) #给用户添加备注信息 -c [root@shuai ~]# useradd shuai05 -M -s /sbin/nologin -c "test user" [root@shuai ~]# grep shuai05 /etc/passwd shuai05:x:3005:3005:test user:/home/shuai05:/sbin/nologin
(2)修改用户信息(usermod)
usermod shuai -s /sbin/nologin #-s 修改用户的登录方式 #-g 修改用户的主要组信息 #-G 修改用户附属组信息 #-c 修改用户的注释信息
(3)删除用户(userdel -r)
[root@shuai ~]# userdel -r shuai03
#彻底删除用户以及用户的家目录
5.用户组相关命令
#添加用户组
groupadd
#修改用户组
groupmod
#删除用户组
groupdel
6.用户密码设置方法
#交互式设置密码 [root@shuai ~]# passwd 用户名 #非交互设置密码 [root@shuai ~]# echo 123|passwd --stdin shuai Changing password for user shuai. passwd: all authentication tokens updated successfully.
补充:企业中设置密码和管理密码的方式
01.密码要复杂12位以上字母数字及特殊符号
02.管理密码的软件
keeppass
https://keepass.info/download.html
https://keepass.info/translations.html #汉化包下载
密码保险柜,本地存储密码
lastpass
密码保险柜,在线存储密码
03.大型企业用户和密码统一管理(openldaq域,jumpsever)
04.动态密码:动态口令,第三方提供或自己开发。
7.用户的属组属主的修改命令
[root@shuai ~]# chown shuai.shuai shuai [root@shuai ~]# ll -d dr-xr-x---. 7 root root 4096 Jul 15 11:04 . [root@shuai ~]# ll -d shuai drwxr-xr-x 2 shuai shuai 196 Jul 13 16:46 shuai [root@shuai ~/shuai]# ll total 0 -rw-r--r-- 1 root root 0 Jul 13 16:38 shuai01.txt -rw-r--r-- 1 root root 0 Jul 13 16:38 shuai02.txt -rw-r--r-- 1 root root 0 Jul 13 16:38 shuai03.txt -rw-r--r-- 1 root root 0 Jul 13 16:38 shuai04.txt -rw-r--r-- 1 root root 0 Jul 13 16:38 shuai05.txt -rw-r--r-- 1 root root 0 Jul 13 16:38 shuai06.txt -rw-r--r-- 1 root root 0 Jul 13 16:38 shuai07.txt -rw-r--r-- 1 root root 0 Jul 13 16:38 shuai08.txt -rw-r--r-- 1 root root 0 Jul 13 16:38 shuai09.txt -rw-r--r-- 1 root root 0 Jul 13 16:38 shuai10.txt #递归修改-R [root@shuai ~]# chown -R shuai.shuai shuai [root@shuai ~]# ll -d shuai drwxr-xr-x 2 shuai shuai 196 Jul 13 16:46 shuai [root@shuai ~]# cd shuai && ll total 0 -rw-r--r-- 1 shuai shuai 0 Jul 13 16:38 shuai01.txt -rw-r--r-- 1 shuai shuai 0 Jul 13 16:38 shuai02.txt -rw-r--r-- 1 shuai shuai 0 Jul 13 16:38 shuai03.txt -rw-r--r-- 1 shuai shuai 0 Jul 13 16:38 shuai04.txt -rw-r--r-- 1 shuai shuai 0 Jul 13 16:38 shuai05.txt -rw-r--r-- 1 shuai shuai 0 Jul 13 16:38 shuai06.txt -rw-r--r-- 1 shuai shuai 0 Jul 13 16:38 shuai07.txt -rw-r--r-- 1 shuai shuai 0 Jul 13 16:38 shuai08.txt -rw-r--r-- 1 shuai shuai 0 Jul 13 16:38 shuai09.txt -rw-r--r-- 1 shuai shuai 0 Jul 13 16:38 shuai10.txt
8.用户信息查看命令
1.显示用户信息(id) [root@shuai ~]# id shuai uid=1001(shuai) gid=1001(shuai) groups=1001(shuai) 2.显示正在登陆系统的用户信息(w) [root@shuai ~]# w 14:47:05 up 1 day, 1:26, 2 users, load average: 0.00, 0.01, 0.05 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root tty1 07Jul20 29:42m 0.61s 0.61s -bash root pts/2 10.0.0.1 12:55 1.00s 2.01s 0.02s w 登陆的用户 登陆的方式 源地址 登陆时间 空闲时间 消耗的cpu资源 用户在干什么,用了多少时间 3.看那个用户登录过系统(lastlog) [root@shuai ~]# lastlog Username Port From Latest root pts/0 10.0.0.1 Thu Jul 16 14:50:19 +0800 2020 bin **Never logged in** daemon **Never logged in** adm **Never logged in** lp **Never logged in** sync **Never logged in** shutdown **Never logged in**

远程通知
9.用户权限说明
1.直接切换到root账户下管理系统 篡权夺位
su -: 会切换root用户,也会把用户变量也切换到root的环境变量
su : 只是会切换root用户,但是当前的环境变量还是以前用户的环境变量
2.直接让root用户修改要做的数据文件权限
3.root用户赋予了普通用户权利 (sudo)
sudo:root用户授权一个能力给普通用户
[root@shuai ~]# visudo (相当于编辑vim /etc/sudoers) 90 ## 91 ## Allow root to run any commands anywhere 92 root ALL=(ALL) ALL 93 shuai01 ALL=(ALL) /usr/sbin/useradd, /usr/bin/mv 94 95 ## Allows members of the 'sys' group to run networking, software, 测试:查看shuai01用户的权利 [shuai01@shuai ~]$ sudo -l User shuai01 may run the following commands on shuai: (ALL) /usr/sbin/useradd, /usr/bin/mv [shuai01@shuai ~]$ sudo useradd shuai06 [shuai01@shuai ~]$ id shuai06 uid=3008(shuai06) gid=3008(shuai06) groups=3008(shuai06)
sudo命令补充:
Defaults logfile=/var/log/sudo //定义日志记录并指定存储位置
sudo -k Kill 清除“入场卷”上的时间,下次再使用sudo时要再输入密码
授权单个命令或多个命令 /usr/sbin/useradd, /usr/bin/rm, , 授权单个命令目录或多个命令目录 (需要排除部分特权命令) /usr/sbin/, !/usr/sbin/visudo , /usr/bin/ 不需要输入用户密码,可以直接sudo方式执行命令
NOPASSWD: /usr/sbin/, !/usr/sbin/visudo , /usr/bin/
10.设置特殊权限位
rwx -w- –x 系统文件数据的9个权限位 系统中实际应该有12个权限位
(1)setuid:
权限设置方法:
chmod u+s 文件信息 chmod 4755 文件信息 #root [root@shuai ~]# chmod u+s /usr/bin/cat [root@shuai ~]# ll -d /usr/bin/cat -rwsr-xr-x. 1 root root 54080 Apr 11 2018 /usr/bin/cat #zhaosi [zhaosi@shuai ~]$ cat /root/shuai.txt 123 在属主权限位多出s信息 总结: setuid权限位设置,将文件属主拥有的能力,分配给所有人 权限一般富裕二进制的命令文件或者一些可执行的脚本文件
(2)setgid:
chmod g+s 文件信息 chmod 2755 文件信息 (属组加s 加w权限) chmod 6755 文件信息 (属主属组加s权限,属组加w权限) [root@shuai ~]# chmod g+s /usr/bin/cat [root@shuai ~]# ll -d /usr/bin/cat -rwxr-sr-x. 1 root root 54080 Apr 11 2018 /usr/bin/cat [root@shuai ~]# chmod 2775 /usr/bin/ls [root@shuai ~]# ll -d /usr/bin/ls -rwxrwsr-x. 1 root root 117672 Apr 11 2018 /usr/bin/ls [root@shuai ~]# chmod 6775 /usr/bin/ls [root@shuai ~]# ll -d /usr/bin/ls -rwsrwsr-x. 1 root root 117672 Apr 11 2018 /usr/bin/ls 总结: setgid权限位设置,将文件属组拥有的能力,分配给所有用户组
sticky bit:粘滞位: (创建一个共享目录) 可以将不同用户信息放置到共享目录中,实现不同用户数据可以互相查看,但是不可以互相随意修改
设置方法: chmod o+t 目录信息 chmod 1777 目录信息 系统中已经准备好了一个共享目录,权限位1777 [root@shuai ~]# ll -d /tmp/ drwxrwxrwt. 10 root root 4096 Apr 25 09:35 /tmp/
11.总结: 普通用户拥有root用户能力
1.直接切换用户 su – (*)
优势: 简单快捷
劣势: 风险太高(root权限泛滥)
2.修改数据文件权限 ,9位权限位 ,属主信息
优势: 只针对某个数据文件进行修改 只针对某个用户进行授权
劣势: 需要了解权限位功能
3.采用sudo提权方式
优势: 可以利用文件编辑指定用户有哪些指定权限 sa运维部门 dev开发人员
劣势: 配置规划复杂
4.修改数据文件权限 后3位权限位
优势: 设置权限简单方便
劣势: 设置好的权限所有用户都拥有
5.如何防范系统中的重要文件不被修改(root用户也不能修改)
给文件加上锁头: 目的: 使root用户也不能直接修改相应文件

设置方法: [root@shuai ~]# chattr +i /etc/passwd [root@shuai ~]# ll -d /etc/passwd -rw-r--r-- 1 root root 1227 Jul 17 11:51 /etc/passwd [root@shuai ~]# lsattr /etc/passwd ----i----------- /etc/passwd 解锁方法: [root@shuai ~]# chattr -i /etc/passwd [root@shuai ~]# ll -d /etc/passwd -rw-r--r-- 1 root root 1227 Jul 17 11:51 /etc/passwd 检查方法 [root@shuai ~]# lsattr /etc/passwd ---------------- /etc/passwd

浙公网安备 33010602011771号