今天继续给大家介绍Linux运维相关知识,本文主要内容是LAMP架构调优。

一、Apache版本信息简介

在我们安装好LAMP架构之后,我们就可以正常使用了。但是,在默认情况下,Apache会在Http响应头中,附加Server字段,在该字段中显示本地Aapche服务器和版本信息,PHP的版本信息,如下所示:

实际上,这是一个存在风险的行为,暴露LAMP的版本信息,有利于攻击者对症下药,对LAMP系统实行攻击。因此,对Apache和PHP版本信息的隐藏就是今天我们要优化的点。
在生产环境中,一般而言都要进行服务器和版本信息的隐藏,我们来看一下国内知名互联网公司的Http响应头:


二、修改Apache版本信息

接下来,我们就来进行适当的配置,对Apache的版本信息进行隐藏。首先,打开conf目录下的Apache的主配置文件httpd.conf,找到如下第479行处:

删除该行的#号,使得conf/extra目录下的httpd-default.conf文件被主配置文件包括进去。
然后,打开httpd-default.conf配置文件,找到其中的ServerTokens和ServerSignature参数,大概在配置文件的55和65行,如下所示:

将这两个参数的值改为:

ServerTokens Prod
ServerSignature Off

ServerTokens表示显示的信息,信息的信息从多到少依次为:FULL——OS——MIN——MINOR——MAJOR——PROD。
然后,重启服务器,之后,我们尝试访问Apache,发现在HTTP的Server头部字段中,Apache服务的版本号消失了,如下所示:

三、修改服务器信息

值得一提的是,在上述修改中,我们虽然修改了Apache服务器的版本信息,但是却没有能够彻底的隐藏服务器的信息,还是会显示Apache字段,接下来,我就来介绍可以彻底修改Server字段显示服务器的方法。
想要彻底的隐藏服务器的相关信息,需要在编译之前,就对Apache的编译文件进行设置,如果是Apache服务已经安装,那么就需要删除Apache之后,重新进行编译、安装。同时,由于预编译文件会对编译的结果造成影响,我们也需要对预编译的目录进行删除后,重新解压、预编译。
首先,删除Apache的安装目录和解压后的目录:

rm -rf /usr/local/httpd
rm -rf /opt/

然后重新解压,解压后,打开include目录下的ap_release.h文件,找到该文件的第40行处,如下所示:

第40行到47行一共有7个参数,这些参数的含义分别是:
AP_SERVER_BASEVENDOR:服务的供应商名称
AP_SERVER_BASEPROJECT:服务的项目名称
AP_SERVER_BASEPRODUCT:服务的产品名称
AP_SERVER_MAJORVERSION_NUMBER:Apache主要版本号
AP_SERVER_MINORVERSION_NUMBER:Apache小版本号
AP_SERVER_PATCHLEVEL_NUMBER:补丁级别
AP_SERVER_DEVBUILD_BOOLEAN:开发版本
在这里,我们仅修改AP_SERVER_BASEPRODUCT,将其修改为keep_secret,完成修改后,对Apache进行预编译,执行命令:

./configure --prefix=/usr/local/httpd --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-utils --with-pcre=/usr/local/pcre --enable-so --enable-ssl --enable-rewrite --enable-mpms-shared=all --enable-modules=most

然后进行编译和安装,执行命令:

make -j 4 && make install

之后,重复本文第二章的内容,隐藏Apache的版本号,发现最终结果如下:

在Server头中,显示了keep_secret,而不是Apache的原有名称,显然,本次实战成功!
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200

LAMP架构调优(一)——隐藏Apache版本信息相关推荐

  1. apache调优技巧之一隐藏apahce版本信息

    如果你的服务器版本信息是这样的,是很 危险的. [root@xinsz63 httpd-2.2.27]# curl -I 192.168.1.38 HTTP/1.1 403 Forbidden Dat ...

  2. 文件隐藏服务器版本信息吗,隐藏/屏蔽服务器信息与web软件版本信息

    1.隐藏服务器系统信息 在缺省情况下,当你登陆到linux系统,它会告诉你该linux发行版的名称.版本.内核版本.服务器的名称.为了不让这些默认的信息泄露出来,我们要进行下面的操作,让它只显示一个& ...

  3. LAMP 系统性能调优

    1.LAMP 系统性能调优,第 1 部分: 理解 LAMP 架构 http://www.ibm.com/developerworks/cn/linux/l-tune-lamp-1/index.html ...

  4. apache 隐藏php版本,PHP+Apache环境中怎么隐藏Apache版本

    PHP+Apache环境中怎么隐藏Apache版本 发布时间:2021-02-08 09:57:43 来源:亿速云 阅读:104 作者:小新 小编给大家分享一下PHP+Apache环境中怎么隐藏Apa ...

  5. lamp mysql大小限制_[转]LAMP 系统性能调优,第 3 部分: MySQL 服务器调优

    有 3 种方法可以加快 MySQL 服务器的运行速度,效率从低到高依次为: 替换有问题的硬件. 对 MySQL 进程的设置进行调优. 对查询进行优化. 迁移到 DB2 您正在寻找一种干净利落.无成本的 ...

  6. LAMP 系统性能调优,第 3 部分: MySQL 服务器调优(转)

    关于 MySQL 调优 有 3 种方法可以加快 MySQL 服务器的运行速度,效率从低到高依次为: 替换有问题的硬件. 对 MySQL 进程的设置进行调优. 对查询进行优化. 迁移到 DB2? 您正在 ...

  7. 文件隐藏服务器版本信息,如何隐藏Apache版本号和其他敏感信息

    当远程请求发送到您的Apache Web服务器时,默认情况下,一些有价值的信息,如Web服务器版本号,服务器操作系统详细信息,已安装的Apache模块等等,在服务器生成的文档中发送回客户端. 这是攻击 ...

  8. linux隐藏版本信息,Linux下隐藏Apache版本号信息

    利用linux搭建服务器的时候,如何隐藏自己Apache的版本号呢?或者连Apache名字直接隐藏,让别有用心的不知道自己网站用的是什么web服务器?至于为什么隐藏版本号,因为网上有很多教程都是关于A ...

  9. linux隐藏apache信息,Linux下如何隐藏Apache版本号信息

    利用linux搭建服务器的时候,如何隐藏自己Apache的版本号呢?或者连Apache名字直接隐藏,让别有用心的不知道自己网站用的是什么web服务器?至于为什么隐藏版本号,因为网上有很多教程都是关于A ...

  10. 隐藏Tomcat版本信息

    前言:软件开发中生产环境有时候需要影响Tomcat的版本,本文主要介绍Tomcat和SpringBoot中设计. 原理:修改Tomcat中的ServerInfo.properties版本信息,使用ja ...

最新文章

  1. oracle 删除表从回收站恢复
  2. mysql 执行计划 代价_mysql explain执行计划详解
  3. 操作系统——文件的逻辑结构
  4. java中自定义输入数字格式_Java 创建并使用自定义数字格式、35;###、####.#####和语言环境...
  5. 计算机单招语文试题,2019年高职单招语文模拟试题
  6. Install Rouge and Pyrouge for python 2.7 (conda virtual env) on Linux 64
  7. 交什么样的朋友有什么样的天
  8. Javascript中数组的sort方法的分析
  9. 启动Intent之前先检查是否有合适的接收者
  10. Ajax的简单应用之2
  11. QT5基础教程(介绍,下载,安装,第一个QT程序)
  12. 2016年的年终总结吧
  13. 【Linux】内核驱动篇九--设备模型
  14. python能调用身份证读卡器吗_华视身份证读卡机Python二次开发
  15. 新装修的房子多久能入住
  16. HashMap面试连环炮
  17. Java8--20道关于Stream流的题目练习
  18. 【深度学习图像识别课程】毕业项目:狗狗种类识别(3)代码实现
  19. 基于深度学习的轴承寿命预测实践,开发CNN、融合LSTM/GRU/ATTENTION
  20. 快递查询单号查询物流实用攻略

热门文章

  1. pandas—pandas.read_parquet
  2. Django中FBV和CBV
  3. 微软全球MVP教你如何由程序员到CTO
  4. 什么平台给了社区站长机会
  5. 技术改变世界以及减速慢行
  6. 机器学习实战系列(七):数值回归与预测
  7. linux常见权限相关错误及解决
  8. plt.imshow显示CT/MRI图像
  9. mysql数据迁移到sqlserver_Oracle,SQL Server,Mysql 三种数据库两表联合更新的方法
  10. python中输入汉字_python汉字输入