ImageVerifierCode 换一换
格式:DOCX , 页数:21 ,大小:56.89KB ,
资源ID:11685544      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/11685544.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(提升Linux系统的WEB服务的安全防御.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

提升Linux系统的WEB服务的安全防御.docx

1、提升Linux系统的WEB服务的安全防御提升Linux系统的WEB服务的安全防御1.1教学目的与要求1.1.1 教学目的学生通过该能力模块的学习,能够独立完成和熟练把握安全配置WEB服务,从而实现提升Linux系统的WEB服务器安全防备能力。1.1.2 教学要求1.教学重点Apache安全配置选项SSL加密安全2.教学难点SSL加密安全1.2 本能力单元涉及的知识组织1.2.1本能力单元涉及的要紧知识点1、Apache配置文件2、SSL加密安全1.2.2本能力单元需要解决的问题1、按照项目的需求,重点把握WEB服务的安全配置选项。2、按照项目的需求,重点把握SSL加密安全。1.3 核心技术和知

2、识的明白得1.3.1 安全配置选项【第一部分】ServerType standalone这表示Apache是以standalone启动,也能够是inetd。所谓standalone是指启动一次来接听所有的连线;而inetd是接到 的连线要求才启动,随着连线的终止而终止,如此负担是不是专门但呢?因此一样差不多上以standalone启动。ServerRoot /usr/local/ d此为apache的名目#LocdFile /use/local/ d/logs/ d.lock保留预设值,不更动PidFile /usr/local/ d/logs/ d.pid此文件记录着apache的父处理程序

3、idScoreBoardFile /usr/local/ d/logs/ d.scoreboard此文件储备处理程序的信息#ResourceConfig conf/srm.conf#AccessConfig conf/access.conf由于我们统筹由 d.conf来治理,因此这两个文件预设是注解起来的,能够保留预设值不更动Timeout 300设盯超时的时刻。假如用户端超过300秒还没连上server,或server超过300秒还没传送信息给用户端,即断线。KeepAlive On承诺用户端的连线有多个要求,设为Off表示不承诺MaxKeepAliveRequests 100每次连线最大的

4、要求树木,数字愈大,效能愈好。0表示不限制MinSpareServer 5MaxSpareServers 10MinSpareServer 5表示最少会有5个闲置的处理程序,假如实际的数目少于此数目,则会增加处理程序。MaxSpareServers 10表示最大的闲置处理程序数目,假如你的网站需求量专门大,能够将此数目设大一些,大不要随便将此数目设得太大。StartServers 5启动时Server的数目MaxClients 150限制同时刻最大的连线数目,因此不能设得太小,一旦达到此数目,就无法再增加用户端MaxRequestPerChild 0限制子处理程序结果前的要求数目,0表示不限制

5、#Listen 3000#Listen 12.34.56.78:80使用其它的连接端口或IPBindAddress *能够接听*(所有IP地址)、指定的IP地址或是完整的域名#LoadModule foo_module libexec/mod_foo.so使用DSO模块#ExtendedStatus On可检阅apache的状态信息,预设是Off(注解起来)【第二部分】假如之前的ServerType是inetd,请直截了当跳到ServerAdmin。Port 80Standalone服务器接听的连接端口,因此也能够是其他小于1023的端口号User nobodyGroup nobody执行 d

6、的用户和群组ServerAdmin 治理员的电子邮件地址这是治理员的电子邮件地址,假如apache有问题的话,会寄信通知治理员,因此你也能够建立一个专门负责web的帐号来收信ServerName 你的主机名称此为主机名称,假如没有域名,也能够用IPDocumentRoot usr/local/ d/htdocs此名目为apache放置网页的地点,里面的index.html即为连到此主机的预设首页Options FollowSymLinksAllowOverride none此名目设定用户放置网页的名目(public_html)的执行动作。详细的名目存取方法会在后面说明Options Index

7、es FolloeSymLinksAllowOverride NoneOrder allow,denyAllow from all此名目设定apache的网页名目(htdocs)的执行动作UserDir public_html用户可在自己的名目下建立public_html名目来放置网页,输入 :/主机地址/用户名称即可连接到.劳撤胖玫牡胤?/aDirectoryIndex index.html那个地点设定预设主页的名称AccessFileName .htaccess那个是操纵存取的文件名称,一样采纳预设的.htaccess名称,后面会说明htaccess的使用方法Order allow,den

8、yDeny from all这用来防止其他人看到.ht开头的文件内容,不仅是爱护.htaccess的内容,还爱护.htpasswd的内容。因此也能够直截了当写成。假如你有更换AccessFilename,例如将.htaccess改成.accessht,请记得也要在此做相关的更换,如此才能防止其他人看到哦#CacheNegotiatedDocs注解起来是告诉Proxy不要将互动产生的文件存入cache,假如拿掉#,则会存在cache中UseCanonicalName On使用标准的名称,预设是On。假设有一个web server的全名是 sample ,一样称为www;假如us.羑ttp:/ww

9、w/abcTypeConfig /usr/local/ d/conf/mime.types指定存放MIME文件类型的文件。你能够自行编辑mime.types文件。DefaultType text/plain当server不认得此文件类型时的预设格式,此设定是当成一样文字MIMEMagicFile /usr/local/ d/conf/magicmod_mime_magic模块可使server由文件内容决定其MIME类型。假如有载入mod_mime_magic模块,才会处理MIMEMagicFile这一段。假如是,则表示假如没有载入该模块,才会处理这一段HostLookups Off假如为On,

10、则每次都会向name server解析该IP,记录此连线的名称(例如 apache.org)自换岷牟簧偈奔洌.为Off,仅记录IPErrorLog /usr/local/ d/logs/error_log指定发生错误的记录文件(error_log)位置。假如在没有指定发生错误的记录文件,则会沿用此文件LogLevel warn记录分成专门多等级,在此是warn。各等级如下: 等级 说明debug debug信息info 一般信息notice 重要信息warn 警告信息error 发生错误crit 紧急情形alert 赶忙要处理的情形amerg 系统快要死了LogFormat %h %l %u

11、%t%r%s %bRefereri$UserAgenticombinedLogFormat %h %l %u %t%r%s %bcommomLogFormat %Refereri-%UrefererLogFormat %User-agentiagent自定四种记录格式:combined、common、referer、agentCustomLog /usr/local/ d/logs/access_log common存取的记录文件(access_log)使用自定的common格式#CustomLog /usr/local/ d/logs/referer_log referer#CustomLo

12、g /usr/local/ d/logs/agent_log agent#CustomLog /usr/local/ d/logs/agent_log combined这三个记录文件也是使用自定义格式(分别是referer、agent、combined),只是注解起来表示未使用这三个文件ServerSignature On设为On时,在server所产生的网页(像是错误发生时)上,会有apache的版本、主机、连接端口的一行信息;假如设为Email,则会有mailto:给治理员的超链接Alias /icons/ /usr/local/ d/icons/使用较短的别名,其格式为:Alias 别名

13、 原名。ScriptAlias /cgi-bin/ /usr/local/ d/cgi-bin/和Alias一样,只是这是设定server script的名目IndexOptions FancyIndexing显示好看的文件清单(配合下面各文件所对应的图形)AddIconByEncoding(CMP,/icons/compressed.gif)x-conpress x-gzipAddIcon /icons/blank.gifBLANKICONDefaultIcon/icons/unknow.gif这些是在显示文件清单(之前所说的FancyIndex)时,各种文件类型的对应图形。例如.ps .s

14、i .eps这三种文件的表示图形差不多上a.gif#AddDescription GZIP conpressed document .gz#AddDescription tar archive .tar#AddDescription GZIP compressed tar archive .tgz这些是在显示文件清单时,在文件后面附上说明,其格式为:AddDescription 说明 文件名例如:AddDescription It is private txt my.txtReadmeName README显示文件清单时,在最下面显示README的文件内容设置CGI脚本/将 d.conf做为唯

15、独的配置文件/用户授权和访问操纵等关于Apache的配置及使用,在LinuxAid中差不多有许多文章做了详细的阐述,本文讨论了在使用Apache时,有关配置文件的使用及对文件的访问操纵等内容,确实是对Apache的使用所做的一些补充吧!假如您对Apache有一定的了解,专门是对几个配置文件有一定的了解,这将会有助于您对本文内容的明白得;假如恰巧您不是专门了解这几个配置文件的使用,那么就借着那个机会来一起熟悉一下吧。一、关于CGI执行脚本的配置那个地点有两种设置CGI脚本的方法。第一、CGI的脚本文件以.cgi为扩展名;第二、设置脚本可执行名目。然而这两种方法都需要将要执行的文件设置为711,才

16、能够被执行。第一种方法,我们需要在access.conf文件种将你要发行的名目设置为Option ExecCGI All,在srm.conf资源配置文件中,加上下列一句:AddHandle cgi-script .cgi如此在所有的名目种只要你的文件是.cgi为扩展名的,且文件访问权限为711的,不管给文件在你发行名目的任何一个地点都能够做为CGI被Apache服务器调用。这种方法一样没有第二种方法安全。第二种方法,是将一个名目作为一个可执行名目,将所有的cgi文件都放在其中,那个地点就不一定非得是以.cgi为扩展名得文件能够执行,而是只要有711属性的文件就能够被执行,而且其它的非可执行文件

17、都被禁止访问。我们的默认配置文件种就有一个专门好的例子:access.conf:Allow Override NoneOptions ExecCGIsrm.confScriptAlias /cgi-bin/ /home/ d/cgi-bin/如此只要在/home/ d/cgi-bin/名目中的可执行文件都能够被Web服务器调用,而其它的非可执行文件将被拒绝访问。二、配置用户的发行名目那个地点有两种设置方法:第一种是系统的默认方法,即用户名目下的public_html名目为用户的发行名目,且默认的主页文件为index.html,且该名目不支持CGI。第二种是在其它名目种专门为用户设置公布名目,如

18、我想在/home/html名目做为用户的web名目,那治理员就应该在该名目下为每一个用户设置一个子名目,如:/home/html/user01、/home/html/user02等。那么,你的srm.conf文件中的UserDir后面就不能再是public_html了,应该改为:UserDir /home/html/*/,注意那个地点的“*”代表anyone,当你再扫瞄器中要求一个如 :/ domain/user01时,Apache.ndex.html文件。这种设置不需要到access.conf中设置该名目的访问属性,还有,当我们设置虚拟主机时也不用设置名目的访问属性,然而假如你想让某个名目具

19、有CGI权限,都要到Access.conf文件中去配置名目的访问权限,如:你想让你的所有用户在他们的公布名目中具有CGI访问权,则需要在你的access.conf中如此设置:Allow Override NoneOptions ExecCGI注意那个地点设置用户名目中的cgi-bin子名目为cgi执行名目,这是一种安全的设置,而且也是一种UNIX的适应。三、如何将Apache服务器设置为inetd的子服务当你安装了Apache后,默认设置为standalone方式运行,假如你想将它设置为inetd的子服务,第一在每次激活Linux时不激活 d,然后编辑/etc/inetd.conf,在其中加入

20、下列语句: stream tcp nowait root /usr/sbin/ d d然后重新激活inetd服务器。如此你用ps -aux命令查看进程运行情形时,你可不能发觉 d的进程的存在,然而一旦有客户要求一个页面时,inetd就激活一个 d进程为该要求服务,之后就自动开释,这种运行方式有助于节约系统资源,然而假如你的web服务专门重要,一样不建议设置为这种方式运行。四、将 d.conf做为唯独的配置文件在Apache中给用户提供了三个配置文件: srm.conf、 access.conf 和 d.conf files。实际上这三个文件是平等的,所有的配置都能够放在一个单独的 d.conf

21、文件中,事实上在Apache 1.3.2中就差不多如此做了,在 d.conf中应包括以下两条指令来防止Apache对srm.conf和access.conf两个配置文件的访问:AccessConfig /dev/nullResourceConfig /dev/null在apache1.3.2中只要注释掉以下这两行即可:AccessConfig conf/access.confResourceConfig conf/srm.conf五、用户授权和访问操纵你也许在访问某些网站时会遇到过如此的情形,当你点击某个连接时,你的扫瞄器会弹出一个身份验证的对话框,要求输入账号及密码,假如没有,就无法连续扫瞄

22、了。有人会以为这是用CGI做出来的,事实上不然,这是WWW服务器的用户授权和访问操纵机制在发挥作用。你是否还记得在设置Apache服务环境的过程中,有.那个指令,能够对不同的名目提供不同的爱护。然而如此的设定,需要重新启动服务器才会生效,灵活性较差,通过AccessFile指令指定访问操纵文件的方式则比较灵活,在Apache服务器中设置用户的访问操纵权限步骤如下:1、第一对 d.conf文件进行设置如下:# AllowOverride FileInfo AuthConfig Limit# Options MultiViews Indexes SymLinksIfOwnerMatch Inclu

23、desNoExecOptions Includes FollowSymLinks IndexesAllowOverride All /*注意AllowOverride 一定要设置为All,如此后面的.htaccess文件才会起作用Order allow,denyAllow from all# # Order deny,allow# Deny from all# #指定配置存取操纵权限的文件名称AccessFileName .htaccess2、创建.htaccess文件內容要操纵某名目的访问权限必须建立一访问操纵文件,文件名前面指定的“.htaccess”,其内容格式如下:AuthUserFi

24、le 用户帐号密码文件名AuthGroupFile 群组帐号密码文件名AuthName 画面提示文字AuthType 验证方式密码验证方式用户验证方式AuthType目前提供了Basic和Digest两种。密码检验设定方法与 d.conf中的相关设定相同。具体例子如下:AuthUserFile /etc/secure.userAuthName 安全认证中心AuthType Basicrequire valid-user3、建立用户密码文件假如你是第一次创建用户密码,命令格式如下:htpasswd -c 密码文件名 用户名称在上面的例子中,我们将用户密码文件放到了/etc/secure.user

25、文件中,因此那个地点应按照如下进行操作:htpasswd -c /etc/secure.user sword程序会提示你输入两次用户的口令,然后用户密码文件就差不多创建sword那个用户也添加完毕了。假如要向密码文件中添加新的用户,按照如下命令格式进行操作:htpasswd 密码文件 用户名称如此,重新启动 d后,进行该WEB名目时就会有一个对话框弹出,要求输入用户名及用户口令了。4、如何减少访问操纵对Apache性能的阻碍频繁的使用访问操纵会对Apache的性能产生较大的阻碍,那么,如何才能减少这种阻碍呢?最简单也是最有效的方法之一确实是减少.htaccess文件的数目,如此能够幸免Apac

26、he对每一个要求都要按照.htaccess文件的内容进行授权检查。它不仅在当前的名目中查找.htaccess文件,它还会在当前名目的父名目中查找。/usr/usr/local/usr/local/etc/usr/local/etc/ d/usr/local/etc/ d/htdocs/usr/local/etc/ d/htdocs/docs通常在根名目下没有htaccess文件,但Apache仍旧会进行例行检查以确定该文件确实不存在。这是阻碍专门阻碍服务器工作效率的情况。下面的方法能够排除那个厌恶的过程:将AllowOverride选设置为None,如此Apache就会检查.htaccess文

27、件了。将/根名目的AllowOverride选项设为None,只将需要进行访问操纵的名目下的AllowOverride选项设置为all,如下面的例子中将/根名目的AllowOverride 选项关闭了,只打开了/usr/local/etc/ d/htdocs名目下的AllowOerride选项,如此,系统就只在/usr/local/etc/ d/htdocs中检查.htaccess文件,达到的提高服务效率的目的。AllowOverride NoneAllowOverride All 假如除了根名目以外,还有其它存放WWW文件的名目,你也能够采取同样的方法进行设置。比如:假如你使用UserDir

28、来承诺用户访问自己的名目,AllowOverride的设置如下:AllowOverride FileInfo Indexes IncludesNOEXEC5、防止用户访问指定的文件系统中有一些文件是不适宜提供给WWW用户的,如:.htaccess、htpasswd、*.pl等,能够用达到那个目的:order allow,denydeny from all用户访问操纵三个.htaccess文件、.htpasswd和.htgroup(用于用户授权),为了安全起见,应该防止用户扫瞄其中内容,能够在 d.conf中加入以下内容阻止用户对其进行访问:Order deny, allowDeny from

29、all如此这三个文件就可不能被用户访问了。6、限制某些用户访问特定文件能够对名目进行约束,要限制某些用户对某个特定文件的访问能够使用,比如:不承诺非domain 域内的用户对/prices/internal.html进行访问,能够用如下的设置:order deny,allowdeny from allallow from .domain 假如你要授于相应权限的机器没有公布的域名,请在你的/etc/hosts文件中,将其IP地址映射到某个指定的名称,然后在Location中对其进行设置,否则该选项是不起作用的。7、只同意来自特定链接的访问例如,只让所有来自 :/ sina .cn/* 的链接的用户进入此名目,由其它链接来的访客都不得进入; * 表示此网站底下所有的链接。其中的 :/ sina .cn/* 也能够是: :/202.106.184.200/* 或是指定文件 :/ sina .

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1