标签:nginx安全
Nginx作为一款非常强大的Web应用服务器以及我们可以使用它来做基于应用层的负载均衡而得到了广大群众的认可,随之而来的问题也体现了,很多的朋友希望对Nginx有一个非常好的隐藏,希望隐藏版本,甚至希望隐藏好软件名称,那么今天就来说一下这两个内容的隐藏方法!
如下图,我们可以轻而易举知道对方使用的是什么服务器,当然如果你尊重开源,留下名字也是好的,如果你要修改,也是没有问题的!
提示一下:使用yum版本安装的话,你是不能来隐藏我们的软件名称的,但是版本号是可以隐藏的!
隐藏Nginx版本号
[root@PuaLinux ~]# curl -I http://www.pualinux.com
Bash
HTTP/1.1 200 OK Server: nginx/1.8.0 Date: Thu, 21 Jan 2016 07:26:37 GMT Content-Type: text/html; charset=utf-8 Connection: keep-alive Vary: Accept-Encoding X-Cache: HIT
如果要隐藏次版本号,也就是1.8.0这个版本号,只需要在配置文件的http标签内部加上下面的内容:
Bash
http{…… server_tokens off;……}
[root@PuaLinux ~]# curl -I http://www.pualinux.com //再次查看
Bash
HTTP/1.1 200 OK Server: nginx Date: Thu, 21 Jan 2016 07:26:37 GMT Content-Type: text/html; charset=utf-8 Connection: keep-alive Vary: Accept-Encoding X-Cache: HIT
版本号已经没有了
通过源码的方式隐藏软件名称和版本号
如果你像隐藏nginx和版本号,可以在源码编译的时候对源码进行修改,然后在编译,这样下来就达到隐藏的效果
[root@pualinux ~]# cd /usr/local/src/nginx-1.8.0/src/core
[root@pualinux nginx-1.8.0]# vim nginx.h
Bash
#define NGINX_VERSION "1.8.0" 修改为想要的版本号如1000.11.1#define NGINX_VER "nginx/" NGINX_VERSION 将nginx修改为想要修改的软件名称,如PPU。
然后接下来继续你的编译安装过程,这个过程和你的编译安装以前的方法没有任何区别,最后启动成功之后
[root@PuaLinux ~]# curl -I http://www.pualinux.com
Bash
HTTP/1.1 200 OK Server: PPU/1000.11.1 Date: Thu, 21 Jan 2016 07:26:37 GMT Content-Type: text/html; charset=utf-8 Connection: keep-alive Vary: Accept-Encoding X-Cache: HIT
这样就达到了我们一个隐藏的效果
本文出自 “一步小心踏破了红尘” 博客,请务必保留此出处http://lorne.blog.51cto.com/9062483/1776045
标签:nginx安全
原文地址:http://lorne.blog.51cto.com/9062483/1776045