一天入门STM32
一天入门STM32 pdfC秉火《零死角玩转STM32》一F1系列时钟源To T钟电路FR和RAMROM定时/计数5系统总线又CPU并行Io口串行Io口中断系统P0p1P2 P3 TXD RXD I。I:图151系统结构框图我们说的51一般是指51系列的单片机,型号有很多,常见的有STC89C51、AT89S51,其中国内用的最多的是STC89C51/2,下面我们就以STC89C51来讲解,并以51简称。内核51由一个IP核和片上外设组成,IP核就是上图中的CPU,片上外设就是上图中的:时钟电路、SFR和RAM、ROM、定时/计数器、并行IO口、串行IO口、中断系统。IP核跟外设之间由系统总线连接,且是8bit的,速度有限51内核是上个世纪70年代 intel公司设计的,速度只有12M,外设是IC丿商(STC)在内核的基础上添加的,不同的IC厂商会在内核上添加不同的外设,从而设计出各具特色的单片机。这里 intel属于PP核厂商,STC属于IC厂商。我们后面要讲的STM32世样,ARM属于P核厂商,ARM给ST授权,ST公司在 Cortex-M3内核的基础上设计出STM32单片机。外设我们在学习51的时候,关于内核部分接触的比较少,使用的最多的是片上外设,我们在编程的时候操作的也就是这些外设。第3页共53页C秉火《零死角玩转STM32》一F1系列编程的时候操作的寄存器位于SFR和RAM这个部分,其中SFR(特殊功能寄存器)占有128字节(实际上只用了26个字节,只有26个寄存器,其他都属于保留区),RAM占有128字节,我们在程序中定义的变量就是放在RAM中。其中SFR和RAM在地址上是重合的,都是在80-FF这个地址区间,但在物理区间上是分开的,所以51的RAM是有256个字节编写好的程序是烧写到ROM区。剩下的外设都是我们非常熟悉的IO口,串∏、定时器、中断这几个外设STM32系统结构STM32系统结构框图接PashDCodeCortexM3SystemSFAMDMATDMAFSMCSDIO通道1套通道2AHB系线线桥接2桥接1APB 1APB2复位和时钟通道7控制DC2PIOD PWR SP1129DMA请求ADCsGFIOE BKPUSART1 GPioF bxCAN WDGSPlGPOG USETIM1RICExTIt2C2TIM2DMA212C1TIEUARTS TIM5GPc日UART& TIM4AHTa通道1USaRT TIM2通通通5AA请求图2STM32系统结构框图内核在系统结构上,STM32和51都属于单片机,都是由内核和片上外设组成。只是STM32使用的 Cortex-M3内核比51复杂得多,优秀得多,支持的外设也比51多得多,同时总线宽度也上升到32bit,无论速度、功耗、外设都强与51。第4页共53页C秉火《零死角玩转STM32》一F1系列从结构框图上看,对比5内核只有一种总线,取指和取数共用。 Cortex-M3内部有若干个总线接∏,以使CM3能同时取址和访内(访问内存),它们是:指令存储区总线(两条)、系统总线、私有外设总线。有两条代码存储区总线负责对代码存储区(即 FLASH外设)的访问,分别是 I-Code总线和 D-Code总线。I-Code用于取指, D-Code用于查表等操作,它们按最佳执行速度进行优化。系统总线( System)用J访问内存和外设,覆盖的区域包括SRAM,片上外设,片外RAM,片夕扩展设备,以及系统级存储区的部分空间。私有外设总线负责一部分私有外设的访问,主要就是访问调试组件。它们也在系统级存储区。还有一个MDA总线,从字面上看,DMA是 data memory access的意思,是一种连接内核和外设的桥梁,它可以访问外设、内存,传输不受CPU的控制,并且是双向通信。简而言之,这个家伙就是一个速度很快的且不受老大控制的数据般运工,这个在51里面是没有的外设从结构框图上看,STM32比51的外设多得多,51有的串口、定时器、O口等外设STM32都有。STM32还多了很多特色外设:如FSMC、SDIO、SPI、2C等,这些外设按照速度的不同,分别挂载到AHB、APB2、APB1这三条总线上。小结从内核和外设这两大方面米比较,SIM32之于51就是一个升级版的单片机。它适应市场,引流淛流,在中低端的微控制器中流光溢彩。12学习方法的区别学习51用寄存器,学习STM32用库。以前我们在学习51的时候,用的是寄存器编程的方法,想要实现什么效果,直接往寄存器里面赋值,优点是直观,简单粗暴,知道自己具体干了啥,心里踏实直接操作寄存器之所以在51上可行,究其原因,我想有两点:1、51主频不高,资源有限,必须注重程序执行的效率,只能直接操作寄存器。关键的地方还得用汇编,不适合用同件库。第5页共53页C秉火《零死角玩转STM32》一F1系列要知道当初我们学习51单片机的时候用的还是汇编,连现在的C编程都不是,就更别说什么斥函数编程2、51功能简单,寄存器不多。以国内普及最广的STC89C52为例,寄存器仝部加起来不到30个。按照功能区分来记的话,可以把每个寄存器背的滚瓜烂熟,并且寄存器每一位的功能都可以记得住,在编程的时候做到了然于胸。现在从51过度到STM32的学习,很多人还是喜欢沿用51的学习方法。接受不了库,在学习库的时候陷入迷糊之中,来回几个月下来,都不知道到底有没学会STM32,因为在这一路的学习中都是在调用库函数,压根就没有操作过寄存器,心里面很不踏实。其实大家在调用库函数的时候心中难道就没有疑问,库的底层是怎么实现的?难道就没有勇气对庥的底层探究竟。可最后当我们丌始跟踪斥函数底层的时候,看到·堆的宏定义、结构体、指针、各种的文件包含,而且注释全部都是荚文的,是不是乂心生忌惮。鉴于此,我想用两个原因来总结下很多初学者畏惧库不愿意用库的原因。1、C语言知识点的欠缺库在实现寄存器映像时使用的宏定义,强制类型转换,在定义寄存器时使用的结构体,在外设初始化函数时使用的指针,在组织头文件时使用的条件编译等C语言知识,在大学课程中很少涉及,大多数老师也基本是不讲。在一些简单的51单片机编程中又很少会用到这些知识。学单片机,做嵌入式开发其实80%的工作都跟C语言编程相关,剩下的20%的匚作就是阅读各种数据手册,熟悉各和硬件外设。所以掌握这些基本的C语言知识,是嵌入式学习中一道迈不过去的坎,STM32的库则给」我们一次提升C的机会凡是可以从书本中找到的,相信我们基本都可以学会,很多初学者并不是不够聪明或者勤奋,只是缺少方向性的指导罢了。对于这欠缺的知识点我们稍微花点时间就可以掌握,剩下的就是不断地实践词试。这里我为大家推荐·本C语言的书籍《C和指针》。2、程序架构设计思想的欠缺这个比较难搞,很多C语言学习得挺好好的人,也比较难掌握。还好我们遇到了SIM32的库,这给了我们一个学习和提升C语言绝佳的机会。库的整个架构是如何搭建起来的,代码上是如何如何一步一步写出来的:从寄存器映像开始,到寄存器的封装,然后到函数的编写,到每个外设函数对应的驱动文件,这里面涉及到了大量的条件编译,文件包含的思想,对应刚写过几行51单片机的初学者来说简直就是噩梦。但是,如果你把这系列的关系弄明自了,那么对库的整个架构也了解的差不多了,以后你就不用嚷嚷着说要操作奇存器了。如果你一开始不喜欢用库,对库开发很忌惮,那么请自问:是不是我的C语学得不够好。库是一种全新的学习方法,是一种河流,我更把它看做是与C语言的又一次历练和提升。是否用库,只差你一个闪亮的回眸第6页共53页C秉火《零死角玩转STM32》一F1系列1.3用寄存器点亮LED为了顺利过渡到库开发,在STM32编程的开始,我们对照51点亮一个LED的方法,给大家演示一下STM32如何用操作寄存器的方法点亮一个IFD,然后再慢慢讲解到底什么是库,让大家知道库跟寄存器的关系1.3.1用51点亮一个LED在用STM32点亮一个LED之前,我们先来复习下用5如何点亮一个LED。硬件上我们假设51单片札的P0口的第0位接了一个LED,负逻辑亮。如果我们要点亮这个LED,代码上我们会这么写1P0=0XFF;//总线操作点亮FD这时侯我们就把LED点亮了,如果要关掉LED,则是:1P0=0xFF;//总线操作关闭二ED这里面我们用的是总线操作的方法,即是对P0口的8个1O同时操作,但起作用的只是P0^0除了这种总线操作的方法,我们还学习过位操作,利用51编译器的关键字sbit,我们可以定义个位变量1sbit工E0^0那么LED=0;就点亮了LED,LED=1;就关闭了LED。为了让程序看起来见名知义,我们定义两个宏:1 #define on 02 define OfF 1点亮和关闭LED的代码就变成了:1 LED//位操作点亮IED2 LED= OFF//位操作关闭LD稍微整理下代码,整体的效果就是:1//假设51单片机的P0~0口接TFD,负逻辑点亮3 #define ON 04 definc Ofe 16 sbit lEd poo8 void main(void)第7页共53页C秉火《零死角玩转STM32》一F1系列9{10PO OXFE;/总线操作点亮0=0XE彐//总线操作关闭LED13工ED=ON;//位操作点亮LED14LED=OF彐;/位操作关闭LED15」上血总线和位操作的的方法,学过51的朋友是非常熟悉的,也很容易理解。那么我们再说一下大家容易忽略的几个知识点。什么是寄存器在点亮LED的时候,我们都是用操作寄存器的方法来实现的,那大家是否想过,这个寄存器到底是什么?为什么我们可以直接操作P0口?解答上面的问题之前,我们先简单介绍下51单片机的主要组成部分,这对我们学习其他单片机也有好处。我们以国内的STC89C51为例,该单片机主要由51内核、外设IP、和总线这三人部分组成。内核是由 Intel公司生产的,外设P就是STC公司在内核的基础上添加的诸如定时器、串口、IO凵等这些东西,总线就是用米连接內核和外设的接凵单元。 Intel在这里属于IP核设计公司,STC属」I设计公司。世界上能设计IP核的公司屈指可数。我们非常熟悉的ARM公司就属于IP核设计公司,ARM给其他公司授权,其他IC公司就在ARM内核上设计出各具特色的MCU,我们后面要学习的STM32就是属于一中基于ARM内核的MCU。寄存器则是内置于各个IP外设中,是一种用于配置外设功能的存储器,就是一种内存,并且有想对应的地址。学过C语言我们就知道,要操作这些内存就可以使用C语言中的指针,通过寻址的方式来操作这些具有特殊功能的内存一寄存器。比如P0口对应的地址是0X80,那么我们要修改0X80这个地址对应的内存的内容的话,按照常理可以这样操作1*(+0X80)=0XEE;点亮LED可当我们编译的吋候,编译器会报错,在51里面只能通过SFR和SBIT这两个关键字来实现寄存器映像,不能直接操作寄存器对应的地址,这是51相较于STM32不同的地万51单片机的这些寄存器位于地址80H~HFH中,对应着128个地址,但不是每个地址都是有效的,51系列的单片机有21个,52系列的则有26个,其他的都是保留区第8页共53页C秉火《零死角玩转STM32》一F1系列表2AT89c52SFR映象及复位状态OFBDEFHDFOHo00000DFTHOE8H0D000000DETH00000003DOTHOC8H0000000)XXXXXXODDCFHx00000037HEDAFH0粪0H11111111DATHSCON98H00000002SBUF9FHP1111111197HTCON88H0000000)TMODTLOTL100000000000000000000000000000000000BFHSPDPHPCON80H1DPLco111OXXX0000图351寄存器映射2.寄存器映射实际上我们在编程的吋侯并不是通过指针来操作奇存器的,而是直接给PO、Pl这些端口寄存器赋值。那么这些外设资源是如何与地址建立一一对应的关系(寄存器映射定义),这得益与51特有的两个关键字:SFR和sbit,其但单片机没有,只能用其他的方式来实现寄存器映射。这两个关健字帮我们实现了所有寄存器的定义,所以我们才可以像操作普通变量一个米操作寄存器。其实我们一开始提到的点亮LED的代码,全貌应该是这样的:1 sfr pocx80;//寄存器定义2P0=0ⅩFE;/总线操作点亮LED为了方便起见,我们可以扣奇存器映射全部写好封装在个头文件里面,不用每用个寄存器就定义一次。其实这方面的工作不用我们做,我们在编程的时候都会在开始的地方添加一个头文件1 include 第9页共53页C秉火《零死角玩转STM32》一F1系列这个头文件已经实现了全部寄存器的定义,该文件是kei自带,在安装目录:KeiC5IINC可以找到。这个文件实现了字节寄存器和位寄存器的定义2 REG514 Header file for generic 80C51 and 80C31 microcontroller5 Copyright (c)-988-2002 Keil ELektronik GIbH and Kei- Software, Inc6 All rights reserved.9 +ifdef REG5- H10#define RFG5. H1112/* BYTF, Reci ster *13sfr0=x80;1456PEE2×90sfrCaO;13BO17 sfr PSWRDO18 sfr AccCeO:901strBsExFO;12222x8-;3 sIr PCoN24 sr icon Cx8825 sfr TMOD Cx89:sfr TloxiA2222367890sfr TCx8Bfr TCx8Cifr Ti18D831 sfr t2×B832 sfr sLHHEPCB9833 sfr sbuf993436/* BIT Register37/+PSW*/38 sbit CYOxD39 sbit ACOxD640 sbit Fo41 sbit rs0xD4;43 sbit ov44 sbit P=0×D0;4546/*TCON*/47 sbit TF0x8F;48 sbit TR0x8E;49 sbit TFo0x8D:50 sbit mro0x8C51 sbit IE-= 0x8B;53 sbit Ieo0x894 shit tto08856/+IE57 sbit eA0×AF58 sbit fs0×AC59 sbit er0×AB;60 sbit EX0×AA61 sbit ero0x90×A8第10页共53页
- 2020-12-08下载
- 积分:1
SELinux详解(带完整中文标签)
SELinux详解(带完整中文标签),不错的介绍selinux的文档第5章:"类型增强策略ˆε在这·章中,我们描述了所有核心策咯语言规则和编写类型增强策略的指令。类型增强是 SELinux最重要的访问控制特性,第6章:"角色和用户"。在这一章中,我们描述」 seLinux基于角色的访问控制杋制,以及策略语言中的角色和用户如何支持类型增强策。第7章:"约東″。在这一章中,我们描述∫ sELinux策略语言的约束特性,即在支持强制策咯类型的策咯内提供约束。第8章:"多级安仝"。在这一章中,我们描述了除核心强制访问控制之外的,允许非强制的多级安全访问控制的策咯语言特性。第9章:"条件策略″。在这一章中,我们描述了策眳语言旳増强,使我们可以在类型增强策略中应用布尔表达式,布尔表达式的值在生产系统上,在运行过程中可以被改变第10章:"对象标记″。在这一章中,我们结束了对簧略语言的描述,同时描述了如何标记对象,以及如何在 seLinux增强的访问控制支持下管理那些标记第三部分:"创建和编写 seLinux安仝策略"。在这最后一部分中,我们向你展示如何使用策略语言,同时描写了建立安仝策略的方法,以及如何管理一个 SELinux系统和调试SELinuX策略模块。第11章:"最早的样例箦略″。在这一章中,我们描述了样例篑略,它是一个创建 sELinuX箎略的方法(源文件,构建工具和示范等),自从美国国家安全局(NSA)释放出最初的样例策略以来,已经经过多年的发展和改进。第12章:ˆ参考策略″。在这一章中,我们描述了一个新的创建 seLinuX策略的方法,它提供了所有样例策略的特性。最近发布的 Fedora core5就是使用参考策略作为它的策略基础的。第13章:"管理 SELinux系统"。在这一章中,我们描述了 SELinux如何影响 Linux系统的管理的。第14章:"编写策略模块"。在这最后一章中,我们利用在木书中学到的所有知识总结成一个向导式的指南,指导如何为样例策略和参考策略编写策略模块。附录。木书结尾包括了儿个附加的参考资料的附录附录A:"获取 SELinⅹ样例策略″。提供了关于如何获取本书中描述过的样例策略源文件的说明。附录B:"参与和额外信息"。列出了关于 seLinux的额外信息源,以及如何参与 seLinux的开发。附录C:"对象类参考"。提供了个详绀的关于 SELinux内核对象类和关联的许可的字典附录D:" seLinux命令和实用程序″。提供」一些实用程序和第三方工只,帮助开发SELinuX策略和管理 SELinux系统。如何使用这本书很少有人翻来覆去地阅读一本技术书籍。大多数人都只想理解某个特定的知识点或开始探索一下新技术。尽管反复阅读确实是可取的,这里我们也给出一和备选的方法。透彻阅读并理解第一部分的内容(第1-3章)。这一部分提供了必要的背景知识和概念,对深入理解 SELinux是很有帮助的。特别要仔细阅读和理解第2章。你可能想撇去第二部分(第4-10章)的内容,这一部分主要讲解了 seLinux策略语言。对大多数人而言,这一部分的内容确实显得太深入了,特别是对于初次接触 SELinux的人更是如此。因此,你可以跳过第4章和第10章,但要仔细阅读第5章。这些章节覆盖了几乎所有 seLinux策略语言元紊,在编写策略时就会使用到。最后,阅读第三部分的所有章节(第11-14章),描述了你感兴趣的问题。阅读这些章节时使用第二部分作参考。侧边栏,注意,警告和提示贯穿本书,我们广泛使用了侧边栏和注解以提供附加的信息或强调某个项目,也包括了大量的警告和提示。下面是它们在本书中的约定。侧边栏:我们使用侧边栏主要出于两个目的。首先,使用它描述在章节主体内容中没有直接涉及到附加信息。例如:我们使用侧边栏列出不同 SeLinux版本之间的差异或深入描述读者感兴趣的某个特定的概念。在第二部分中,我们使用侧边栏来描述所有 seLinux策略语言语句的完整语法。这些语法侧边栏为大量策略语言元素提供了快速参考注意:我们伩用注意为某个特定知识点提供了附加的强调。通常注意是非常短的附加说明警告:警告与注意的使用类似,只是它更着重强调或指出需要额外小心提示:为如何执行一个给定的功能提供快速提示和建议,或使某事交得容易的技巧。排版约定所有技术书籍都必须使用某种排版约定,以便于与读者更好地沟通。我们使用斜体宁表示定义概念时的一个关键概念(通常是首次使用时定义),同时也使用斜体字表示强调。对于着重强调的地方,我们使用粗体字对所有 SELinux策略语言元素( allow),用户命令(ps,ls)或你输入的内谷或你在电脑显示屏上看到的内容使用固定宽度的字体。对于显小命令及其输出的长清单,我们使用 Bourne shell标准提小符#( root shell)和$(普通用户shel1)。用户输入使用粗体加固定宽度字体。例如:Is -lz /etc/selinux/W---yroct rcotsystem u: object_r: selinux_config_tconfig彐rwxr-xr-roctrcotsystem u: object r: selinux con=ig tstrictdrwxr-xr-xroct rcotsystcm u: object r: selinux con=ig ttargeted谈论到斥函数或系统调用时,我们约定使用·对空括号,如 execve(,对策略带有参数的宏也使用这个约定,如 domain auto trans(。当参考Linx命令或函数的帮助手册时,对命令或函数使用斜体字,并用括弧将手册小节括起来。如make(1), execve(2)。从哪里获取 SELinuxSELinux在多个 Linux发行版中受到支持,包括 Red Hat Enterprise linux, Red hatFedora core, Gentoo和 Debian。 Fedora core已经成为 SELinux社区测试和集成大部分创新技术的主要平台。 Red Hat Enterprise linux版本4(RHEL4)是第一个完全支持 SeLinux的大型商业发行版。我们在本书中描述的所有内容都与RHEL4和其他发行版有关。我们选择 Fedora core4(FC4)作为本书的基础,它是REI4之后释放出来的一个 FedoraCore版本。我们描述的所有内容都可以在FCA系统上重现。在我们花了八个月编写此书期间,FC4在不断发展、测试、发布。当我们写完此书时 Fedora Core5(FC5)刚刚发布。FC5集成了许多 SELinux新的特性,FC5的特性可能暗示了RIEL5将会更新的内容。实际上,我们在本书中标注了FC4中没有FC5中的新特性和功能。同样,我们也标了FC4中有但RHEL4中没有的特性如果你是一个企业用户或开发人员,你很可能正在使用RHE4或计划使用RHEL5。目前我们使用RHEL4开发我们的个业应用产品。如果你是一名 seLinux的开发人员或早期使用者,你可能正在使用某 Fedora ceυre版木或某些其他发行版。无论你是哪种情况,木书都将会向你提供大量的关于如何使用 SELinuX和开发 SELinux策略的信息。如何取得本书中的样例策略贯穿本书,我们给出了大量的 SElinux策略样例。这些样例基于 Red hat发布 FedoraCore4附带的 strict策略。我们在第1l章详细地介绍了这个策略。C4默认使用的是 target策略,而不是 strict策略,因此你必须用更多的步骤来获得我们样例使用的基础策略。在第三部分中,我们扩大了视野,涵盖了其但类型的策略。在附录A中,我们提供了如何获得本书使用到的样例策略源文件的说明。目录第一部分: SELinux摘要1第1章.背景11.1.软件失效的必然性11.2.操作系统访问控制安全的进展22.1.引用监视程序原理21.2.2.任意访问控制的问题31.2.3.强制访问控制的起源31.2.4.更好的强制访问控制41.2.5. sELinux的发展51.3.小结6练习6第2章:概念12.1.类型强制的安全上下文12.1.1.对比 SELinux和标准 Linux22.1.2.安全上下文22.2.类型强制访问控制32.2.1.类型强制示例42.2.2.域转变的问题52.2.3.标准 Linux安全中的 setuid程序62.2.4.域转变72.2.5.默认域转变: type transition指令2.3.角色92.4. SELinux中的多层安全102.5.精通 SELinux特性112.5.1.重游 passwd示例122.5.2精读策略文件122.6.小结13练习14第3章.架构13.1.内核架构13.1.1.LSM框架13.1.2. SELinuX LSM模块23.2.用户空间客体管理器43.2.1.用户空间客体管理器的内核支持43.2.2.策略服务器架构53.3. SELinux策略语言63.3.1.本地 SELinux策略语言编译器63.3.2.单个策略中的源策咯模块83.3.3.载入式策略模块83.3.4.构建和安装单策略83.4.小结10练习10第部分: SELinux策略语言1第4章.客体类别和许可14.1. seLinux中客体类别的用途14.2.在 SELinux策略中定义客体类别24.2.1.声明客体类别24.2.2.声明并连接客体类别许可34.3.有效的客体类别54.3.1.与文件相关的客体类别54.3.2.与网终有关的客体类别74.3.3. system V IPC客体类别84.3.4.其它杂类客体类别84.4.客体类别许可示例94.4.1.文件客体类别许可94.4.2.进程客体类别许可115.使用Apol研究客体类别144.6.小结16练习16第5章-类型强制15.1.类型强制15.2.类型、属性和别名25.2.1.类型声明25.2.2.类型和属性35.2.3.关联类型和属性45.2.4.别名55.3.访问向量规则65.3.1.通用AV规则语法75.3.2.允许( allow)规则115.3.3审核( audit)规则1l5.3.4. neverallow规则135.4.类型规则145.4.1.通用类型规则语法155.4.2类型转换规则165.4.3.类型改变规则185.5.用Apol研究类型强制规则195.6.小结21练习22第6章.角色和用户16.1. SELinux中基于角色的访问控制16.1.1. SELinux中RBAC概述26.1.2.用角色管理用户权限36.1.3.客体安全上下文中的用户和角色46.2.角色和角色语句46.2.1.角色声明语句46.2.2.角色a11w规则56.2.3.角色转换规则56.2.4.角色控制语句66.3.用户和用户语句76.3.1.声明用户及其关联的角色76.3.2.将 Linux用户映射到 SELinuX用户86.4.用Apol分析角色和用户86.5.小结10练习11第7章.约東17.1.近距离查看访问决定算法7.2.约束语句27.3.标记转换约束57.4.小结8练习8第8章.多层安全8.1.多层安全约束8.2.开启了MLS后的安全上下文18.2.1.安全级别定义28.2.2MLS对安全上下文的扩展48.3.MS约束58.3.1. mlsconstrain语句58.3.2. mlsvalidatetrans语句88.4.MS的其它作用108.5.小结11练习11第9章.条件策略19.1.条件策略概述19.2.布尔变量29.2.1.布尔变量定义29.2.2.在运行系统中关联布尔变量29.2.3.对布尔值的永久性改变9.3.条件语句69.3.1.条件表达式和规则列表69.3.2.条件语句限制99.3.2.1.支持的语句99.3.2.2.嵌套条件话句109.4.使用Apol检查布尔和条件策略109.5.小结14练习14第10章.客体标记110.1.客体标记简介110.2.与文件有关的客体标记210.2.1.扩展属性的文件系统( fs use xattr)410.2.1.1.扩展属性文件系统的标记行为510.2.1.2.在扩展属性文件系统中管理安全上卜文(文件上卜文)610.2.2.基于任务的文件系统( fs use task)710.2.3.基于转换的文件系统( fs use trans)710.2.4.普通安全上下文标记( genesco)810.2.4.1. gencon语句绀粒度标记810.2.4.2.使用 gentscon语句标记传统文件系统1010.3.网终和套接字客体标记1010.3.1.网络接口标记( netifcon)10.3.2.网络节点标记( nodecon)1110.3.3.网络端口标记( porton)1210.3.4.套接字标记1310. 1. System V IPC 1110.5.其它客体标记1410.5.1. capability客体标记1510.5.2. process客体标记1510.5.3. system和 security客体标记1510.6.初始安全标识符1510.7.使用Apo1研究客体标记1710.8.小结18练习19第三部分:创建和编写 SELinux安全策略1第11章.原始示例策略111.1.管理构建过程的方法111.2. strict小例策略211.2.1.策略源文件结构概述311.2.1.1.客体类别和许可定义411.2.1.2.域类型和策略规则411.2.1.3.独立的资源类型511.2.1.4.其它顶层文件和目录511.2.1.5.安全上下文标记611.2.1.6.应用程序配冒文件711.2.2.分析示例策略模块711.2.2.1.定义类型和域911.2.2.2.指定域转换规则1011.2.2.3.条件策略小例1111.2.2.4.ping命令的网络和其它访问1111.2.2.5.审核规则1211.2.2.6.文件安全上下文标记1211.2.3. strict小例策略构建选项12
- 2020-12-05下载
- 积分:1