如何将Apache服务器名称更改为服务器头中的任何内容

在我们之前的几篇文章讲解了有关于Apache服务器的安全与优化知识点,也解释了如何去隐藏Apache的版本号和其它一些敏感信息。

成都创新互联2013年开创至今,先为保山等服务建站,保山等地企业,进行企业商务咨询服务。为保山企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

我们有讨论过怎么样防范有价值的信息,像:Web服务器版本号、服务器操作系统的详情、Apache已安装的模块等等一些,在服务器生成的文档返回给客户端(有可能是***者)。

在这篇文章,我们将展示给你另一个有用的Apache安全意见-改变HTTP web服务器的名字在于任何地方显示头部(header)信息的时候。

我们说这儿究竟在说些什么?请看下面一个截图,它显示了一个有关在我们web服务器上文档根目录列表,在页面的下方,你也能看到服务器的署名(web名称、版本、操作系统、ip地址和端口)。

如何将Apache服务器名称更改为服务器头中的任何内容

大多数时候,***会利用你的已知的web软件信息去***你的站点或者web应用,因此更改web服务的名字将变得困难对运行在你的系统之上的服务类型。这个点就是更改“Apache”为其它的名称。

这个可以通过安装Apache的mod_security模块来实现。

-------- On Debian/Ubuntu -------- $ sudo apt install libapache2-mod-security2
$ sudo a2enmod security2-------- On CentOS/RHEL and Fedora --------# yum install mod_security
# dnf install mod_security

然后打开Apache的配置文件:

$ sudo vi /etc/apache2/apache2.conf	#Debian/Ubuntu 
# vi /etc/httpd/conf/httpd.conf	        #RHEL/CentOS/Fedora

现在修改或添加下面的命令行到配置文件最底部(现在更改成TecMint_Web,你可以更改成任何你想要显示在客户端的名字)

ServerTokens Full
SecServerSignature “Tecmint_Web”

最后重启Apache服务。

$ sudo systemctl restart apache2   #Debian/Ubuntu 
# systemctl restart httpd          #RHEL/CentOS/Fedora

现在验证,再一次访问这个页面或者使用curl命令,或者通过浏览器来查看web服务的名字,可以看到已经由Apache更改成Tecmint_Web

$ curl -I -L http://domain-or-ipaddress

如何将Apache服务器名称更改为服务器头中的任何内容

原文链接:

https://www.tecmint.com/change-apache-server-name-to-anything-in-server-headers/

tips:

如果未安装mod_security模块的情况下,直接添加进区配置文件的话 会报如下错误:

[root@iZ288zd30s2Z ~]# service httpd restart
Stopping httpd:                                            [  OK  ]
Starting httpd: Syntax error on line 1169 of /etc/httpd/conf/httpd.conf:
Invalid command 'SecServerSignature', perhaps misspelled or defined by a module not included in the server configuration
                                                           [FAILED]

新闻标题:如何将Apache服务器名称更改为服务器头中的任何内容
新闻来源:http://hbruida.cn/article/jedosp.html