11.23linux学习第八天

周六,是老刘讲课第八天了,5.2-5.6,

5.2 文件权限与归属

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

表5-5                                              文件权限的字符与数字表示

图5-1 通过ls命令查看到的文件属性信息

在图5-1中,包含了文件的类型、访问权限、所有者(属主)、所属组(属组)、占用的磁盘大小、修改时间和文件名称等信息。通过分析可知,该文件的类型为普通文件,所有者权限为可读、可写(rw-),所属组权限为可读(r--),除此以外的其他人也只有可读权限(r--),文件的磁盘占用大小是34298字节,最近一次的修改时间为4月2日的凌晨23分,文件的名称为install.log。

5.3 文件的特殊权限

1.  SUID

SUID是一种对二进制程序进行设置的特殊权限,可以让二进制程序的执行者临时拥有属主的权限(仅对拥有执行权限的二进制程序有效)。

2.  SGID

SGID主要实现如下两种功能:

让执行者临时拥有属组的权限(对拥有执行权限的二进制程序进行设置);

在某个目录中创建的文件自动继承该目录的用户组(只可以对目录进行设置)。

3.  SBIT

现在,大学里的很多老师都要求学生将作业上传到服务器的特定共享目录中,但总是有几个“破坏分子”喜欢删除其他同学的作业,这时就要设置SBIT(Sticky Bit)特殊权限位了(也可以称之为特殊权限位之粘滞位)。SBIT特殊权限位可确保用户只能删除自己的文件,而不能删除其他用户的文件。换句话说,当对某个目录设置了SBIT粘滞位权限后,那么该目录中的文件就只能被其所有者执行删除操作了。

5.4 文件的隐藏属性

Linux系统中的文件除了具备一般权限和特殊权限之外,还有一种隐藏权限,即被隐藏起来的权限,默认情况下不能直接被用户发觉。有用户曾经在生产环境和RHCE考试题目中碰到过明明权限充足但却无法删除某个文件的情况,或者仅能在日志文件中追加内容而不能修改或删除内容,这在一定程度上阻止了黑客篡改系统日志的图谋,因此这种“奇怪”的文件也保障了Linux系统的安全性。

1.  chattr命令

2.  lsattr命令

5.5 文件访问控制列表

不知道大家是否发现,前文讲解的一般权限、特殊权限、隐藏权限其实有一个共性—权限是针对某一类用户设置的。如果希望对某个指定的用户进行单独的权限控制,就需要用到文件的访问控制列表(ACL)了。通俗来讲,基于普通文件或目录设置ACL其实就是针对指定的用户或用户组设置文件或目录的操作权限。另外,如果针对某个目录设置了ACL,则目录中的文件会继承其ACL;若针对文件设置了ACL,则文件不再继承其所在目录的ACL。

1.  setfacl命令

setfacl命令用于管理文件的ACL规则,格式为“setfacl [参数] 文件名称”。文件的ACL提供的是在所有者、所属组、其他人的读/写/执行权限之外的特殊权限控制,使用setfacl命令可以针对单一用户或用户组、单一文件或目录来进行读/写/执行权限的控制。其中,针对目录文件需要使用-R递归参数;针对普通文件则使用-m参数;如果想要删除某个文件的ACL,则可以使用-b参数。

2.  getfacl命令

getfacl命令用于显示文件上设置的ACL信息,格式为“getfacl 文件名称”。Linux系统中的命令就是这么又可爱又好记。想要设置ACL,用的是setfacl命令;要想查看ACL,则用的是getfacl命令。下面使用getfacl命令显示在root管理员家目录上设置的所有ACL信息。

5.6 su命令与sudo服务

各位读者在实验环境中很少遇到安全问题,并且为了避免因权限因素导致配置服务失败,从而建议使用root管理员来学习本书,但是在生产环境中还是要对安全多一份敬畏之心,不要用root管理员去做所有事情。因为一旦执行了错误的命令,可能会直接导致系统崩溃,这样一来,不但客户指责、领导批评,没准奖金也会鸡飞蛋打。但转头一想,尽管Linux系统为了安全性考虑,使得许多系统命令和服务只能被root管理员来使用,但是这也让普通用户受到了更多的权限束缚,从而导致无法顺利完成特定的工作任务。

原文地址:https://www.cnblogs.com/herofox1982/p/11939271.html

时间: 2024-10-13 22:39:13

11.23linux学习第八天的相关文章

20145239 《信息安全系统设计基础》第11周学习总结

20145239 <信息安全系统设计基础>第11周学习总结 教材学习内容总结 8.1 异常 从处理器运行开始到结束,程序计数器假设一个序列的值a0a1......an-1,这个控制转义序列叫做处理器的控制流. 异常,就是控制流中的突变,用来响应处理器状态中的某些变化. 状态的变化称为事件,在任何情况下,当处理器检测到有事件发生时,会通过一张叫做异常表的跳转表,进行一个间接过程调用到专门处理程序--异常处理程序.当异常处理程序完成之后,根据引起引起异常的事件类型,会发生以下三种情况之一: 处理程

2016/11/23 学习总结

今天学了JDK中的常用类 Date和Calendar以前就用过,但今天再看还是跟第一次用一样.果然这些工具就要常用才行呢-- 老师让用MarkdownPad来作笔记,支持html,很溜啊,我是不是应该再过一遍HTML啊,全忘了... 摘抄了一些笔记-- 11/23学习笔记: JDK常用类 1. System类 7. DateFormate抽象类与SimpleDateFormate类 2. Runtime类 8. Calendar抽象类与GregorianCalenlar类 3. String类

2015.11.06 学习Ubuntu下常用命令

2015.11.06 学习Ubuntu下常用命令 1.关闭防火墙:ufw disable 2.开启防火墙:ufw enable 3.防火墙状态:ufw status 4.查看占用的端口:#lsof -i 5.查看某一个端口:#lsof -i:8080  或者是: #netstat -apn|grep 8080————接着:#ps -aux|grep 进程号 6.结束占用端口的进程:#killall 进程名 7.自己写一遍,记得牢!

201521123045 &lt;java程序设计&gt;第11周学习总结

201521123045 <java程序设计>第11周学习总结 1. 本周学习总结 2. 书面作业 2. 书面作业 Q1.1.互斥访问与同步访问完成题集4-4(互斥访问)与4-5(同步访问) import java.util.concurrent.locks.ReentrantLock; import java.util.concurrent.locks.Condition; class Account{ private int balance; private Lock lock = new

20145326蔡馨熠《信息安全系统设计基础》第11周学习总结

20145326蔡馨熠<信息安全系统设计基础>第11周学习总结 教材内容总结 异常控制流(ECF)发生在计算机系统的各个层次,是计算机系统中提供并发的基本机制.在硬件层,异常是由处理器中的事件触发的控制流中的突变.控制流传递给一个软件处理程序,该处理程序进行一些处理,然后返回控制给被中断的控制流. 有四种不同类型的异常:中断.故障.终止和陷阱.当一个外部旧设备,例如定时器芯片或者一个磁盘控制器,设置了处理器芯片上的中断引脚时(对于任意指令)中断会异步地发生控制返回到故障指令后面的那条指令. 一

20145317《信息安全系统设计基础》第11周学习总结1

20145317<信息安全系统设计基础>第11周学习总结1 8.2进程 一个独立的逻辑控制流:他提供一个假象,好像我们的额程序独占的使用处理器.一个私有的地址空间:他提供一个假象,好像我们独占的使用存储器系统.多个流一起执行被称为并发.一个进程和其他进程轮流进行的概念被称为多任务.一个进程执行执行他的控制流的一部分的每一段时间叫做时间片. 并发流:一个逻辑流的执行在时间上与另一个流重叠.并发:多个流并发地执行的一般现象.多任务:一个进程和其他进程轮流运行的概念.时间片:一个进程执行它的控制流的

2015.11.04 学习 Ubuntu下安装gocode

2015.11.04 学习 Ubuntu下安装gocode 1.go get github.com/nsf/gocode,如果不成功 2.网页http://github.com/nsf/gocode,下载包,然后解压,解压后的文件名为gocode-master,修改为gocode. 3.复制gocode文件夹到go的安装目录~/go/github.com/nsf/gocode,(没有的话自行创建) 4.然后命令行执行go install github.com/nsf/gocode.确保安装目录的

2015.11.02 学习 Ubuntu下安装gosublime插件及其配置

2015.11.02 学习 Ubuntu下安装gosublime插件及其配置 1.Ctrl+shift+P 打开package control 输入pcip 回车 2.出现的框中输入gosublime,回车 3.preferences---package setting--gosublime--setting default 打开后在env{}中添加GOROOT和GOPATH 4.保存后全部复制到preferences---package setting--gosublime--setting

九、Android学习第八天——广播机制与WIFI网络操作(转)

(转自:http://wenku.baidu.com/view/af39b3164431b90d6c85c72f.html) 九.Android学习第八天——广播机制与WIFI网络操作 今天熟悉了Android中的广播机制与WIFI网络的一些基本操作,总结如下: Android的广播机制 我们知道广播机制中,发送方不会关心接收方时候接收到数据或者如何去处理数据. 这里总结下Android中BroadcastReceiver的注册方法: (一)在应用程序中进行注册 (二)在Manifest.xml