详解UNIX平台下Apache服务的安全保护
2011-10-11 13:14
399 查看
Apache服务器是众多WEB服务器中,一个设计上较安全的程序;但它也同样存在诸多缺陷,比如可以使用HTTP协议进行拒绝访问攻击等。因此合理的设置是保证Apache服务免遭攻击的首要任务。
一.Apache服务缺陷分析
缓冲区溢出。攻击者利用程序编写的一些缺陷,使程序偏离正常的流程;接着发送一个超长请求使缓冲区溢出。一旦系统缓冲区溢出,攻击者就可对攻击端使用各种恶意指令了。
轻易获得root权限。该缺陷主要是因为Apache服务器一般以root权限运行,攻击者会通过此途径获得root权限,进而控制整个Apache系统。
“拒绝服务”(DoS)攻击。它主要是存在于Apache的chunk encoding中,这是一个HTTP协议定义的用于接受web用户所提交数据的功能。这会造成Apache对系统资源需求的剧增,并最终导致系统变慢乃至瘫痪。
二.主Apache服务配置参考
Apache服务除了主配置文件“httpd.conf”外,还有两个重要的配置文件,它们分别是:
srm.conf填加资源文件
access.conf 设置文件的访问权限
三个文件都位于/usr/local/apache/conf目录下,大部分服务配置都在这三个文件里完成。
1.配置Apache服务器的目录安全认证。
在Apache Server中是允许使用 .htaccess做目录安全保护的,欲读取这保护的目录需要先键入正确用户帐号与密码。这样可做为专门管理网页存放的目录或做为会员区等。或者在配置文件“httpd.conf”中加入以下内容也可达到目的:
2.合理设置访问控制。
主要设置配置文件“access.conf”。它包含一些指令控制比如允许什么用户访问Apache目录等。可以通过以下举例的设置来允许来自某个域、某个IP地址或者IP段的访问。
解释:在此配置指令中,将“deny from all”设为初始化指令,再使用“allow from”指令来打开访问权限。
3.合理设置密码保护。
密码保护问题是任何程序、任何系统都要注意的问题。在Apache服务环境下,可以在“httpd.conf”或“srm.conf”配置文件中使用“AccessFileName”指令打开目录的访问控制。举例如下:
总结:
Apache是一款非常优秀的服务器,只要能够正确配置和维护好Apache服务器,一定会感受到Apache服务所带来的吸引力。总的说来,在Apache的安装维护中应注意以下方面的问题:
检查文件和目录的权限是否恰当。
httpd.conf、srm.conf和access.conf这三个配置文件设置是否恰当。
对某些需要特别保护的目录使用密码保护机制(.htaccess)。
让服务器日志文件尽可能的详细记录信息。
对CGI脚本进行封装,如果CGI脚本使用的是Perl编写,一定要详细检查其安全性。
使用TCP Wrappers和Tripwire安全工具。其中“TCP Wrappers”可以限制Telnet和FTP的访问权限;而“Tripwire”是一个数据完整性监测工具,可以使用它来实时监视系统是否被更改。
一.Apache服务缺陷分析
缓冲区溢出。攻击者利用程序编写的一些缺陷,使程序偏离正常的流程;接着发送一个超长请求使缓冲区溢出。一旦系统缓冲区溢出,攻击者就可对攻击端使用各种恶意指令了。
轻易获得root权限。该缺陷主要是因为Apache服务器一般以root权限运行,攻击者会通过此途径获得root权限,进而控制整个Apache系统。
“拒绝服务”(DoS)攻击。它主要是存在于Apache的chunk encoding中,这是一个HTTP协议定义的用于接受web用户所提交数据的功能。这会造成Apache对系统资源需求的剧增,并最终导致系统变慢乃至瘫痪。
二.主Apache服务配置参考
Apache服务除了主配置文件“httpd.conf”外,还有两个重要的配置文件,它们分别是:
srm.conf填加资源文件
access.conf 设置文件的访问权限
三个文件都位于/usr/local/apache/conf目录下,大部分服务配置都在这三个文件里完成。
1.配置Apache服务器的目录安全认证。
在Apache Server中是允许使用 .htaccess做目录安全保护的,欲读取这保护的目录需要先键入正确用户帐号与密码。这样可做为专门管理网页存放的目录或做为会员区等。或者在配置文件“httpd.conf”中加入以下内容也可达到目的:
以下是代码片段: options indexes followsymlinks allowoverride authconfig order allow,deny allow from all |
主要设置配置文件“access.conf”。它包含一些指令控制比如允许什么用户访问Apache目录等。可以通过以下举例的设置来允许来自某个域、某个IP地址或者IP段的访问。
以下是代码片段: <directory /usr/local/http/docs/private> <limit> order deny,allow deny from all allow from safechina.net </limit> </directory> |
3.合理设置密码保护。
密码保护问题是任何程序、任何系统都要注意的问题。在Apache服务环境下,可以在“httpd.conf”或“srm.conf”配置文件中使用“AccessFileName”指令打开目录的访问控制。举例如下:
以下是代码片段: AuthName PrivateFiles AuthType Basic AuthUserFile /path/to/httpd/users require Phoenix # htpasswd -c /path/to/httpd/users Phoenix #增加一个用户 |
Apache是一款非常优秀的服务器,只要能够正确配置和维护好Apache服务器,一定会感受到Apache服务所带来的吸引力。总的说来,在Apache的安装维护中应注意以下方面的问题:
检查文件和目录的权限是否恰当。
httpd.conf、srm.conf和access.conf这三个配置文件设置是否恰当。
对某些需要特别保护的目录使用密码保护机制(.htaccess)。
让服务器日志文件尽可能的详细记录信息。
对CGI脚本进行封装,如果CGI脚本使用的是Perl编写,一定要详细检查其安全性。
使用TCP Wrappers和Tripwire安全工具。其中“TCP Wrappers”可以限制Telnet和FTP的访问权限;而“Tripwire”是一个数据完整性监测工具,可以使用它来实时监视系统是否被更改。
相关文章推荐
- iOS平台获顶级安全防护服务
- WinXP中常见网络与安全服务详解3
- linux网站服务Apache的安装与配置方法详解
- Linux下apache+svn+ssl完美结合搭建安全版本控制平台
- Apache + tomcat实现高并发负载均衡方案(一)----无Session的平台接口服务
- JWT——Token认现金盘平台搭建证的两种实现和安全详解
- 安全方案 多角度详解网站安全保护方法
- WinXP中常见网络与安全服务详解4
- Windows下的PHP开发环境搭建——PHP线程安全与非线程安全、Apache版本选择,及详解五种运行模式。
- Apache安装完后加入系统服务的相关操作详解
- linux平台下apache的源码安装和将apache服务配置成系统服务
- 乌云章华鹏:如何构建高效的安全运维服务平台
- spring cloud中微服务之间的调用以及eureka的自我保护机制详解
- 手游安全服务体系有效保护游戏商的利益
- JWT——Token认现金盘平台搭建证的两种实现和安全详解
- 在Red Hat Linux5下构建LAMP网站服务平台之编译安装Apache与配置基于域名的虚拟Web主机
- 为Apache增加SSL安全保护
- 谷歌推“安全密钥”账号安全保护服务
- 详解CentOS配置和管理web服务-Apache 推荐
- 详解使用Dockerfile创建带Apache服务的CentOS Docker镜像