0
点赞
收藏
分享

微信扫一扫

linux用户身份与文件权限

天涯学馆 2022-04-22 阅读 75
linux

linux用户身份与文件权限

一、用户身份

在linux系统中,UID就像我们的身份证一样具有唯一性。
管理员UID为0:系统的管理员用户root
系统用户UID为1~999:linux为了避免因某个服务程序出现漏洞而被黑客提权至整台服务器,默认服务程序会由独立的系统用户负责运行,进而有效控制被破坏范围。
普通用户UID从1000开始:由管理员创建的用于日常工作的用户。

为了方便管理属于同一组的用户,linux引入用户组的概念。创建每一个用户时,将自动创建一个与其同名的基本用户组。如果该用户被归纳到其他用户组,则这个其他用户组称之为扩展用户组一个用户只有一个基本用户组,可以有多个扩展用户组。

1、id

用于显示用户的详细信息,可以显示用户的UID、基本组GID、扩展组GID

#格式
id 用户名
[root@linuxprobe ~]# id linuxprobe
uid=1000(linuxprobe) gid=1000(linuxprobe) groups=1000(linuxprobe)

2、useradd

用于创建新的用户账户

#格式
useradd [ 参数] 用户名

使用该命令创建新用户时,默认的用户家目录被存放在/home中,,默认的shell解释器是/bin/bash,而且会创建一个同名的用户组。

参数作用
-d指定用户的家目录
-e账户的到期时间
-u指定用户的UID
-g指定一个初始的用户基本组(已存在)
-G指定一个或多个扩展用户组
-N不创建与用户同名的基本用户组
-s指定用户的shell解释器

3、groupadd

用于创建新的用户组,高效的指派各用户的权限

#格式
groupadd [参数] 群组名

4、usermod

用于修改用户的属性

#格式
usermod [参数] 用户名
参数作用
-c填写用户账户的备注信息
-d -m参数-m与参数-d连用,可重新指定用户的家目录并自动把旧的数据转移过去
-e账户的到期时间,格式为YYYY-MM-DD
-g变更所属用户组
-G变更扩展用户组
-L锁定用户禁止其登录系统
-U解锁用户,允许其登录系统
-s变更默认终端
-u修改用户的UID

将用户默认终端设置成/sbin/nologin后,用户马上就不能登录了。

5、passwd

用于修改用户的名称、过期时间等信息

#格式
passwd [参数] 用户名
参数作用
-l锁定用户,禁止其登录
-u解除锁定,允许用户登录
–stdin允许通过标准输入修改用户密码,如echo “NewPassWord”
-d使该用户可用空密码登录系统
-e强制用户在下次登录时修改密码
-S显示用户的密码是否被锁定,以及密码所采用的加密算法名称

6、userdel

用于删除已有的用户账户

#格式
userdel [参数] 用户名
参数作用
-f强制删除用户
-r同时删除用户及用户家目录

二、文件权限与归属

在Linux系统中,每个文件都有归属的所有者和所属组,且规定了文件的所有者、所属组以及其他人对文件所拥有的可读(r)、可写(w)、可执行(x)等权限。
在这里插入图片描述文件的可读、可写、可执行权限的英文全称分别是read、write、execute,可以简写为r、w、x,亦可分别用数字4、2、1来表示,文件所有者、文件所属组及其他用户权限之间无关联
在这里插入图片描述
在这里插入图片描述
上图包含了文件的类型、访问权限、所有者(属主)、所属组(属组)、占用的磁盘大小、最后修改时间和文件名称等信息。通过分析可知,该文件的类型为普通文件,所有者权限为可读、可写(rw-),所属组权限为可读(r–),除此以外的其他人也只有可读权限(r–),文件的磁盘占用大小是34298字节,最近一次的修改时间为4月2日的0:23,文件的名称install.log。

常见的文件类型包括普通文件(-)、目录文件(d)、链接文件(l)、管道文件(p)、块设备文件(b)以及字符设备文件(c)。普通文件的范围特别广泛,比如纯文本信息、服务配置信息、日志信息以及Shell脚本等,都属于普通文件。块设备文件(b)和字符设备文件(c)一般是指硬件设备,比如鼠标、键盘、光驱、硬盘等,在/dev/目录中最为常见。

三、文件的特殊权限

1、SUID

能够让二进制程序的执行者临时拥有所有者的权限(仅对拥有执行权限的二进制程序有效)。
所有者权限由x变成s,如果原来没有执行权限x,则会变成S

2、SGID

有两种应用场景:
对二进制程序进行设置时,能够让执行者临时拥有文件所属组的权限;
对目录进行设置时,让目录新建的文件自动继承该目录原有用户组的名称

3、SBIT

当目录设置了SBIT粘滞位权限后,目录中的文件只能被所有者执行删除操作。文件的其他用户权限部分的x执行权限别提换成t,如果原来没有x,则会变成T。

其实SUID、SGID、SBTT也有对应的数字表示法,分别对应为4、2、1,也就是最大权限为7777,第一位数字为特殊权限位。

4、chmod

用于设置文件的一般权限及特殊权限

#格式
chmod [参数] 文件名

使用chmod命令设置特殊权限的参数如下所示

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

5、chown

设置文件的所有者和所有组

#格式
chown 所有者:所有组 文件名

chomd、chown两个命令加-R表示递归操作,即对该目录下的所有文件进行整体操作。

四、文件的隐藏属性

为了阻止篡改系统日志,保障系统安全性,linux中有一种隐藏权限。

1、chattr

用于设置文件的隐藏权限

#格式
chattr [参数] 文件名称

参数如下
在这里插入图片描述

2、lsattr

用于查看文件的隐藏权限

#格式
lsattr [参数] 文件名称
举报

相关推荐

0 条评论