apache安全配置
Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一,那么你知道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
apache安全配置2 安全隐患
2.1 目录泄露
Options -Indexes FollowSymLinks
AllowOverrride None
Order allow,deny
Allow from all
在Indexes前加-或去掉
2.2 符号连接追踪
Options Indexes -FollowSymLinks
AllowOverrride None
Order allow,deny
Allow from all
在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解析漏洞:
Order Allow,Deny
Deny from all
2.9 apache设置上传目录无执行权限
关闭路径/www/home/upload的php解析:
Order allow,deny
Deny from all
2.10 apache限制目录
php_admin_value open_basedir /var/www
2.11 http 请求方法安全
OPTIONS 方法可以检测出当前资源可以请求的方法,关闭该方法的配置:
Deny from all
2.12 不允许访问指定扩展名
Order allow,deny
Deny from all
2.13 禁止访问某些指定目录
Order allow,deny
Deny from all
2.14 通过文件匹配进行禁止
Order allow,deny
Deny from all
2.15 禁止针对URL相对路径的访问
Order allow,deny
Deny from all
apache安全配置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
# ←與类似,但是是用來限制URL
#SetHandler server-status
#order deny,allow
#deny from all
#allow from .your_domain.com
#
# ←此区块可显示出服务程序的设定,必须有加入mod_info.c模块才有作用
#SetHandler server-info
#order deny.allow
#deny from all
#allow from .your_domain.com
#
# ←此区块是因为Apache以前版本的bug,有些人会用来攻击
#deny from all 系统,启用此区块可将其导向到ErrorDocument指定的网页。
#ErrorDocument 403 http://phf.apache.org/phf_abuse_log.cgi
#
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
看过文章“apache安全配置”的人还看了:
4.服务器如何防攻击
7.服务器怎么防攻击
10.服务器物理安全