所属分类: 网络安全 整理: FengNet.Com 更新日期:2015/9/21 9:38:05 阅读次数:781

Apache安全配置


本文为您讲述Apache的安全配置,希望对您有所帮助。

Apache安全配置

1 安全策略

1.1 安全目录

.htaccess做目录安全保护的,欲读取这保护的目录需要先键入正确用户帐号与密码。这样可做为专门管理网页存放的目录或做为会员区等。

AllowOverride All
>LoadModule rewrite_module modules/mod_rewrite.so

在自动要认证的目录下建立. htaccess文本(windows中用记事本另存为建立)

1.1.1 .htaccess配置:

(.htaccess文件可以相当于当前目录的httpd.conf配置,设置时尤其注意.htaccess文件的访问权限,避免被有心人恶意修改,后果不堪设想)

AuthName HIHIHI指的是要求你输入用户名和密码时的提示信息

AuthType Basic表示需要的认证类型

AuthUserFile c:\ss指的是保存用户名和密码的文件位置(.htpasswd),在这个例子中指的是.htpasswd文件,位置和我们的.htaccess文件相同

Require valid-user指定只有.htpasswd文件包含的合法用户才能访问。

1.1.2 .htpasswd配置

用户名:密码

aaa:aaa

不一定在.htaccess文件下配置,也可以在httpd.conf(主配置)下进行配置,这样可以提高apache工作效率,否则客户端访问Web是Apache都会在每一个目录下寻找.htaccess文件,会降低Apache效率,而且.htaccess被有心人修改了就危险了

1.2 错误页面

ErrorDocument 500 "The server made a boo boo."

ErrorDocument 404 /missing.html

ErrorDocument 404 "/cgi-bin/missing_handler.pl"

ErrorDocument 402 http://www.js.com/subscription_info.html

2 安全隐患

2.1 目录泄露

<Directory "/usr/local/apache/htdocs">

Options -Indexes FollowSymLinks

AllowOverrride None

Order allow,deny

Allow from all

</Directory>

在Indexes前加-或去掉

2.2 符号连接追踪

<Directory "/usr/local/apache/htdocs">

Options Indexes -FollowSymLinks

AllowOverrride None

Order allow,deny

Allow from all

</Directory>

在FollowSymLinks前加-或去掉

2.3 Listen指令具体化

httpd.conf包含一个"Listen 80”指令。应将其改变为指定邦定的IP,如果在多IP的环境下尤其注意

2.4 版本泄露

在httpd.conf中添加:

ServerTokens ProductOnly

ServerSignature Off

2.5 运行权限

Apache在windows中的默认运行权限是系统权限,若黑客找到漏洞,就可以将整个服务控制,所以必须将Apache运行权限降到最低,这样可以避免发生安全事故

2.6 清除httpd.conf中默认的注释

在这400行中,只有一小部分是实际的Apache指令,其余的仅是帮助用户如何恰当地在httpd.conf中放置指令的注释。根据笔者的经验,这些注释有时起负面作用,甚至将危险的指令留存于文件中。笔者在所管理的许多 Apache服务器上将httpd.conf文件复制为其它的文件,如httpd.conf.orig等,然后完全清除多余的注释。文件变得更加容易阅读,从而更好地解决了潜在的安全问题或者错误地配置文件。

2.7 欺骗攻击者

修改版本名:

修改系统名:

2.8 apache解析漏洞:

<FilesMatch ".(php.|php3.)">

Order Allow,Deny

Deny from all

</FilesMatch>

2.9 apache设置上传目录无执行权限

关闭路径/www/home/upload的php解析:

<Directory “/www/home/upload”>

<Files ~ “.php”>

Order allow,deny

Deny from all

</Files>

</Directory>
2.10 apache限制目录

php_admin_value open_basedir /var/www

2.11 http 请求方法安全

OPTIONS 方法可以检测出当前资源可以请求的方法,关闭该方法的配置:

<Location />

<Limit OPTIONS>

Deny from all

</Limit>

</Location>

2.12 不允许访问指定扩展名

<Files ~”\..inc$”>

Order allow,deny

Deny from all

</Files>

2.13 禁止访问某些指定目录

<Directory ~“^/var/www/(.+/)*[0-9]{3}”>

Order allow,deny

Deny from all

</Directory>

2.14 通过文件匹配进行禁止

<FilesMatch \.(? i: gif| jpe? g| png)$>

Order allow,deny

Deny from all

</FilesMatch>

2.15 禁止针对URL相对路径的访问

<Location /dir/ >

Order allow,deny

Deny from all

</Location>

3 其他安全配置

3.1 Options

Options参数代表的意思

ALL用户可在此目录中做任何事

ExecCGI允许在此目录中执行CGI script

FollowSymLinksSever可利用symbolic link链接到不在此目录中的档案或目录

IndexesSever可以产生此目录中的档案列表

Includes提供SSI的功能

IncludesNOEXEC可使用SSI功能,但取消#exec与#include 的CGI 功能

MultiViews允许经由交谈而取得不同的文件,例如可由浏览器要求传送法文版的网页`

None安全不允许存取此目录

SymLinkslfOwnerMatch允许存取symbolic links链接的目录,但仅限于该目录的拥有人

3.2 AllowOverride

AllowOverride None表示不要读取.htaccess文档

AllowOverride AuthConfig允许做基本的用户名和口令验证

AllowOverride Allall表示以.htaccess的内容为准,改变原来的访问权限

3.3 Location

#<Location /server-status> ←<Location>與<Directory>类似,但是是用來限制URL

#SetHandler server-status

#order deny,allow

#deny from all

#allow from .your_domain.com

#</Location>

#<Location /server-info> ←此区块可显示出服务程序的设定,必须有加入mod_info.c模块才有作用

#SetHandler server-info

#order deny.allow

#deny from all

#allow from .your_domain.com

#</Location>

#<Location /cgi-bin/phf*> ←此区块是因为Apache以前版本的bug,有些人会用来攻击

#deny from all 系统,启用此区块可将其导向到ErrorDocument指定的网页。

#ErrorDocument 403 http://phf.apache.org/phf_abuse_log.cgi

#</Location>

3.4 from

allow from all ←允許所有使用者存取

# allow from flag.com.tw ←只允許來自於flag.com.tw domain存取,但要先"deny from all"才能拒絕其它地方連進來

# deny from 203.74.205 ←拒绝来自于203.74.205

3.5 减少CGI和SSI风险

减少SSI脚本风险,如果用exec等SSI命令运行外部程序,也会存在类似CGI脚本风险,除了内部调试程序时,应使用

option命令禁止其使用:

Option IncludesNOEXEC

若要使用CGI或SSI可以使用suEXEC进行配置

3.6 使用ssl加固Apache

link

--------------------------------------------------------------------------------

相关文章
ElasticSearch的部署、同步与调优 2017/6/5 9:16:20
Hadoop、Spark等5种大数据框架对比,你的项目该用哪种? 2017/1/24 16:12:43
如何在阿里云上构建高可用应用 2017/1/24 16:08:45
Linux内核参数调优 2015/10/9 10:58:10
APACHE+TOMCAT的简单HA配置 2015/10/9 10:50:48
notify文件监控工具inotify-tools使用方法介绍 2015/9/25 10:19:02
Linux运维工程师的十个基本技能点 2015/9/21 9:40:09
Ubuntu中普通用户sudo执行权限配置 2015/9/20 10:29:32
免费DDoS攻击测试工具大合集 2014/7/15 17:49:05
大数据领域的顶级开源工具大集合 2014/4/18 10:18:42
Linux下查看Nginx Apache MySQL的并发连接数和连接状态 2013/3/15 17:03:50
Nginx与Apache、Tomcat、Resin动静分离核心配置 2013/3/15 16:56:47
Nginx配置文件nginx.conf中文详解 2013/3/15 16:55:52
在Nginx下针对IP和目录限速 2013/3/15 16:51:14
LAMP 环境搭建 2013/3/15 16:44:51
Nagios网络监控工具安装和配置教程 2012/8/2 10:39:26
Fail2ban简介 2012/3/30 10:53:11
服务器暴力入侵防护 fail2ban 2012/3/30 10:45:23
有关Apache Server Status和Cacti对Apache的监控 2012/3/30 10:31:12
Web安全工具大汇聚 2012/3/20 9:27:50
压力测试软件 Siege 的正确用法 2012/3/19 21:47:57
Siege:压力模拟/测试工具 2012/3/19 21:46:38
linux下网站压力测试工具webbench 2012/3/19 17:11:00
Postfix配置Q&A 2011/10/22 9:42:16
POSTFIX邮局系统搭建全过程 2011/10/22 9:33:19
apache访问日志里面的中文有两种编码 2010/8/4 20:23:59
Linux下查看Apache的请求数 2010/4/16 15:18:20
Linux配置Apache服务器全攻略 2010/4/16 15:17:51
设置 WINDOWS 2003 IIS 中的权限 2010/4/3 15:50:03
使用apache+resin实现负载均衡设置 2009/3/27 12:26:46
apache + resin的多机部署方案实现方法 2009/3/27 12:25:47
vsftpd 虚拟用户 多用户管理 2008/9/24 14:07:11
用Swatch做Linux日志分析 2008/6/1 17:59:36
关于Apache (httpd)服务器防DDOS模块mod_evasive的使用说明 2008/6/1 17:45:27
使用php-syslog-ng远程查看与管理系统日志 2008/5/15 12:58:08
linux 系统管理篇--环境变量 2008/4/28 18:50:45
用rsync实现网站镜像和备份 2007/5/17 17:43:10
分类防范对Linux的DoS攻击 2007/5/10 14:46:31
基于FreeBSD5.4全能服务器安装 2007/2/1 17:19:40
用Linux系统防火墙功能抵御网络攻击 2006/12/14 17:28:02
UNIX应急响应攻略 2006/12/14 13:41:20
Linux安全配置步骤简述 2006/12/14 13:36:24
网站服务器通用和专用保护方法比较分析 2006/12/14 13:31:38
80端口web服务攻击痕迹 2006/7/22 17:19:31
基于域名的虚拟主机VS基于IP的虚拟主机 2006/7/11 14:59:27
使用apache和IIS,共用80端口的一个解决方案 2006/6/28 10:08:43
服务器的日志合并统计 2006/6/17 11:31:34
基于mysql的bind(bind-9.3.1或更高版本) 2006/6/17 10:07:17
入侵检测系统逃避技术和对策的介绍 2006/6/7 9:25:12
网络流量监控的常用方法 2006/6/3 12:47:41
网络安全讲座之六:侦察与工具 2006/5/24 19:43:53
Linux 进程管理 2006/5/12 16:21:51
企业网站服务器负载均衡技术 2006/5/8 19:33:36
实现四台Web服务器的负载均衡 2006/5/8 19:32:09
一种动态网络负载平衡集群的实践方法 2006/5/8 19:30:46
建立一个带宽、线程可控的下载型WEB网站 2006/4/30 13:53:11
用专用Linux日志服务器增强系统安全 2006/4/3 13:37:51
RedHat 9.0中mrtg安装详解 2005/12/25 14:49:13
Linux中文件查找技术大全 2005/11/25 10:05:27
剖析入侵检测系统的安全性 2005/10/11 10:41:45
在RedHat9上构建小型的入侵检测系统 2005/9/20 14:14:17
多服务器的日志合并统计 2005/8/29 15:16:44
负载均衡技术全攻略 2005/8/19 8:33:25
Web服务器日志统计分析完全解决方案 2005/8/10 12:27:24
AWStats: 跨平台的日志分析工具——在GNU/Linux和Windows平台上的使用简介 2005/7/28 16:44:17
[网工]入侵检测系统FAQ(全) 2005/7/6 21:01:49
2005年网络工程师考试题目预测(2) 2005/7/6 20:53:26
网络流量监控器mrtg全攻略 2005/6/17 15:03:36
安装Win2003 Server下的Snort 2005/3/24 9:18:42
Solaris启动过程详解 2005/3/23 13:22:12
100多道简单网络基础题(答案) 2004/11/9 10:09:43
插翅难逃 根据Web服务器的记录来追踪黑客 2004/9/17 8:56:49
实现四台Web服务器的负载均衡 2004/9/1 11:15:32
Linux下硬盘分区的最佳方案 2004/9/1 10:24:46
网络流量监控器mrtg全攻略 2004/8/21 10:14:35
使用Mrtg监控网络流量(Linux版本) 2004/8/21 10:06:06
实现四台服务器的负载均衡 2004/8/13 13:01:59
用Apache架站及虚拟主机完全篇 2004/7/1 13:11:20
Apache2+php4.3.6+MySQL4.0.20+SSL详细配置过程 2004/6/28 17:34:02
Linux一句话精彩问答-网络相关篇 2004/5/26 13:44:58
Linux一句话精彩问答-网络无关篇 2004/5/26 13:43:14
將 iptables 的規則寫成 shell 執行檔 2004/4/1 8:46:56
Linux支持ASP 安装配置手册 2004/1/24 19:16:30
LINUX新手入门及安装配置faq200(下) 2003/12/31 20:54:57
linux经典问题==程序开发篇 2003/10/30 11:20:52
linux经典问题==网络篇 2003/10/30 11:20:02
LINUX 常见问题1000个详细解答 2003/10/29 14:13:25
20%的SOLARIS知识解决80%的问题 2003/8/29 15:16:51
理解Linux系统的日志 2003/8/27 13:41:13
Linux服务器的一些基本应用 2003/8/15 12:11:07
Linux系统命令分类详解 (2) 2003/8/12 9:23:12
Sino-trade.com集群技术报告 2003/8/12 8:24:37
网络通信命令详解 2003/8/5 7:14:31
Redhat 8.0系统配制命令 2003/7/30 18:20:02
linux常见问题FAQ 2003/7/30 18:01:57
iptables基础,绝对的基础 2003/7/30 17:17:23
Linux服务器架设实例 2003/7/30 17:06:11
构建小型的入侵检测系统(RedHat9) 2003/7/30 16:50:32
apache 1.3.26+resin 2.1.4在linux下面的整合安装 2003/7/28 10:16:00
用实验快速掌握Apache 2003/7/21 8:39:01
iptables扩展功能的增加 2003/7/19 19:11:25
Solaris 问答集 2003/7/19 19:06:09
iptable 使用实例 2003/7/19 18:54:18
安装完系统后需要做的一些事 2003/7/15 8:37:58
系统平台安装操作手册 SUN Fire 280安装配置手册 2003/7/15 8:36:18
网络流量监控器mrtg全攻略 2003/7/14 9:37:34
使用Mrtg监控网络流量 2003/7/14 9:36:09
Installing Oracle 9i R2 (9.2.0.1.0) on Red Hat 9 2003/7/14 8:31:06
[转帖]实现四台服务器的负载均衡 2003/7/13 19:03:25
在unix上让apache支持asp 2003/7/13 18:42:32
常用的Linux网络安全工具介绍 2003/7/13 18:11:03
在RedHat9.0上安装Oracle9i数据库 2003/7/4 9:39:09
理解 Linux 配置文件 2003/7/4 9:25:55
Linux下文件查找技术大全 2003/7/1 8:38:50
Linux代理服务全攻略 2003/6/27 8:24:29
Linux下实现集群负载均衡 2003/5/25 21:04:02
Linux 组网入门 2003/5/25 20:56:32
Linux新手入门教程 2003/5/16 23:18:21
系统管理进阶-用户管理 2003/5/14 9:54:39
Redhat Linux 8.0工作站服务加载列表解释 2003/5/5 13:33:38
PHP新手上路 2003/4/27 11:50:38
PHP的十个高级技巧 2003/4/27 11:04:11
PHP中运行只有root用户才可以运行的外部程序 2003/4/27 10:55:04
构建基于 LDAP 的地址簿 2003/4/2 19:56:44
在 Linux 上安装Apache+ApacheJServ+JSP 2003/3/24 19:52:00
什么是 Linux 2003/3/24 15:58:22
Linux服务器的一些基本应用 2003/3/24 10:43:09
用Linux建立局域网服务器 2003/3/23 21:50:45
proftpd 安装手记 2003/3/17 15:27:56
ProFtpd快速指南 2003/3/17 15:27:03
使用 rpm 的一些方法 2003/3/17 15:26:21
ProFTPD 详解 2003/3/17 15:25:06
linux99问 2003/3/11 18:37:18
Linux简明系统维护手册 2003/3/11 18:35:40
Linux中文件查找技术大全 2003/2/22 14:35:52
理解Linux系统的日志 2003/2/22 14:34:13
unix日志文件安全小议 2003/2/21 22:06:40
Linux简明系统维护手册3 2003/2/18 19:44:15
网站综合实例 2003/1/25 20:42:08
linux网站综合实例 2003/1/19 22:05:29
用iptales实现包过虑型防火墙 2003/1/15 16:55:53


感性空间
设计&运维
网络技术
休闲娱乐
NetFilter
linux&Unix
网络安全
程序空间
软件考试
RFC&ISO
规划&规范
虚拟&存储
Apple技巧
云计算&大数据



文章搜索



站内搜索