设为首页 收藏本站
查看: 904|回复: 0

[经验分享] 第十章apache的安全设置

[复制链接]

尚未签到

发表于 2018-11-25 12:23:42 | 显示全部楼层 |阅读模式
  版本V1.0
时间2012-10-04
版权GPL
作者itnihao 邮箱 itnihao@qq.com
博客 http://itnihao.blog.51cto.com
如需重新发行,请注明以上信息,谢谢合作


前言

本文档基于对apache的学习整理而成的笔记。本文档详细的记录了apache各种应用,以及一些个人的理解,如果偏差,请和我联系,以在下一个版本中进行更正。其中大部分文档均来自网络,感谢网络上各位朋友的分享,才有此文档的出现。其中本人对参考的部分网络文档进行适当的修改,以达到更好的参考效果。也希望各位积极的分享文档,为开源事业做出自己力所能及的贡献。

                                             itnihao  20121004日于成都

第十章apache的安全设置
下面的文字收集于网络,链接不知道在何处了。
    声明:关于安全的事情没有保证的或者绝对的,这些建议可以让你的服务器更安全,但不要 认为遵循这些建议后你的服务器就理所当然是安全的。 另外, 在这些建议中有的建议可能会降低服务器性能或者因为你的环境引起问题。 我建议所 作的任何改变是否适合你的需求完全由你决定。换句话说,那是你的风险。
    一、确保你安装的是最新的补丁 如果门是敞开的话,在窗户上加锁就毫无意义。同样道理,如果你没有打补丁,继续下面的 操作就没有什么必要。
二、隐藏 apache 的版本号及其它敏感信息 默认情况下,很多 apache 安装时会显示版本号及操作系统版本,甚至会显示服务器上安装 的是什么样的 apache 模块。这些信息可以为***所用,并且***还可以从中得知你所配置 的服务器上的很多设置都是默认状态。 这里有两条语句,你需要添加到你的 httpd.conf 文件中: ServerSignature Off ServerTokens Prod ServerSignature 该参数设置 出现在 apache 所产生的像 404 页面、目录列表等页面的底部, 三个选项 On|Off|EMai 主要起开关作用,推荐设置为 Off。 推荐设置为 ServerTokens 该参数设置 http 头部返回的 apache 版本信息,安全起见,尽量少显示信息, : 推荐设置为 Off,可用的值和含义如下(显示的信息逐渐增加) Prod:仅软件名称,例如:apache Major:包括主版本号,例如:apache/2 Minor:包括次版本号,例如:apache/2.0 Min:仅 apache 的完整版本号,例如:apache/2.0.54 OS:包括操作系统类型,例如:apache/2.0.54UnixFull: 包括 apache 支持的模块及模块版本号, 例如:Apache/2.0.54 (Unix) OpenSSL/0.9.7gmod_ssl/2.0.54 以其自身的用户账号和组运行( 启动权限)
三、确保 apache 以其自身的用户账号和组运行(Apache 启动权限) 创建一个新的帐户来替代这个帐号启动 apache 并设置相应的权限。
四、确保 web 根目录之外的文件没有提供服务 我们不让 apache 访问 web 根目录之外的任何文件。 假设你的所以 web 站点文件都放在一个 目录下(例如/web) ,你可以如下设置:
order deny,allow
deny from all
options none
allowoverride none
order allow,
deny allow from all
注意,因为我们设置 opitins none allowoverride none,这将关闭服务器的所有 option override。你现在必须明确把每个目录设置成 option 或者 override
    五、关闭目录浏览 你可以在 directory 标签内用 option 命令来实现这个功能。 设置 option none 或者-indexesoptions -indexes
    六、关闭 includes 这也可以通过在 directory 标签内使用 option 命令来实现。 设置 option none 或者-includesoptions -includes
    七、关闭 cgi 执行程序 如果你不用 cgi,那么请把它关闭。在目录标签中把选项设置成 none -execcgi 就可以:
    options -execcgi
八、禁止 apache 遵循符号链接 同上,把选项设置成 none -followsymlinks
options -followsymlinks
九、关闭多重选项 如果想关闭所有选项,很简单: options none 如果只想关系一些独立的选项,则通过将 options 做如下设置可实现:
options -execcgi -followsymlinks -indexes
十、关闭对.htaccess 文件的支持 关闭对 在一个目录标签中实现: allowoverride none 如果需要重载,则保证这些文件不能够被下载,或者把文件名改成非.htaccess 文件。比如, 我们可以改成.httpdoverride 文件,然后像下面这样阻止所有以.ht 打头的文件: accessfilename .httpd
override order allow,
deny deny from all
satisfy all
    十一、 运行 mod_security run mod_security o’reilly 出版社出版的 apache security 一书的作者,ivan ristic 所写的一 个非常好用的一个 apache 模块。可以用它实现以下功能: ·简单过滤 ·基于过滤的常规表达式 ·url 编码验证 ·unicode 编码验证 ·审计 ·空字节***防止 ·上载存储限制 ·服务器身份隐藏 ·内置的 chroot 支持 ·更多其它功能
    十二、 关闭任何不必要的模块 apache 通常会安装几个模块,浏览 apache module documentation,了解已安装的各个模 块是做什么用的。很多情况下,你会发现并不需要激活那些模块。 找到 httpd.conf 中包含 loadmodule 的代码。要关闭这些模块,只需要在代码行前添加一个# 号。要找到正在运行的模块,可以用以下语句: grep loadmodule httpd.conf 以 下 模 块 通 常 被 激 活 而 并 无 大 用 : mod_imap, mod_include, mod_info, mod_userdir, mod_status, mod_cgi, mod_autoindex
    十三、 从 httpd.conf 中清除默认的注释 Apache 2.2.4 中默认的 httpd.conf 文件有 400 多行。在这 400 行中,只有一小部分是实际的 Apache 指令, 其余的仅是帮助用户如何恰当地在 httpd.conf 中放置指令的注释。 完全清除多 余的注释。文件变得更加容易阅读
    十四、Listen 指令具体化 在你第一次安装 Apache 时,httpd.conf 包含一个“Listen 80”指令。应将其改变为“Listen mn.xx.yy.zz:80”在这里 , “mn.xx.yy.zz” 是你想让 Apache 监听其请求的 IP 地址。 如果你的 Apache 运行在一个拥有多个 IP 地址的服务器上时,这一点尤其重要。如果你不采取预防措施,默 认的“Listen 80”指令告诉 Apache 监听每一个 IP 地址的 80 端口。 不过,这项措施有可能不适用于你的环境,应根据需要而改动。




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-639392-1-1.html 上篇帖子: 第九章apache的SSL设置(https) 下篇帖子: 第十六章apache日志解读
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表