用户与用户组权限

目录

用户与用户组权限

一、用户与用户组

组:

用户:

二、文件与文件夹权限


用户与用户组权限

在linux中root拥有最高的权限,所有文件或文件夹的权限设定对root都是无效的,所以在正式的生产环境和服务器中,尽量使用普通账号+人工权限设定方式,避免出现安全漏洞后被人以root权限利用系统,导致完全的彻底的安全问题,对于权限来说,无论是操作系统还是应用系统,首先需要具备零信任的意识,永远使用最小的权限操作,权限不够再多授予即可

一、用户与用户组

功能项命令实例作用
用户组cat /etc/group查看当前系统存在的用户组
groupadd testing添加一个新的用户组testing
cat /etc/group查看组是否被新增成功
groupmod -n test testing将testing重命名成test
groupdel test删除组test
groups root查看用户root所在的所有组
useradduseradd qiang新增一个用户qiang(默认时将新增一个对应的名为qiang的组)
cat /etc/passwd查看当前系统的用户信息
useradd -g test denny新增一个用户denny并将其加入test组
useradd -g test -G dev mary新增用户mary,其主组为test,并附加到组dev中
usermodusermod -g dev qiang将用户qiang换到dev组
usermod -G 502 qiang将用户qiang附加到gid为502的这个组
usermod -d /home/temp/mary将mary的主目录从/home/mary改为/home/temp/
userdeluserdel qiang删除用户qiang
userdel -f qiang强制删除用户qiang(即使该用户已经登录)
userdel -r qiang删除用户qiang并删除其主目录

自己创建的组的组号都是从1000开始的,1000以内的组号都是留给系统自己用的

根据该图创建用户和组

组:

image-20230915160826238

image-20230915160209893

用户:

image-20230915160908097

我们看看他们的uid和gid

image-20230915160929862

二、文件与文件夹权限

任意一个文件或文件夹,用 ls -l的命令可以显示其基本信息和权限信息

 drwxr-xr-x. 2 root root  6 9月  15 16:40 myfolder
 -rw-r--r--. 1 root root  5 9月  15 16:42 test.txt
 ​
  • 第一栏的10个字符,共分为4个部分

    • 第一个字母: - 代表普通文件, d 代表目录

    • 第2、3、4:代表当前文件或文件夹所属用户的(owner)权限,用 u 表示

    • 第5、6、7:代表当前文件或文件夹所属用户组(group)的权限,用 g 表示

    • 第8、9、10:代表其他用户组和其他用户(other)的权限,用 o 表示

  • 权限的表示方法:

    • r 读:也可以使用数字 4 来表示

    • w 写:也可以使用数字 2 来表示

    • x 执行:也可以使用数字 1 来表示

    • 任何一个数都可以使用2的多少次方互加来表示,就像任何一个数字都可以使用10的多少次方来表示

    • 用2的多少次方来表示的话,是不会有重复的

    • user有rwx的权限,即数字为7;rw权限,即数字为6;rx权限,数字为5;wx权限,数字为3

功能项命令实例作用
chmodchmod[权限] [文件或目录]
ls -l hello.txt
左边10位中的第一位代表文件类型d 代表目录 - 代表普通文件 l代表链接文件
左边10位中的后9位代表权限前3位代表文件所有者的权限(用u表示) 中间3位代表文件所在组的权限(用g表示) 后3位代表其他组的权限(用o表示)
权限rwx的意义权限 r 或数字 4 表示可读 权限 w 或数字 2 表示可写 权限 x 或数字 1 表示可执行
chmod u+x hello.txt为hello.txt文件所有者添加可执行权限
chmod u-w hello.txt为hello.txt文件所有者去除可执行权限
chmod g-r hello.txt为hello.txt文件所在组去除可读权限
chmod o+w hello.txt为hello.txt文件的所在组的其它组添加可写权限
chmod a+w hello.txt为所有三种角色添加可写权限
chmod a+wx hello.txt为所有三种角色添加可写可执行权限
chmod a-rwx hello.txt去除hello.txt的所有权限(此时仅root可编辑)
chmod 777 hello.txt将hello.txt的权限设为rwxrwxrwx
chmod 643 hello.txt将hello.txt的权限设为rw-r---wx
chmod 777 /opt/test/将目录/opt/test的权限更改为777
chmod -R 755 /opt/test将目录/opt/test及其下所有文件和子目录的权限更改为755
chownchown mary hello.txt将hello.txt的文件所有者改为mary
chown mary /opt/test将目录/opt/test的所有者改为mary
chown -R mary /opt/test将目录/opt/test及其所有子目录和文件的所有者改为mary
chgrpchgrp test hello.txt将hello.txt所在的组改为test
chgrp mary /opt/test将目录/opt/test所在的组改为mary
chgrp -R mary /opt/test将目录/opt/test及其所有子目录和文件所在的组改为mary
passwdpasswd mary修改mary的密码 /etc/shadow保存了所有用户的密码,默认只有root可以操作

image-20230915170956463

image-20230915173013622

那么此时,mary对1.txt有rw的权限,dev组中的成员对1.txt有r的权限,其他用户和组队1.txt有r的权限

我们可以使用 命令 su 来切换登录账户

image-20230915173645179

然后使用vi或cat等命令来测试

以上是通过更改文件所属用户和组来做到权限的更改那么对于权限的直接更改是如何做到的呢

我们可以适用 chmod 命令来操作

  • 减掉用户的 w 权限

image-20230915175128788

  • 减掉组的 r 权限

image-20230915175230208

当然,对于权限的使用我们可直接使用数字,这样可以直接对该文件的用户,组,其他用户和组三部分的权限一遍设置,更方便

  • 设置用户为rwx权限,组为rw权限,其它用户和组为r权限

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值