Linux笔记07(用户和组+权限)

学习笔记仍是要坚持写下来的!算法

1、用户相关操做

管理员UID为0:系统的管理员用户。apache

系统用户UID为1~999: Linux系统为了不因某个服务程序出现漏洞而被***提权至整台服务器,默认服务程序会有独立的系统用户负责运行,进而有效控制被破坏范围。安全

普通用户UID从1000开始:是由管理员建立的用于平常工做的用户。bash

(一)id命令

显示用户详细信息 服务器

语法格式:“id 用户名” markdown

[root@mmx ~]# id root
uid=0(root) gid=0(root) groups=0(root)
[root@mmx ~]# id mmx
uid=1002(mmx) gid=1003(mmx) groups=1003(mmx)

两个重要目录:app

  1. /etc/passwd(密码信息)tcp

    [root@mmx ~]# 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
    ……
    good:x:1001:1002::/home/good:/bin/bash
    mmx:x:1002:1003::/home/mmx:/bin/bash
  2. /etc/group(组信息)ide

    [root@mmx ~]# 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:
    ……
    apache:x:48:
    nice:x:1001:
    good:x:1002:
    mmx:x:1003:

(二)useradd命令

建立新的用户帐户 学习

语法格式:“useradd [参数] 用户名”

[root@mmx ~]# useradd nice
useradd: warning: the home directory already exists.
Not copying any file from skel directory into it.
Creating mailbox file: File exists
[root@mmx ~]# id nice
uid=1001(nice) gid=1001(nice) groups=1001(nice)
[root@mmx ~]#

(三)groupadd命令

建立新的用户组

语法格式:“groupadd [参数] 群组名”

[root@mmx ~]# useradd nice

(四)usermod 命令

用于修改用户的属性

语法格式:“ usermod [参数] 用户名”

参数 做用
-c 填写用户帐户的备注信息
-d -m 参数-m与参数-d连用,可从新指定用户的家目录并自动把旧的数据转移过去
-e 帐户的到期时间,格式为YYYY-MM-DD
-g 变动所属用户组
-G 变动扩展用户组
-L 锁定用户禁止其登陆系统
-U 解锁用户,容许其登陆系统
-s 变动默认终端
-u 修改用户的UID
# 用户组更改成root,拓展组更改成nice
[root@mmx ~]# usermod -g root -G happy nice
[root@mmx ~]# id nice
uid=1001(nice) gid=0(root) groups=0(root),1002(happy)

(五)passwd命令

修改用户的密码、过时时间等信息

语法格式:“ passwd [参数] 用户名”

参数 做用
-l 锁定用户,禁止其登陆
-u 解除锁定,容许用户登陆
--stdin 容许经过标准输入修改用户密码,如echo "NewPassWord" | passwd --stdin Username
-d 使该用户可用空密码登陆系统
-e 强制用户在下次登陆时修改密码
-S 显示用户的密码是否被锁定,以及密码所采用的加密算法名称

方式1:(传统)

[root@mmx ~]# passwd nice 
Changing password for user nice.
New password: 
BAD PASSWORD: The password is shorter than 8 characters
Retype new password: 
passwd: all authentication tokens updated successfully.

方式2:(不安全/快速)

[root@mmx ~]# clear
[root@mmx ~]# echo 123456 | passwd --stdin nice 
Changing password for user nice.
passwd: all authentication tokens updated successfully.

(六)userdel命令

删除已有的用户帐户

语法格式:“ userdel [参数] 用户名”

[root@mmx ~]# id nice
uid=1001(nice) gid=0(root) groups=0(root),1002(happy)
[root@mmx ~]# userdel nice 
userdel: group nice not removed because it is not the primary group of user nice.
[root@mmx ~]# id nice
id: ‘nice’: no such user
  1. 删除主目录
[root@mmx ~]# ls /home/
mmx  nice  workdir
[root@mmx ~]# rm -rf /home/nice
[root@mmx ~]# ls /home/
mmx  workdir
  1. 查看注册文件
    [root@mmx ~]# tail -n 5 /etc/passwd
    insights:x:978:976:Red Hat Insights:/var/lib/insights:/sbin/nologin
    avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
    tcpdump:x:72:72::/:/sbin/nologin
    apache:x:48:48:Apache:/usr/share/httpd:/sbin/nologin
    mmx:x:1000:1000::/home/mmx:/bin/bash

[root@mmx ~]# tail -n 5 /etc/passwd
insights:x:978:976:Red Hat Insights:/var/lib/insights:/sbin/nologin
avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
apache:x:48:48:Apache:/usr/share/httpd:/sbin/nologin
mmx:x:1000:1000::/home/mmx:/bin/bash
[root@mmx ~]# tail -n 5 /etc/group
tcpdump:x:72:
apache:x:48:
mmx:x:1000:
nice:x:1001:
happy:x:1002:

3. 删除相关注册文件

[root@mmx ~]# groupdel nice
[root@mmx ~]# groupdel happy
[root@mmx ~]# tail -n 5 /etc/group
avahi:x:70:
slocate:x:21:
tcpdump:x:72:
apache:x:48:
mmx:x:1000:

方式2:一步到位方式删除用户

[root@mmx ~]# id mmx
uid=1000(mmx) gid=1000(mmx) groups=1000(mmx)

[root@mmx ~]# ls -l /home/
total 4
drwx------. 15 mmx mmx 4096 Jul 4 20:37 mmx
drwxr-xr-x. 2 root root 6 Jun 27 22:00 workdir

[root@mmx ~]# userdel -rf mmx

[root@mmx ~]# id mmx
id: ‘mmx’: no such user

[root@mmx ~]# ls /home/
workdir

# 2、文件的权限

## (一)重要命令+重要路径

#### 一、chmod命令

>  chmod命令用于设置文件的通常权限及特殊权限 
>
>  语法格式为:“chmod [参数] 文件名”

[root@mmx Desktop]# echo mmx > super_mmx.txt
[root@mmx Desktop]# ls -l super_mmx.txt
-rw-r--r--. 1 root root 4 Jul 4 22:07 super_mmx.txt

[root@mmx Desktop]# chmod 700 super_mmx.txt

设置仅root可执行

[root@mmx Desktop]# ls -l super_mmx.txt
-rwx------. 1 root root 4 Jul 4 22:07 super_mmx.txt

#### 二、chown命令

>  chown命令用于设置文件的全部者和全部组 
>
>  语法格式为:“chown 全部者:全部组 文件名”

新建mmx用户

[root@mmx Desktop]# useradd mmx
[root@mmx Desktop]# usermod -g root mmx

将mmx用户全部组设置成root

[root@mmx Desktop]# id mmx
uid=1000(mmx) gid=0(root) groups=0(root)

更改super_mmx.txt全部者为mmx,所属组为root

[root@mmx Desktop]# chown mmx:root super_mmx.txt
[root@mmx Desktop]# ls -l super_mmx.txt
-rwx------. 1 mmx root 4 Jul 4 22:07 super_mmx.txt

#### 三、/etc/passwd文件解析

> root:`x`:0:0:root:/root:/bin/bash
> 用户名:/etc/shadow(密码存放路径):UID:GID:家目录:主目录

[root@mmx Desktop]# head -n 5 /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

## (二)标准权限

> 管理员   root    权限最大    限制最小
>
> 系统用户  独立运行特定服务
>
> 普通用户  平常工做可使用类型

***文件的读、写、执行权限英文全称分别是read、write、execute*** 

| 权限项   | 读r  | 写w  | 执行x | 合计 |
| -------- | ---- | ---- | ----- | ---- |
| 所属者   | 4    | 2    | 1     | 7    |
| 所属组   | 4    | 2    | 1     | 7    |
| 其余用户 | 4    | 2    | 1     | 7    |

#### 练习:设置文件夹755属性

> 全部者:可读可写可执行
>
> 所属组:可读可执行
>
> 其余用户:可读可执行

方式1:使用rwx方式

[root@mmx Desktop]# chmod +rwxr-xr-x nice
[root@mmx Desktop]# ls -al nice/
total 0
d-w-------. 3 root root 18 Jul 4 21:52 .
drwxr-xr-x. 3 root root 18 Jul 4 21:52 ..
drwxr-xr-x. 2 root root 6 Jul 4 21:52 good

方式2:使用数字法

清空全部权限

[root@mmx Desktop]# ls -l nice
total 0
d---------. 2 root root 6 Jul 4 21:52 good

使用数字法设置权限

[root@mmx Desktop]# chmod 755 nice -R
[root@mmx Desktop]# ls -l nice
total 0
drwxr-xr-x. 2 root root 6 Jul 4 21:52 good

## (三)特殊权限

> SUID、 SGID 、 SBIT
>
>  SUID是一种对二进制程序进行设置的特殊权限,可以让二进制程序的执行者临时拥有属主的权限(仅对拥有执行权限的二进制程序有效)
>
>  SGID特殊权限有两种应用场景,当对二进制程序进行设置时,可以让执行者临时获取到文件全部组的权限;而对目录进行设置时,则是让目录内新建立的文件自动继承该目录原有用户组的名称。 
>
>  SBIT特殊权限位可确保用户只能删除本身的文件,而不能删除其余用户的文件。 

> 特殊权限展现表SUID、 SGID 、 SBIT
>
> 注意:SUID=4,SGID=2,SBIT=1 

| 特殊权限 | 表示方式(x存在) | 表示方式(x不存在) |
| -------- | --------------- | ----------------- |
| SUID     | rwx → rws       | rw- → rwS         |
| SGID     | rwx→rws         | rw- → rws         |
| SBIT     | rwx→rwt         | rw-→rwT           |

> 设置权限参数表

| 参数 | 做用         |
| ---- | ------------ |
| u+s  | 设置SUID权限 |
| u-s  | 取消SUID权限 |
| g+s  | 设置SGID权限 |
| g-s  | 取消SGID权限 |
| o+t  | 设置SBIT权限 |
| o-t  | 取消SBIT权限 |

***新建目录mmx/good***

[root@mmx Desktop]# mkdir mmx/good -p

#### 一、SUID使用

方式1:使用权限参数(设置/取消)

[root@mmx Desktop]# chmod u+s -R mmx
[root@mmx Desktop]# ls -l mmx
total 0
drwsr-xr-x. 2 root root 6 Jul 4 22:34 good

#取消权限
[root@mmx Desktop]# chmod u-s -R mmx
[root@mmx Desktop]# ls -l mmx
total 0
drwxr-xr-x. 2 root root 6 Jul 4 22:34 good

方式2:数字法

[root@mmx Desktop]# chmod -R +4000 mmx
[root@mmx Desktop]# ll mmx/
total 0
drwsr-xr-x. 2 root root 6 Jul 4 22:34 good

#取消权限
[root@mmx Desktop]# ll mmx
total 0
drwxr-xr-x. 2 root root 6 Jul 4 22:34 good

#### 二、SGID使用
方式1:使用权限参数(设置/取消)

[root@mmx Desktop]# chmod g+s mmx -R
[root@mmx Desktop]# ll
total 0
drwxr-sr-x. 3 root root 18 Jul 4 22:34 mmx

#取消权限
[root@mmx Desktop]# chmod g-s mmx -R
[root@mmx Desktop]# ll
total 0
drwxr-xr-x. 3 root root 18 Jul 4 22:34 mmx

方式2:数字法

[root@mmx Desktop]# chmod 0000 mmx -R
[root@mmx Desktop]# ll
total 0
d---------. 3 root root 18 Jul 4 22:34 mmx

[root@mmx Desktop]# chmod 2701 mmx -R
[root@mmx Desktop]# ll
total 0
drwx--S--x. 3 root root 18 Jul 4 22:34 mmx

#### 三、SBIT使用
方式1:使用权限参数(设置/取消)

[root@mmx Desktop]# chmod o+t mmx -R
[root@mmx Desktop]# ll
total 0
d-----S--T. 3 root root 18 Jul 4 22:34 mmx

#取消权限
[root@mmx Desktop]# chmod o-t mmx -R
[root@mmx Desktop]# ll
total 0
d-----S---. 3 root root 18 Jul 4 22:34 mmx

方式2:数字法

[root@mmx Desktop]# chmod -R +4000 mmx
[root@mmx Desktop]# ll mmx/
total 0
drwsr-xr-x. 2 root root 6 Jul 4 22:34 good

[root@mmx Desktop]# chmod 1777 mmx -R
[root@mmx Desktop]# ll
total 0
drwxrwsrwt. 3 root root 18 Jul 4 22:34 mmx

#### 四、混合使用
方式1:使用权限参数(设置/取消)

[root@mmx Desktop]# ll
total 0
d---------. 3 root root 18 Jul 4 22:34 mmx

[root@mmx Desktop]# chmod u+s mmx -R
[root@mmx Desktop]# ll
total 0
d--S------. 3 root root 18 Jul 4 22:34 mmx
[root@mmx Desktop]# chmod g+s mmx -R
[root@mmx Desktop]# ll
total 0
d--S--S---. 3 root root 18 Jul 4 22:34 mmx
[root@mmx Desktop]# chmod o+t mmx -R
[root@mmx Desktop]# ll
total 0
d--S--S--T. 3 root root 18 Jul 4 22:34 mmx

> 这样引用会报错:chmod s+u+g+o mmx -R

[root@mmx Desktop]# chmod s+u+g+o mmx -R
chmod: invalid mode: ‘s+u+g+o’
Try 'chmod --help' for more information.

方式2:数字法

[root@mmx Desktop]# chmod 7777 mmx -R
[root@mmx Desktop]# ll
total 0
drwsrwsrwt. 3 root root 18 Jul 4 22:34 mmx

执行区域设置为0,所有大写展现

[root@mmx Desktop]# chmod 7666 -R mmx
[root@mmx Desktop]# ll
total 0
drwSrwSrwT. 3 root root 18 Jul 4 22:34 mmx

须要先减去特殊权限,在设置成0000才能将权限清空

[root@mmx Desktop]# chmod -7000 mmx -R
[root@mmx Desktop]# chmod 0000 mmx
[root@mmx Desktop]# ll
total 0
d---------. 3 root root 18 Jul 4 22:34 mmx

> 本节学习用户相关操做和文件的权限操做
>
> 一、用户:id、useradd、userdel、usermod、groupadd、groupdel……
>
> 二、权限:r可读,w可写,x可执行
>
> 三、SUID临时使用权
>
> 四、SGID临时得到全部组
>
> 五、SBIT仅仅文件建立可可删除
>
> 六、chmod和chown命令使用
相关文章
相关标签/搜索