zoukankan      html  css  js  c++  java
  • apache调优技巧之一隐藏apahce版本信息

    如果你的服务器版本信息是这样的,是很 危险的。


    [root@xinsz63 httpd-2.2.27]# curl -I 192.168.1.38

    HTTP/1.1 403 Forbidden

    Date: Thu, 23 Mar 2017 08:46:31 GMT

    Server: Apache/2.2.15 (CentOS)

    Accept-Ranges: bytes

    Content-Length: 5039

    Connection: close

    Content-Type: text/html; charset=UTF-8



    彻底将版本之类的信息进行改头换面,需要在编译之前修改源码包下include/ap_release.h文件

     

    [root@xuegod63 httpd-2.2.25]#pwd

    /usr/local/src

    [root@xuegod63 src]# rm -rfhttpd-2.2.25

    [root@xuegod63src]# tar zxf httpd-2.2.25.tar.gz

    [root@xuegod63 src]# cd httpd-2.2.25

    [root@xuegod63 httpd-2.2.25]# vim include/ap_release.h  #修改源码中的版本信息为自己公司的相关信息,隐藏真实版本信息

     

    改:

    42 #define AP_SERVER_BASEVENDOR "Apache SoftwareFoundation"

     43 #defineAP_SERVER_BASEPROJECT "Apache HTTP Server"

     44 #defineAP_SERVER_BASEPRODUCT "Apache"

     45

     46 #defineAP_SERVER_MAJORVERSION_NUMBER 2

     47 #defineAP_SERVER_MINORVERSION_NUMBER 2

     48 #defineAP_SERVER_PATCHLEVEL_NUMBER   25

     49 #defineAP_SERVER_DEVBUILD_BOOLEAN    0

    为:

    #define AP_SERVER_BASEVENDOR "xuegod"

    #define AP_SERVER_BASEPROJECT "web server"

    #define AP_SERVER_BASEPRODUCT "xuegod web server"

     

    #define AP_SERVER_MAJORVERSION_NUMBER 8

    #define AP_SERVER_MINORVERSION_NUMBER 1

    #define AP_SERVER_PATCHLEVEL_NUMBER   2

    #define AP_SERVER_DEVBUILD_BOOLEAN    3

    注释:

    #define AP_SERVER_BASEVENDOR "Apache SoftwareFoundation" #服务的供应商名称

    #define AP_SERVER_BASEPROJECT "Apache HTTPServer"  #服务的项目名称

    #define AP_SERVER_BASEPRODUCT "Apache"        #服务的产品名

    #define AP_SERVER_MAJORVERSION_NUMBER 2  #主要版本号

    #define AP_SERVER_MINORVERSION_NUMBER 4  #小版本号

    #define AP_SERVER_PATCHLEVEL_NUMBER  6  #补丁级别

    #define AP_SERVER_DEVBUILD_BOOLEAN  0  #

    注:上述列出的行,大家可以修改成自己想要的,然后编译安装之后,再对httpd-default.conf文件进行修改,对方就彻底不知道你的版本号了。

     

    源码编译安装apache

    [root@xuegod63httpd-2.2.25]# pwd

    /usr/local/src/httpd-2.2.25

    [root@xuegod63 httpd-2.2.11]# yum installopenssl*

    [root@xuegod63httpd-2.2.25]# ./configure --prefix=/usr/local/apache2.2-xuegod --enable-so--enable-rewrite --enable-ssl  --enable-deflate  --enable-expires   #检查安装环境并生成Makefile文件

     

    配置参数用途:

    --prefix=/usr/local/apache2.2   #指定安装路径

    --enable-so  # 支持动态加载模

    --enable-rewrite  #支持网站地址重写

    --enable-ssl  # 支持ssl加密

    --enable-deflate  #支持页面传输前进行压缩

    --enable-expires  #支持设置网页缓存的时间


     

    编译:

    [root@xuegod63 httpd-2.2.25]# make -j  4  #把源代码编译成可执行的二进制文件。 

     

    安装:

    [root@xuegod63 httpd-2.2.25]# make install

     

     

    启动apache:

    配置apache 可以开机启动并且可以使用service命令启动apache服务器

    [root@xuegod63 httpd-2.2.25]#cp /usr/local/apache2.2-xuegod/bin/apachectl /etc/init.d/apachectl-xuegod

     



    测试:隐藏apache版本信息

    [root@xu63 ~]# curl -I192.168.1.39   

    HTTP/1.1 200 OK

    Date: Sat, 29 Aug 201509:43:44 GMT

    Server: xuegod web server/8.1.2-dev (Unix) mod_ssl/8.1.2-devOpenSSL/1.0.0-fips

    Last-Modified: Sat, 29 Aug2015 09:37:36 GMT

    ETag:"6d086-3a-51e6ff35dba19"

    Accept-Ranges: bytes

    Content-Length: 58

    Content-Type: text/html

     已经看不到apache版本相关内容了



    本文转自 维度2018 51CTO博客,原文链接:http://blog.51cto.com/xinsz08/1909730,如需转载请自行联系原作者

  • 相关阅读:
    SQLSERVER 2012之AlwaysOn -- 一次硬件升级引发的问题
    SQLSERVER 2012之AlwaysOn -- 同步模式下的网卡性能优化
    Replication的犄角旮旯(九)-- sp_setsubscriptionxactseqno,赋予订阅活力的工具
    关于X锁的问题--由select+X锁是否持有到事务结束的误区
    SQLServer 2012之AlwaysOn —— 指定数据同步链路,消除网络抖动导致的提交延迟问题
    Replication的犄角旮旯(八)-- 订阅与发布异构的问题
    Replication的犄角旮旯(七)-- 一个DDL引发的血案(下)(聊聊logreader的延迟)
    JavaScript 学习笔记 -- String.trim + format
    SQL笔记
    SQL笔记
  • 原文地址:https://www.cnblogs.com/twodog/p/12138140.html
Copyright © 2011-2022 走看看