《Linux就该这么学》第七课

第5章 用户身份与文件权限

 

5.1 用户身份与能力

 

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

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

普通用户UID从1000开始:是由管理员创建的用于日常工作的用户。

 

1.useradd命令用于创建新的用户,格式为“useradd [选项] 用户名”。

2.groupadd命令用于创建用户组,格式为“groupadd [选项] 群组名”。

3.usermod命令用于修改用户的属性,格式为“usermod [选项] 用户名”。

4.passwd命令用于修改用户密码、过期时间、认证信息等,格式为“passwd [选项] [用户名]”。

5.userdel命令用于删除用户,格式为“userdel [选项] 用户名”。

5.2 文件权限与归属

文件的读、写、执行权限可以简写为rwx,亦可分别用数字4、2、1来表示,文件所有者,所属组及其他用户权限之间无关联,如表5-5所示。

 

 

5.3 文件的特殊权限

1.SUID——执行者临时获取命令的所有者的权限

查看passwd命令属性时发现所有者的权限由rwx变成了rws,其中x改变成s就意味着该文件被赋予了SUID权限。

如果原先权限位上没有x执行权限,那么被赋予特殊权限后将变成大写的S。

2.SGID——目录内新建文件所有组,继承原有目录所有组的名称

chmod命令——用来设置文件或目录的权限,格式为“chmod [参数] 权限 文件或目录名称”。

chown命令——设置文件或目录的所有者和所属组,其格式为“chown [参数] 所有者:所属组 文件或目录名称”。

chmod和chown命令是用于修改文件属性和权限的最常用命令,它们还有一个特别的共性,就是针对目录进行操作时需要加上大写参数-R来表示递归操作,即对目录内所有的文件进行整体操作。

3.SBIT——特殊权限位可确保用户只能删除自己的文件,而不能删除其他用户的文件。(粘滞位、保护位  o+t)

当目录被设置SBIT特殊权限位后,文件的其他人权限部分的x执行权限就会被替换成t或者T,原本有x执行权限则会写成t,原本没有x执行权限则会被写成T。

 

5.4 文件的隐藏属性

1.chattr命令用于设置文件的隐藏权限,格式为“chattr [参数] 文件”。

2.lsattr命令用于显示文件的隐藏权限,格式为“lsattr [参数] 文件”。

 

5.5 文件访问控制列表

1.setfacl命令用于管理文件的ACL规则,格式为“setfacl [参数] 文件名称”。

2.getfacl命令用于显示文件上设置的ACL信息,格式为“getfacl 文件名称”。

想要设置ACL,用的是setfacl命令;要想查看ACL,则用的是getfacl命令。

 

5.6 su命令与sudo服务

1.su命令可以解决切换用户身份的需求,使得当前用户在不退出登录的情况下,顺畅地切换到其他用户

su命令与用户名之间有一个减号(-),这意味着完全切换到新的用户,即把环境变量信息也变更为新用户的相应信息,而不是保留原始的信息。

2.sudo命令用于给普通用户提供额外的权限来完成原本root管理员才能完成的任务,格式为“sudo [参数] 命令名称”。

 

posted @ 2020-05-16 22:58  牛奶咖啡忘了牵手  阅读(112)  评论(0编辑  收藏  举报