《网络系统安全运行与维护》课件项目五 任务三 加强Linux系统Web服务的安全防御_第1页
《网络系统安全运行与维护》课件项目五 任务三 加强Linux系统Web服务的安全防御_第2页
《网络系统安全运行与维护》课件项目五 任务三 加强Linux系统Web服务的安全防御_第3页
《网络系统安全运行与维护》课件项目五 任务三 加强Linux系统Web服务的安全防御_第4页
《网络系统安全运行与维护》课件项目五 任务三 加强Linux系统Web服务的安全防御_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

网络系统安全运行与维护项目五Linux服务器系统安全运行与维护项目主要内容:任务一

加强Linux系统DNS服务的安全防御任务二

加强Linux系统DHCP服务的安全防御任务三

加强Linux系统Web服务的安全防御任务四

加强Linux系统FTP服务的安全防御任务五

使用防火墙模块提升Linux服务器的安全防御任务提出

在网络中部署Web服务器,不但可以为内网用户提供Web服务,而且可以为Internet用户提供Web服务,但也给网络带来很大的安全隐患,如窃取敏感信息、进行漏洞攻击及获取Web服务进程的权限等。为了保障Web服务器安全运行,需要对Web服务器进行安全配置,具体任务如下:1.对Web服务器进行安全配置

对Web服务器软件Apache进行基本安全配置、中级安全配置、高级安全配置。2.使用SSL加强Web服务器通信安全

使用SSL加密机制加密网络通信内容,防止信息泄露。任务分析1.对Web服务器进行安全配置Apache服务器是Internet上应用最为广泛的Web服务器软件之一。Apache服务器源自美国国家超级计算技术应用中心(NationalCenterforSupercomputingApplications,NCSA)Web服务器项目,目前已在Internet中占据了领导地位。Apache服务器经过精心配置之后,才能适应高负荷、大吞吐量的Internet访问请求。具有快速、可靠、简单的API扩展,且完全免费,源代码完全开放,方便人们访问Web服务器。但Apache服务器也存在安全缺陷,主要有:

(1)使用HTTP进行的拒绝服务攻击。

(2)缓冲区溢出的安全缺陷。

(3)被攻击者获得root权限的安全缺陷。对Apache进行安全配置,主要包括以下方面:(1)隐藏Apache的版本号及其他敏感信息。(2)确保Apache以其自身的用户帐号和组运行。(3)确保Web根目录之外的文件没有提供服务。(4)关闭目录浏览。(5)关闭Includes。(6)关闭CGI执行程序。(7)禁止Apache遵循符号链接。(8)关闭多重选项。(9)关闭对.htaccess文件的支持。(10)运行mod_security。知识链接:.htaccess文件(或者“分布式配置文件”)提供了针对目录改变配置的方法,即在一个特定的文档目录中放置一个包含一个或多个指令的文件,以作用于此目录及其所有子目录。.htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。通过.htaccess文件,可以帮我们实现:网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能。2.使用SSL加强Web服务器通信安全SSL是Apache所支持的安全套接层协议,提供Internet上的安全交易服务。通过对通通信字节流的加密来防止敏感信息的泄露。由于Apache是由多个模块组成的,不同模块对应不同的功能,Apache对SSL的支持就是通过对Apache的API扩展来实现的,相当于一个外部模块,通过与第三方程序结合提供安全的网络沟通。

通过配置SSL服务,对网页通信链接进行加密,保障Web服务器通信安全。任务实施1.对Web服务器进行安全配置

操作步骤如下:

步骤1实验准备阶段,根据项目一中任务二知识点,在VMwareWorkstation中部署两台RedHatEnterpriseLinux6.4系统虚拟机server和PC,两个虚拟机的IP地址规划如表所示,并将两台虚拟机实现网络连通。设备名称设备角色操作系统IP地址serverWeb服务器RedHatLinux6.4/24PC客户端RedHatLinux6.40/24步骤2在server上安装Apache。(1)安装Apache。①安装并开启Apache。[root@linuxA~]#yumlist|grephttpdhttpd.i6862.2.15-26.el6@anaconda-RedHatEnterpriseLinux-201301301449.i386/6.4httpd-tools.i6862.2.15-26.el6@anaconda-RedHatEnterpriseLinux-201301301449.i386/6.4httpd-devel.i6862.2.15-26.el6basehttpd-manual.noarch2.2.15-26.el6base[root@linuxA~]#yum-yinstallhttpd[root@linuxA~]#systemctlstarthttpd[root@linuxA~]#ps-ef|grephttpd②在客户端测试Web服务。

在PC端打开Web浏览器,输入服务器的IP地址或DNS名称,显示测试网页,如图1所示。图1若无法显示,需要关闭防火墙和selinux(2)Apache基本配置。①在server上创建测试网页。②重新启动Apache服务。[root@linuxA~]#echo"Thisisatestwebpage">/var/www/html/index.html[root@linuxA~]#systemctlrestarthttpd④在客户端测试Web服务。

在计算机上打开Web浏览器,输入服务器的IP地址,显示如图2所示结果。图2步骤3Apache基本安全配置。确保Apache以其自身的用户帐号和组运行。

某些Apache安装过程中使服务器以nobody帐户运行,假定Apache和邮件服务器都是以nobody的帐户运行,那么通过Apache发起的攻击就可能同时攻占邮件服务器,反之通过邮件服务器发起的攻击也可能同时攻占Apache服务。①确保Apache以其自身的用户帐号和组运行。[root@linuxA~]#vim/etc/httpd/conf/httpd.conf……UserapacheGroupapache……②显示运行Apache的帐号和组。[root@linuxA~]#ps-ef|grephttpdroot163131014:43?00:00:00/usr/sbin/httpdapache1631716313014:43?00:00:00/usr/sbin/httpdapache1631816313014:43?00:00:00/usr/sbin/httpdapache1631916313014:43?00:00:00/usr/sbin/httpdapache1632016313014:43?00:00:00/usr/sbin/httpdapache1632116313014:43?00:00:00/usr/sbin/httpdapache1632216313014:43?00:00:00/usr/sbin/httpdapache1632316313014:43?00:00:00/usr/sbin/httpdapache1632416313014:43?00:00:00/usr/sbin/httpdroot163363344014:48pts/000:00:00grephttpd步骤4Apache中级安全配置。关闭CGI程序。CGI(CommonGatewayInterface)公共网关接口,是外部扩展应用程序与Web服务器交互的一个标准接口。CGI技术是客户端与服务器交互的一种方式,根据CGI标准,编写外部扩展应用程序,可以对客户端浏览器输入的数据进行处理,完成客户端与服务器的交互操作。简言之,CGI就是网站中各种后台的程序,该程序可以通过网页运行。不完善的CGI应用程序可能成为别人非法进入服务器系统的通道,有可能导致重要的资料被删除或外泄。

如果不用CGI,那么应该把它关闭,在目录标签中把选项设置成None或-ExecCGI,修改配置文件/etc/httpd/conf/httpd.conf,具体操作如下所示。

①编写一个CGI测试脚本。[root@linuxA桌面]#vim/var/www/cgi-bin/hello.cgi#!/usr/bin/perlprint"Content-type:text/plain\n\n";print"HelloWorld.\n"②修改hello.cgi权限,使其能正确执行。③修改配置文件。[root@linuxA桌面]#chmod755/var/www/cgi-bin/hello.cgi[root@linuxA桌面]#vim/etc/httpd/conf/httpd.conf……ScriptAlias/cgi-bin/“/var/www/cgi-bin/"<Directory“/var/www/cgi-bin">……

OptionsExecCGI……</Directory>……LoadModulecgi_modulemodules/mod_cgi.so#cgi相关模块LoadModulealias_modulemodules/mod_alias.so#别名相关模块在服务器端,重新启动httpd服务,使修改后的配置文件生效。[root@linuxA桌面]#systemctlrestarthttpd④客户端测试。在PC端浏览器中输入/cgi-bin/hello.cgi,显示CGI执行程序运行结果,如图3所示。图3⑤修改配置文件。a.修改httpd配置文件,使得不能运行cgi程序。[root@linuxA桌面]#vim/etc/httpd/conf/httpd.conf……#ScriptAlias/cgi-bin/“/var/www/cgi-bin/"<Directory“/var/www/cgi-bin">……

Options-ExecCGI……</Directory>b.在服务器端,重新启动httpd服务,使修改后的配置文件生效。c.在PC端浏览器中输入/cgi-bin/hello.cgi,CGI执行程序运行失败,如图10所示。[root@linuxA桌面]#systemctlrestarthttpd图4(4)关闭对.htaccess文件的支持。①创建.htaccess文件,不允许0的计算机访问。[root@linuxA桌面]#vim/var/www/.htaccessdenyfrom0

②客户端第1次测试。

在PC端浏览器中输入,由于未启用.htaccess,客户端可以正常访问网页,如图5所示。图5③启用.htaccess。[root@linuxA桌面]#vim/etc/httpd/conf/httpd.conf<Directory/>

AllowOverrideAll……</Directory>…..<Directory"/var/www/html">OptionsIndexesFollowSymLinksAllowOverrideAllOrderallow,denyAllowfromall</Directory>④重新启动http服务,使配置生效。

⑤客户端第2次测试。

在PC端浏览器中输入,启用.htaccess后,客户端无法正常访问网页,如图6所示。[root@linuxA桌面]#systemctlrestarthttpd图6⑥在服务器端查看日志文件。通过日志可见,服务器端拒绝了客户端访问www文件。[root@linuxA桌面]#tail/var/log/httpd/error_log[TueJul2322:53:202019][notice]caughtSIGTERM,shuttingdown[TueJul2322:53:202019][notice]suEXECmechanismenabled(wrapper:/usr/sbin/suexec)[TueJul2322:53:202019][notice]Digest:generatingsecretfordigestauthentication...[TueJul2322:53:202019][notice]Digest:done[TueJul2322:53:202019][warn]./mod_dnssd.c:Noservicesfoundtoregister[TueJul2322:53:202019][notice]Apache/2.2.15(Unix)DAV/2configured--resumingnormaloperations[TueJul2322:53:252019][error][client0]clientdeniedbyserverconfiguration:/www/⑦修改.htaccess文件,只允许/24网络的计算机访问。⑧重新启动http服务,使配置生效。⑨客户端第3次测试。在PC端浏览器中输入,由于.htaccess文件允许客户端所在网段主机访问服务器,客户端可以正常访问网页,如图7所示。[root@linuxA/]#vim/var/www/.htaccessallowfrom192.168.159.[root@linuxA桌面]#systemctlrestarthttpd图7[root@linuxA桌面]#vim/etc/httpd/conf/httpd.conf<Directory/>AllowOverrideNone……</Directory>…..<Directory"/var/www/html">OptionsIndexesFollowSymLinksAllowOverrideNoneOrderallow,denyAllowfromall</Directory>⑩关闭.htaccess。

在服务器端重新启动httpd,并在客户端上进行第4次测试,由于.htaccess已关闭,客户端可以正常访问服务器网页,如图8所示。图8112.使用SSL加强Web服务器通信安全

步骤5Apache高级安全配置(SSL加密)。

(1)安装mod_ssl模块。mod_ssl模块可以提供TLS/SSL(TransportLayerSecurity/SecureSocketsLayer,安全传输层/安全套接层)功能,https认证通过mod_ssl实现。

安装完成后,可以看到mod_ssl的配置文件/etc/httpd/conf.d/ssl.conf。[root@linuxA~]#cd/etc/httpd/conf.d[root@linuxAconf.d]#lsmod_dnssd.confREADMEssl.confwelcome.conf[root@linuxA~]#yum-yinstallmod_ssl(2)创建密钥和证书申请。创建一个文件夹,用来存放认证证书,然后申请证书。[root@linuxA~]#mkdirca[root@linuxA~]#cdca[root@linuxAca]#opensslreq-new>new.cert.csr//创建证书申请,此时会要求输入国家、组织、姓名等信息。Generatinga2048bitRSAprivatekey++++++writingnewprivatekeyto'privkey.pem'EnterPEMpassphrase://输入一个密码。Verifying-EnterPEMpassphrase://再次输入上述密码。Youareabouttobeaskedtoenterinformationthatwillbeincorporatedintoyourcertificaterequest.WhatyouareabouttoenteriswhatiscalledaDistinguishedNameoraDN.TherearequiteafewfieldsbutyoucanleavesomeblankForsomefieldstherewillbeadefaultvalue,Ifyouenter'.',thefieldwillbeleftblank.CountryName(2lettercode)[XX]:CNStateorProvinceName(fullname)[]:HenanLocalityName(eg,city)[DefaultCity]:ZhengzhouOrganizationName(eg,company)[DefaultCompanyLtd]:zzrvtcOrganizationalUnitName(eg,section)[]:rgznxyCommonName(eg,yournameoryourserver'shostname)[]:EmailAddress[]:a@Pleaseenterthefollowing'extra'attributestobesentwithyourcertificaterequestAchallengepassword[]://输入一个密码。Anoptionalcompanyname[]:(3)从密钥中删除私钥。从PEM证书文件中删除私钥,以实现ssh免密登录远程服务器。(4)将证书申请转换成签名证书。[root@linuxAca]#opensslrsa-inprivkey.pem-outnew.cert.key//从密钥对里提取出私钥。Enterpassphraseforprivkey.pem://输入PEM私钥密码。writingRSAkey[root@linuxAca]#opensslx509-innew.cert.csr-outnew.cert.cert-req-signkeynew.cert.key-days1825//生成一个签名证书,有效期为1825天。Signatureoksubject=/C=CN/ST=Henan/L=Zhengzhou/O=zzrvtc/OU=rgznxy/CN=/emailAddress=abc@GettingPrivatekey(5)将证书文件new.cert.cert和私钥new.cert.key文件复制到适当的位置,并进行查看。[root@linuxAca]#mkdir-p/etc/httpd/conf/ssl.crt/server.crt[root@linuxAca]#cpnew.cert.cert/etc/httpd/conf/ssl.crt/server.crt[root@linuxAca]#cd/etc/httpd/conf/ssl.crt/server.crt[root@linuxAserver.crt]#lsnew.cert.cert[root@linuxAserver.crt]#catnew.cert.cert图15[root@linuxAca]#mkdir-p/etc/httpd/conf/ssl.key/server.key[root@linuxAca]#cpnew.cert.key/etc/httpd/conf/ssl.key/server.key[r

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论