隐藏Apache Nginx PHP版本号

###############################################################################

隐藏Apache版本号

###############################################################################

[[email protected] tmp]# curl -I 192.168.93.143

HTTP/1.1 403 Forbidden

Date: Wed, 21 Jul 2010 13:09:33 GMT

Server: Apache/2.2.15 (CentOS)

Accept-Ranges: bytes

Content-Length: 5043

Connection: close

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

隐藏方法:

1、隐藏Apache版本号的方法是修改Apache的配置文件,如RedHat系的Linux默认是:

vim /etc/httpd/conf/httpd.conf

分别搜索关键字ServerTokens和ServerSignature,修改:

ServerTokens OS 修改为 ServerTokens ProductOnly

ServerSignature On 修改为 ServerSignature Off

2、重启或重新加载Apache就可以了。

apachectl restart

测试一下,如下:

[[email protected] tmp]# curl -I 192.168.93.143

HTTP/1.1 403 Forbidden

Date: Wed, 21 Jul 2010 13:23:22 GMT

Server: Apache

Accept-Ranges: bytes

Content-Length: 5043

Connection: close

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

版本号与操作系统信息已经隐藏了。

3、上面的方法是默认情况下安装的Apache,如果是编译安装的,还可以用修改源码编译的方法:

进入Apache的源码目录下的include目录,然后编辑ap_release.h这个文件,你会看到有如下变量:

#define AP_SERVER_BASEVENDOR “Apache Software Foundation”

#define AP_SERVER_BASEPROJECT “Apache HTTP Server”

#define AP_SERVER_BASEPRODUCT “Apache”

#define AP_SERVER_MAJORVERSION_NUMBER 2

#define AP_SERVER_MINORVERSION_NUMBER 2

#define AP_SERVER_PATCHLEVEL_NUMBER 15

#define AP_SERVER_DEVBUILD_BOOLEAN 0

可以根据自己喜好,修改或隐藏版本号与名字。

###############################################################################

隐藏Nginx PHP版本号

###############################################################################

Nginx默认是显示版本号的:

[[email protected] ~]# curl -I www.nginx.org

HTTP/1.1 200 OK

Server: nginx/0.8.44

Date: Tue, 13 Jul 2010 14:05:11 GMT

Content-Type: text/html

Content-Length: 8284

Last-Modified: Tue, 13 Jul 2010 12:00:13 GMT

Connection: keep-alive

Keep-Alive: timeout=15

Accept-Ranges: bytes

nginx隐藏版本号的步骤:

1、进入nginx配置文件的目录(此目录根据安装时决定),用vim编辑打开

vim nginx.conf

在http {—}里加上server_tokens off; 如:

http {

……省略

sendfile on;

tcp_nopush on;

keepalive_timeout 60;

tcp_nodelay on;

server_tokens off;

…….省略

}

2、编辑php-fpm配置文件,如fastcgi.conf或fcgi.conf(这个配置文件名也可以自定义的,根据具体文件名修改):

找到:

fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;

改为:

fastcgi_param SERVER_SOFTWARE nginx;

3、重新加载nginx配置:

# /etc/init.d/nginx reload

这样就完全对外隐藏了nginx版本号了,就是出现404、501等页面也不会显示nginx版本。

下面测试一下:

# curl -I www.abc.net

HTTP/1.1 200 OK

Server: nginx

Date: Tue, 13 Jul 2010 14:26:56 GMT

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

Connection: keep-alive

Vary: Accept-Encoding

源代码安装时修改方法:

vi /src/core/nginx.h

修改其中:

#define NGINX_VERSION “1.0″

#define NGINX_VER “GWS/” NGINX_VERSION

重新编译nginx;

以上就是伪装Nginx,隐藏Nginx版本号全部过程。

二、隐藏PHP版本号

首先进入php.ini文件的目录(这里不区分源码安装还是yum或者apt-get):

vi php.ini

找到:

expose_php = On;

修改为:

expose_php = Off;

重启!

以上就是隐藏Apache,Nginx、PHP版本号并提升服务器安全性全部过程。

隐藏Apache Nginx PHP版本号

时间: 2024-10-09 14:13:16

隐藏Apache Nginx PHP版本号的相关文章

如何隐藏掉Nginx的版本号

最近新学习了一个命令curl,里面有一个参数-I可以查看到网站使用的是哪种服务器,比如: [[email protected] ~]# curl -I localhost HTTP/1.1 200 Server: nginx/1.14.0 Date: Thu, 02 Aug 2018 04:34:38 GMT Content-Type: text/html;charset=UTF-8 Connection: keep-alive 可以看得到Nginx官方现在使用的版本是1.14.0的,每个版本的

隐藏Apache、nginx和PHP的版本号的配置方法

最近提示说有漏洞,暴露apache.nginx和php的版本号.网上搜了下,整理的方法如下: 首先说apache 在http.conf文件里添加下面两行,默认是没有的 ServerSignature Off ServerTokens Prod ServerSignature出现在Apache所产生的像404页面.目录列表等页面的底部.ServerTokens目录被用来判断Apache会在Server HTTP响应包的头部填充什么信息.如果把ServerTokens设为Prod,那么HTTP响应包

web优化之nginx优化[隐藏web名称及版本号]

隐藏web名称及版本号 1)信息泄露: 报错时显示信息: curl显示信息:     [[email protected] ~]# curl -I http://www.etiantian.org/sd     HTTP/1.1 404 NOT FOUND                Server: nginx/1.2.9          #未隐藏版本号     Date: Wed, 21 Oct 2015 15:57:08 GMT     Content-Type: text/html  

修改或隐藏Nginx的版本号

隐藏版本号 隐藏nginx的版本号很简单,nginx的HttpCoreModule提供了一条叫做server_tokens指令,我这要将这条指令设置为“server_tokens off”就可以了. 首先访问一下,看一下现有的版本: [email protected] mail ~]# curl --head http://192.168.3.139 HTTP/1.1 403 Forbidden Server: nginx/0.8.53 Date: Thu, 09 Dec 2010 00:02:

从返回的HTTP Header信息中隐藏Apache的版本号及PHP的X-Powered-By信息

默认情况下,很多apache安装时会显示版本号及操作系统版本,甚至会显示服务器上安装的是什么样的apache模块.这些信息可以为黑客所用,并且黑客还可以从中得知你所配置的服务器上的很多设置都是默认状态. 这里有两条语句,你需要添加到你的httpd.conf文件中:ServerSignature OffServerTokens Prod ServerSignature该参数设置 出现在apache所产生的像404页面.目录列表等页面的底部,三个选项 On|Off|EMai 主要起开关作用,推荐设置

Nginx的版本号隐藏

Nginx的版本号相关 隐藏版本号 nginx隐藏版本号需要将主配置文件中server_tokens关闭 server_tokens off; 查看头信息 [[email protected] ~]# curl -I www.mylinuxops.com HTTP/1.1 200 OK Server: nginx #现在已经不显示nginx的版本号了 Date: Fri, 31 May 2019 12:32:23 GMT Content-Type: text/html Content-Lengt

隐藏Nginx软件版本号信息

为了提高我们web服务器的安全性,我们应当尽可能的隐藏服务器的信息以防止他人通过这些信息找到漏洞侵入我们的服务器,对于Nginx而言,我们安装好Nginx后最好隐藏Nginx的版本号,以防止通过该版本的漏洞入侵我们的服务器. 在不隐藏的情况下,我们可以通过http响应头查看Nginx的版本号,如下图 我们可以通过在nginx.conf的http段中加入 server_tokens off来隐藏我们的版本号 修改后记得重载配置文件( nginx -s reload)使修改生效,生效再次请求我们的服

隐藏Apache的版本号及其它敏感信息

安装完apache一般第一时间都是关闭apache的版本信息和其他信息,一些黑客会通过apache暴露出来的信息针对性的入侵,为了服务器的安全这些信息一定要及时关闭,配置如下 1. 隐藏Apache信息 1.1 主配置中启用httpd-default.conf # vi /usr/local/apache2/conf/httpd.Conf //找到httpd-default.conf,删除includes前面的"#",改成如下 Include conf/extra/httpd-defa

隐藏apache版本信息

######################################33 隐藏Apache信息 [[email protected] ~]# curl -I 127.0.0.1 HTTP/1.1 200 OK Date: Thu, 24 Sep 2015 01:47:29 GMT Server: Apache/2.2.27 (Unix) DAV/2 PHP/5.3.27 X-Powered-By: PHP/5.3.27 Content-Type: text/html ##由此可见版本号为