浅谈Linux下Apache服务器的配置及安全问题

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1目录[摘要]..............................................................................21.Linux的介绍..................................................................32.Apache服务器的历史与现状.....................................................33.Linux+Apache的常规配置.......................................................41、安装Apache..................................................................42、主配置文件httpd.conf........................................................43、GlobalEnvironment...........................................................44、'Main'ServerConfiguration..................................................55、VirtualHosts................................................................54.Apache服务器的主要安全缺陷...................................................65.Apache服务器常规安全配置.....................................................71.服务器访问控制............................................................72.隐藏和伪装APACHE的版本。.................................................73.在“监牢”中运行APACHE。.................................................74.减少CGI和SSL风险。......................................................75.确保Apache以其自身的用户账号和组运行.....................................76.禁止Apache遵循符号链接...................................................87.慎重对待对.htaccess文件的支持............................................88.关闭任何不必要的模块......................................................89.确保web根目录之外的文件没有提供服务......................................810.使用最高和最新安全版本....................................................8参考资料................................................................................92[摘要]作为网管人员最担心Web服务器遭到攻击,一旦遭到攻击,网站的所有信息可能面目全非,直到整个Web系统全面瘫痪。因此,选择安全性能好的Web服务器软件尤其重要。作为Internet上最流行的Web服务器软件,Apache的安全性经受了时间和市场的双重检验。取得了惊人的成功。了解ApacheServer的特性,并进行合理的配置将是每一个站点管理维护或开发人员必须关注的问题。[关键词]Web服务器;Apache;安全性;合理的配置31.Linux的介绍简单地说,Linux是一套免费使用和自由传播的类Unix操作系统。这个系统是由世界各地的成千上万的程序员设计和实现的。其目的是建立不受任何商品化软件的版权制约的、全世界都能自由使用的Unix兼容产品。Linux的出现,最早开始于一位名叫LinusTorvalds的计算机业余爱好者,他的目的是想设计一个代替Minix的操作系统,这个操作系统可用于386、486或奔腾处理器的个人计算机上,并且具有Unix操作系统的全部功能,因而开始了Linux雏形的设计。绝大多数基于Linux内核的的操作系统使用了大量的GNU软件,包括了shell程序、工具、程序库、编译器及工具,还有许多其他程序,例如Emacs。Linux的基本思想有两点:第一,一切都是文件;第二,每个软件都有确定的用途,同时它们都尽可能被编写得更好。2.Apache服务器的历史与现状Apache服务器源自美国国家超级技术计算应用中心(NCSA)的Web服务器项目中,因为强大的功能和灵活的设置及平台移植性,apache取得了广泛的信赖.目前Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上。本来它只用于小型或试验Internet网络,后来逐步扩充到各种Unix系统中,尤其对Linux的支持相当完美。Apache有多种产品,可以支持SSL技术,支持多个虚拟主机。Apacheweb服务器软件拥有以下特性:支持最新的HTTP/1.1通信协议拥有简单而强有力的基于文件的配置过程支持通用网关接口支持基于IP和基于域名的虚拟主机支持多种方式的HTTP认证集成Perl处理模块集成代理服务器模块支持实时监视服务器状态和定制服务器日志支持服务器端包含指令(SSI)支持安全Socket层(SSL)提供用户会话过程的跟踪支持FastCGI通过第三方模块可以支持JavaServlets43.Linux+Apache的常规配置在众多Linux发行版本中,以RedHat公司的RedHatLinux应用最为广泛。其出色的性能和稳定性在Linux界很受欢迎。2007年3月14日RedHat公司最新推出RedHatEnterpriseLinux5,它包含1299多个组件,开发时间长达两年,采用Linux2.6.18内核,在系统性能、新功能的扩展、安全性的提高上都有很好的增强,下面就以RedHatEnterpriseLinux5为例配置Apache。1、安装Apache使用RPM软件包安装Apache服务器,RedHatEnterpriseLinux5自带Apache服务器的程序包:主程序包httpd-2.2.3-el5.i386.rpm开发程序包httpd-devel-2.2.3-6.il5.i396.rpm[root@qs_]#rpm-ivhhttpd-2.2.3-el5.i386.rpm[root@qs_]#rpm-ivhhttpd-devel-2.2.3-6.il5.i396.rpm2、主配置文件httpd.confApache的配置文件放在/etc/httpd/conf/目录下。在conf目录下有3个Apache的配置文件:httpd.confaccess.confsrm.confApache启动时先调用httpd.conf,然后调用srm.conf,最后调用access.conf。但本版本的Apache为避免管理和维护的混乱,已经改为将所有Apache的相关配置命令放在httpd.conf文件中,不再使用srm.conf和access.conf文件。httpd.conf文件分为以下3部分:GlobalEnvironment(全局环境)'Main'serverconfiguration(主服务配置)VirtualHosts(虚拟主机)下面将讲述这3部分的用法和与安全相关的注意点。3、GlobalEnvironmentServerTypestandalone用来指定Apache的启动方式:standalone和inetd。Standalone模式是Apache独立运行,也是默认的启动方式。5ServerRoot/etc/httpdApache的目录,此处是存放配置、出错记录、日志文件的根目录。Timeout300设置超时时间。如果远程客户端超过300秒还没连上ApacheServer,或者ApacheServer超过300秒没有传送字节给客户端,就立即断开连接。MaxKeepAliveRequests100设置每次连接期间所允许的最大请求数目。设为0时表示允许无限制数目。MaxClient150设置服务运行的总数量。一旦达到此数目,新来的客户端就被拒绝,所以该限制数目不能设得太小。4、'Main'ServerConfigurationPort80设置Standalone服务器监听的连接端口,也可以设为其他端口,必须小于1023。必须以root身份才能更改端口。#ServerNamelocalhost设置主机名称,可以用域名和IP地址。DocumentRoot/var/设置Apache放置网页的目录路径。DirectoryIndexindex.htmlindex.htm设置Apache的默认首页文档。ErrorLog/var/log/httpd/error_log指定Apache发生错误时记录文件的位置。如果在VirtualHost中没有指定记录文件,则用/var/log/httpd/error_log,否则使用VirtualHost指定的文件。5、VirtualHosts这部分是设置虚拟主机的。虚拟主机的实现方式有两种:以主机名称的方式虚拟、以IP的方式虚拟。以IP的方式虚拟注册域名是要花一笔费用的。在Linux中可以为一个网卡捆绑两个IP地址。如服务器的地址是192.168.0.1,现在有一个IP地址192.168.0.2没有使用(这里用内网ip,说明问题就行了)。将192.168.0.2捆绑到服务器的网卡中,执行下列命令:#ifconfigeth0:1192.168.0.2这样,服务器就有两个IP地址了。以IP的方式虚拟和以主机名称的方式虚拟类似,请看下面的例子:VirtualHost192.168.0.1ServerAdminwebmaster@yourdomain.comDocumentRoot/yourpath/@yourdomain.comDocumentRoot/yourpath/以主机名称的方式虚拟如果用户的一台服务器有多个域名,VirtualHost文件举例如下:NameVirtualHost192.168.0.1VirtualHost192.168.0.1ServerAdminwebmaster@yourdomain.comDocumentRoot/yourpath/

1 / 9
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功