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

[经验分享] Apache安全配置

[复制链接]
累计签到:2 天
连续签到:1 天
发表于 2018-11-21 10:28:39 | 显示全部楼层 |阅读模式
  你知道Apache是如何配置的吗?本文为您讲述Apache的安全配置,希望对您有所帮助。
DSC0000.png

  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 目录泄露
  
  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
  
  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


运维网声明 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-637660-1-1.html 上篇帖子: 查看已安装的 apache、nginx、php、mysql 编译时参数 下篇帖子: 安装apache2虚拟主机并支持ssl(debian)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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