当前位置:网站首页 >> 军事

保证LinuxApacheWeb服务器安

时间:2019-10-13 00:54:53 来源:互联网 阅读:0次

如果你是一个系统管理员

,你应该按照以下的10点建议来保证Apache web服务器的安全。

1、禁用不必要的模块

如果你打算源码编译安装apache,你应该禁用以下的模块。如果你运行./configure -help

,你将会看到所有可用的你可以禁用/开启的模块。

userdir 用户特定用户的请求映射。例如:带用户名的URL会转化成服务器的一个目录

autoindex 当没有默认首页(如ml)时显示目录列表。

status 显示服务器统计

env 清除或修改环境变量

setenvif 根据客户端请求头字段设置环境变量

cgi CGI脚本

actions 根据特定的媒体类型或请求方法,激活特定的CGI脚本

negotiation 提供内容协商支持

alias 提供从文件系统的不同部分到文档树的映射和URL重定向

include 实现服务端包含文档(SSI)处理

filter 根据上下文实际情况对输出过滤器进行动态配置

ve置段支持

asis 发送自己包含HTTP头内容的文件

当你执行

./configure按照下面禁用以上的所有模块。

./configure \

--enable-ssl \

--enable-so \

--disable-userdir \

--disable-autoindex \

--disable-status \

--disable-env \

--disable-setenvif \

--disable-cgi \

--disable-actions \

--disable-negotiation \

--disable-alias \

--disable-include \

--disable-filter \

--disable-version \

--disable-asis

如果激活ssl且禁用mod_setenv,你将会得到以下错误。

错误: Syntax error on line 223 of /usr/local/apache2/conf/extra/nf: Invalid command BrowserMatch, perhaps misspelled or defined by a module not included in the server configuration

解决方案:如果你使用ssl,不要禁用setenvif模块。或者你禁用setenvif模块,可以在nf注释BrowserMatch。

安装完成全,执行httpd -l,会列出所有已安装的模块。

# /usr/local/apache2/bin/httpd -l

Compiled in modules:

core.c

mod_authn_file.c

mod_authn_default.c

mod_authz_host.c

mod_authz_groupfile.c

mod_authz_user.c

mod_authz_default

.c

mod_auth_basic.c

mod_log_config.c

mod_ssl.c

prefork

.c

http_core.c

mod_mime.c

mod_dir.c

mod_so.c

在这个例子里,我们安装了如下apache模块:

core.c Apache核心模块

mod_auth* 各种身份验证模块

mod_log_config.c 允许记录日志和定制日志文件格式

mod_ssl.c SSL

prefork.c 一个非线程型的、预派生的MPM

httpd_core.c Apache核心模块

mod_mime.c 根据文件扩展名决定应答的行为(处理器/过滤器)和内容(MIME类型/语言/字符集/编码)

mod_dir.c 指定目录索引文件以及为目录提供尾斜杠重定向

mod_so.c 允许运行时加载DSO模块

注:相关站建设技巧阅读请移步到建站教程频道。

有赞上怎么开微商城
有赞微商城入驻规范
微商城登陆

相关文章

一周热门

热点排行

热门精选

友情链接:
媒体合作:

Copyright (c) 2011 八零CMS 版权所有 备案号:京ICP0000001号

网站地图