好好学习,天天向上,写范文网欢迎您!
当前位置:首页 > > 综合范文 > 正文

服务器访问权限控制策略的重要性4篇 基于权限的访问控制

2022-10-08 10:44:00综合范文

  下面是范文网小编分享的服务器访问权限控制策略的重要性4篇 基于权限的访问控制,供大家阅读。

服务器访问权限控制策略的重要性4篇 基于权限的访问控制

服务器访问权限控制策略的重要性1

  随着Internet技术的飞速发展,Web技术得到广泛应用,而安全问题一直都是Internet的一个薄弱环节,任何连接到Internet或者其他网络的计算机都有可能受到 的攻击。

  从国际www安全小组CERT(Computer Emergency Response Team)的统计资料来看,Internet中与www相关的安全事故呈逐年上升趋势。www安全主要包括三个方面:Web服务器安全、主机安全和传输安全。由于服务器端操作系统的安全漏洞、www服务软件本身存在问题和服务器端的错误配置等等一些问题,导致web服务器存在一定的安全隐患;网络病毒、恶意代码和系统配置不当等等是对主机的安全威胁;Internet是连接Web客户机和服务器通信的信道,攻击者可以利用嗅探程序,侦听信道,以获取机密信息。这些多种多样的安全威胁给人们的日常生活和经济生活造成很 烦。

  这里重点讨论如何加强web服务器安全。市场上有许许多多的web服务器,例如:Apache、IIS、Zeus、iPlanet、AOLserver和Jigsaw等等。

  一、加强Web服务器安全的措施

  无论何种类型的Web服务器,其基本的安全问题是相同的,这就是:安全配置、身份认证和访问控制等。加强Web服务器安全的主要措施如下:

(1)合理配置Web服务器

  主要措施有:①具有合法权限的用户才可以运行web服务器;②通过某个IP地址、IP地址段或者某个域来控制,未被允许的IP地址、IP地址段或某个域发出来的请求将被拒绝;③通过用户名/口令来控制,只有输入正确的用户名/口令时,才允许访问,

(2)设置Web服务器有关目录的权限

(3)审阅日志文件

  日志文件是web服务器工作的记录。它记录了系统每天发生的各种各样的情况,可以通过它来检查故障发生的原因,或者受到攻击时攻击者留下的痕迹。日志的主要功能是:审计和监测。它还可以实时监测系统状态,监测和追踪入侵者等等。

(4)进行必要的数据备分

  定期对web服务器做安全检查,安全管理Web服务器。这里以Apache服务器为例,介绍上述安全措施的具体实施方案。

  二、设置Web服务器有关目录的权限

  为了更好地维护Web服务器安全,管理员应对“服务器根目录”(日志文件和配置文件存放目录)和“文档根目录”(默认的客户文档存放目录)做严格的访问权限控制。

(1)服务器根目录下存放配置文件、错误和日志文件等敏感信息,它们对系统的安全至关重要,不能随意读取或删改。

(2)一般,Web服务器由root用户启动,然后切换为由user指令所指定的用户。在根目录下执行命令时需注意非root对其操作无效。不仅文件本身,目录及其父目录都只有root具有写的权限。如果允许非root用户对由root执行或读写的文件有写权限,则会危及系统。

(3)文档根目录定义Web服务器对外发布的超文本文档存放的路径,客户程序请求的URL就被映射为这个目录下的网页文件。这个目录下的子目录,以及使用符号连接指出的文件和目录都能被浏览器访问,只是要在URL上使用同样的相对目录名。

  符号连接虽然逻辑上位于根文档目录之下,但实际上可以位于计算机上的任意目录中,因此可以使客户程序能访问那些根文档目录之外的目录,这在增加了灵活性的同时也减少了安全性。Apache在目录的访问控制中提供了FollowSymLinks选项来打开或关闭支持符号连接的特性。

服务器访问权限控制策略的重要性2

  随着Windows XP/Server 的流行,越来越多的用户开始选择NTFS文件系统,NTFS的好处自然是大大增强了系统的安全性,在“安全”标签页下,我们可以在这里为不同级别的用户设置相应的访问控制权限,包括完全控制、修改、读取和运行、列出文件夹目录、读取、写入、特别的权限等,你只需要在“允许”和“拒绝”下简单勾选即可,点击“高级”按钮还可以设置更多的特殊权限,这里就不多说了,

  其实,除了在图形用户界面下对文件或文件夹的访问控制权限进行设置外,我们还可以在命令行方式下完成这项工作,这在由于某些原因无法进入图形用户界面时特别实用,虽然使用时有些麻烦,但却可以救急。

  一、使用Cacls.exe命令

  这是一个在Windows /XP/Server 2003操作系统下都可以使用的命令,作用是显示或者修改文件的访问控制表,在命令中可以使用通配符指定多个文件,也可以在命令中指定多个用户。命令语法如下:

  Cacls filename [/T] [/E] [/C] [/G usererm] [/R user [...]] [/P usererm [...]] [/D user [...]]

  Filename:显示访问控制列表(以下简称ACL)

/T:更改当前目录及其所有子目录中指定文件的ACL

/E:编辑ACL而不替换

/C:在出现拒绝访问错误时继续

/G Userer:perm:赋予指定用户访问权限,Perm代表不同级别的访问权限,其值可以是R(读取)、W(写入)、C(更改,写入)、F(完全控制)等。

/R user:撤销指定用户的访问权限,注意该参数仅在与“/E”一起使用时有效。

/P user:perm:替换指定用户的访问权限,perm的含义同前,但增加了“N(无)”的选项。

/D user:拒绝指定用户的访问。

  实例一:查看文件夹的访问控制权限

  例如,这里我们希望查看h: emp文件夹的访问控制权限,那么只需要在“开始→运行”对话框或切换到命令提示符模式下,键入如下命令:Cacls h: emp

  此时,我们会看到所有用户组和用户对h: emp文件夹的访问控制权限项目,这里的CI表示ACE会由目录继承,OI表示ACE会由文件继承,IO表示ACI不适用于当前文件或目录,每行末尾的字母表示控制权限,例如F表示完全控制,C表示更改,W表示写入。

  如果你希望查看该文件夹中所有文件(包括子文件夹中的文件)的访问控制权限,可以键入“Cacls h: emp .”命令。

  实例二:修改文件夹的访问控制权限

  假如你希望给予本地用户wzj9999完全控制h: emp文件夹及子文件夹中所有文件的访问权限,只需要键入如下命令:

  Cacls h: emp /t /e /c /g wzj9999:f

  这里的“/t”表示修改文件夹及子文件夹中所有文件的ACL,“/e”表示仅做编辑工作而不替换,“/c”表示在出现拒绝访问错误时继续,而“/g wzj9999:f”表示给予本地用户wzj9999以完全控制的权限,这里的“f”代表完全控制,如果只是希望给予读取权限,那么应当是“r”,

  实例三:撤销用户的访问控制权限

  如果你希望撤销wzj9999用户对h: emp文件夹及其子文件夹的访问控制权限,可以键入如下命令:

  Cacls h: emp /t /e /c /r wzj9999

  如果只是拒绝用户的访问,那么可以键入如下命令:

  Cacls h: emp /t /e /c /d wzj9999

  二、使用增强工具xcals.exe

  在windows 2000资源工具包中,微软还提供了一个名为xcacls.exe的文件控制权限修改工具,其功能较cacls.exe更为强大,可以通过命令行设置所有可以在windows资源管理器中访问到的文件系统安全选项,我们可以从/windows2000/techinfo/reskit/tools/existing/xcacls-o.asp下载,安装后即可使用。

  xcacls.exe命令的语法和参数与cacls.exe基本相同,但不同的是它通过显示和修改文件的访问控制列表(acl)执行此操作。在“/g”参数后除保持原有的perm权限外,还增加了spec(特殊访问权限)的选项,另外还增加了“/y”的参数,表示禁止在替换用户访问权限时出现确认提示,而默认情况下,cacls.exe是要求确认的,这样在批处理中调用cacls.exe命令时,程序将停止响应并等待输入正确的答案,引入“/y”参数后将可以取消此确认,这样我们就可以在批处理中使用xcacls.exe命令了。

  实例一:查看文件或文件夹的权限

  在“开始→运行”对话框或切换到命令提示符模式下,注意请事先将“c:program files esource kit”添加到“系统属性→高级→环境变量→系统变量”中,或者通过cd命令将其设置为当前路径,否则会提示找不到文件,然后键入如下命令:

  xcacls h: emp

  此时,可以查看到所有用户组或用户对h: emp文件夹的访问控制权限,io表示此ace不应用于当前对象,ci表示从属窗口将继承此ace,oi表示从属文件将继承该ace,np表示从属对象不继续传播继承的ace,而每行末尾的字母表示不同级别的权限,例如f表示完全控制,c表示更改,w表示写入。

  实例二:替换文件夹中的acl而不确认

  xcacls h: emp /g administrator:rw/y

  以上命令将替换h: emp文件夹中所有文件和文件夹的acl,而不扫描子文件夹,也不会要求用户确认。

  实例三:赋予某用户对文件夹的控制权限

  xcacls h: emp /g wzj9999:rwed;rw /e

  以上命令将赋予用户wzj9999对h: emp文件夹中所有新建文件的读取、写入、运行和删除权限,但需要说明的是,这条命令只是赋予了用户对文件夹本身的读写权限,而不包括子文件夹下的文件。

  对普通用户来说,cals.exe和xcacls.exe的作用可能不是那么明显,这在windows 2000/xp/server 2003的无人值守安装中特别有用,管理员可以为操作系统所在的文件夹设置初始访问权限;在将软件分发到服务器或工作站时,还可以借助xcacls.exe提供单步保护,以防止用户误删除文件夹或文件。

服务器访问权限控制策略的重要性3

  简易拓扑图(所有子网掩码均为255.255.255.0):

  PC(10.1.1.2)---E0(10.1.1.1)[RouterA]S0(192.1.1.1)---S1(192.1.1.2)[RouterB]

  做网络的单向访问其实实现的是防火墙的基本功能:我是内网,你是外网,我能访问你,但你不能访问我,

  所以现在假设RouterA的E0口所连网段为内网段,RouterA S0所连的网段为外网段,还假设我想做的是内网的PC机能ping通外网RouterB的S1口,但RouterB却ping不进我的内网。

  用ACL来实现类似的单向访问控制需要用到一种特殊的ACL,叫Reflexive ACL。Reflexive ACL的配置分为两个部分,一部分是outbound的配置,一部分是inbound的配置。

  在继续下面的说明之前,先说点题外话。在最开始想到单向访问问题时,我(也包括其它一些我的同事)自然的就这么想:那我在E0口上允许PC的流量进来,然后再在S0口上禁止RouterB的流量进来不就行了?看上去好像没什么问题,但一试就知道其实是不行的。为什么不行呢,因为很多人都忽略了这么一个问题:即绝大多数的网络流量都是有去有回的,上面的方法只解决了去的问题,但这个流量在到达RouterB后,RouterB还需要返回这个流量给PC,这个返回的流量到了RouterA的S0口,但上面的方法却在S0口上禁止了RouterB的流量进来,回来的流量被挡住了,通讯失败。

  好,下面再切回来。Reflexive ACL中outbound的部分决定了我出去的哪些内网网络流量是需要被单向访问的,inbound部分决定了这些流量在返回后能被正确的识别并送给内网发起连接的PC机,

  Reflexive ACL中outbound的部分:

  ip access-list extended outbound_filter

  Permit icmp any any reflect icmp_traffic

  Permit ip any any

!---注意在Reflexive ACL中只能用named方式的ACL,不能用numbered方式的ACL。

!---基本配置和普通ACL并没有什么太多不同,不同之处是reflect icmp_traffic,它的意思是这条ACE作为单向流量来处理,并且给了一个名称叫icmp_traffic,icmp_traffic在inbound部分被引用。

!---permit ip any any并不是必要的,加在这里是为了另一个测试,下面会说明。

  Reflexive ACL中inbound的部分:

  ip access-list extended inbound_filter

  evaluate icmp_traffic

  deny ip any any log

!---inbound的配置有和普通ACL有点不同了,第一句evaluate icmp_traffic对上述outbound配置中的icmp_traffic进行了引用,也就是说,它要检查从外网进来的流量,如果这个流量确实是从内网发起的对外访问的返回流量,那么允许这个流量进来。

服务器访问权限控制策略的重要性4

  使用此节描述的指令来控制访问服务器的资源,

  你按照用于访问那些文件的请求来把保护设置与文件组进行链接。使用DefProt 和Protect指令来定义你想要保护的请求。

  可在单独的保护文件或直接在配置文件中定义实际的保护设置。在配置文件内定义, 可用Protection指令来定义和命名(标签)一个保护设置。也可直接在DefProt或Protect指令中定义一个保护设置。

  本节还描述了定义一个保护设置的子指令。

  参看“保护服务器”中关于保护服务器资源的每一步的指示。

  defProt - 指定匹配一个模板的请求的缺省保护设置

  使用该指令来把缺省保护设置和匹配模板的请求联系起来。 注意: 要使保护正确工作, 配置文件中在任何Pass或Exec 指令之前必须放置DefProt和Protect指令。

  该指令的格式为:

  defProt request-templatesetup

  注意: 指令必须在一行内输入,尽管这里显示的是两行。

  Request-template

  你想要与缺省保护设置联系的请求模板。服务器对进入的客户请求和模板进行比较,在找到一个匹配的模板时与一个保护设置联系起来。

  保护对于匹配模板的请求实际上没有被激活,除非请求也与后面的Protect指令中的模板相匹配。参看有关Protect指令的描述,以了解与DefProt一起使用的方法。

  setup

  你想要把它与匹配请求模板的请求联系起来的缺省保护设置。保护设置用保护子指令定义。参看“保护子指令”中关于保护子指令的描述。该参数可用以下三种形式之一:

  标识包含保护子指令的单独文件的全路径与文件名。

  与前面在Protection指令中定义的名称匹配的保护设置标签名。Protection指令包含保护子指令。

  实际的保护子指令。子指令必须用花括号 {}括起来。左花括号字符必须是在与DefProt指令同一行中的最后一个字符。每个子指令有单独的一行。右花括号字符必须在跟在最后一个子指令行后面的单独一行中。在花括号之间不能放置注解行。

  FOR Server-IP-address 或 hostname

  如果使用多IP 地址或虚拟主机,请使用此参数指定IP 地址或主机名。(要了解使用多IP 地址或虚拟主机的更多信息,参看“运行拥有多个IP地址的服务器或虚拟主机”。) 服务器只对发送服务器此 IP 地址或此虚拟主机的请求使用指令。对于一IP地址, 这是服务器网络连接的地址,而不是正在请求的客户的地址。

  可指定一个IP地址(例如, FOR 204.146.167.72) 或指定一个主机名(例如,)。

  该参数是可选的。如果没有此参数,服务器对全部请求使用此指令,而不管进入的请求的IP地址或URL中的主机名是什么。

  记录:

  要使用该参数, 设置参数的形式必须是一个路径与文件名称或一个保护设置标签。设置参数不能使用在花括号之内的子指令。

  要使用该参数,必须在设置参数和 IP地址或主机名 之间放置FOR或某些其他字符串 (不含空格)。

  通配符不能用于指定服务器的IP 地址。

  例:

  defProt /secret/* d:serverprotectsetup1.acc

  上例标识包含保护子指令的一个单独文件。

  defProt /secret/* SECRET-PROT

  上例用一个标签名来指向保护子指令。标签名必须与Protection指令中的标签名匹配。 Protection指令必须出现在DefProt指令之前。

  defProt {AuthType BasicServerID restrictedPasswdFile d:docsWWWrestrict.pwdGroupFile d:docsWWWrestrict.grpGetMask authorsPutMask authors}

  上例包含作为DefProt指令一部分的保护子指令,

  defProt /secret/* CustomerA-PROT 9.67.106.79DefProt /secret/* CustomerB-PROT 9.83.100.45

  上例使用可选的IP地址参数。如果你的服务器收到由 /secret/开头的请求, 则按照请求进入的网络连接的IP地址来把各种缺省保护设置与请求联系起来。对于在9.67.106.79中进入的请求, 服务器把请求与定义在带CustomerA-PROT标签的Protection指令中的缺省保护联系起来。对于在9.83.100.45进入的请求, 服务器把请求与定义在带CustomerB-PROT标签的Protection指令中的缺省保护联系起来。

  defProt /secret/* CustDefProt /secret/* Cust

  上例使用可选的主机名参数。如果服务器收到由 /secret/开头的请求, 则按照URL中的主机名把各种缺省保护设置与请求联系起来。对于进入hostA的请求, 服务器把请求与定义在带CustomerA-PROT标签的Protection指令中的缺省保护联系起来。对于进入hostB的请求, 服务器把请求与定义在带CustomerB-PROT标签的Protection指令中的缺省保护联系起来。

  程序缺省设置

  无。

  初始配置文件设置

  无。

  Protect - 激活匹配一个模板的请求的保护设置

  使用该指令来激活匹配一个模板的请求的保护设置规则 Attention: 要使保护正确工作, 配置文件中在任何Pass或Exec 指令之前必须放置DefProt和Protect指令。

  该指令的格式对于两种情况是不同的:你想要指向一个包含保护子指令的标签或文件;你想要包含保护子指令作为Protect指令的一部分。

  在你想要指向一个包含保护子指令的标签或文件时,它的格式如下:

  Protect request-template ]

  注意: 指令必须在一行内输入,尽管这里显示的是两行。

  在你想要包含保护子指令作为Protect指令的一部分时,它的格式如下:

  Protect 请求模板 {

  子指令 值

  子指令 值

.

. .

}

  Request-template

  你想要激活保护值的请求模板。服务器对进入的客户请求和模板进行比较,在找到一个匹配的模板时激活保护。

  setup-file/label

  在指向一个包含保护子指令的标签或文件时,使用该参数来标识你想要激活的匹配请求模板的请求的保护设置。

  该参数是可选的。如果该参数省略, 则使用由最近的包含匹配模板的DefPort指令定义的保护设置。

  保护设置用保护子指令定义。参看“保护子指令”中关于保护子指令的描述。如果有该参数, 则其可用以下三种形式之一:

  标识包含保护子指令的单独文件的全路径与文件名。

  与前面在Protection指令中定义的名称匹配的保护设置标签名。Protection指令包含保护子指令。

  实际的保护子指令。子指令必须用花括号 {}括起来。左花括号字符必须是在与DefProt指令同一行中的最后一个字符。每个子指令有单独的一行。右花括号字符必须在跟在最后一个子指令行后面的单独一行中。在花括号之间不能放置注解行。


相关热搜
相关文章