查看nginx | apache | php | tengine | tomcat版本的信息以及如何隐藏版本信息【转】
转自:
查看nginx | apache | php | tengine | tomcat版本的信息以及如何隐藏版本信息 - 追马 - 51CTO技术博客
http://lovelace.blog.51cto.com/1028430/1440212
昨天配置nginx的时候说道隐藏版本信息的问题,今天就罗列一下
要操作的信息列表
nginx版本信息查询及隐藏
Apache版本信息查询及隐藏
php版本信息查询及隐藏
tengine版本信息查询及隐藏
tomcat版本信息查询及隐藏
详细操作步骤
1.1、nginx版本信息查询
[root@zhuima_nginx ~]# nginx -vnginx version: nginx/1.6.0
1.2、nginx编译配置参数查询
[root@zhuima_nginx ~]# nginx -V
nginx version: nginx/1.6.0
built by gcc 4.4.7 20120313 (Red Hat4.4.7-4) (GCC) TLS SNI support enabledconfigure arguments: --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module
--with-http_ssl_module --with-http_gzip_static_module --with-ipv6
1.3、客户端查看nginx的Response Header信息
[root@zhuima_client ~]# curl -I HTTP/1.1 200 OKServer: nginx/1.6.0
Date: S at, 19 Jul 2014 02:18:54
GMTContent-Type: text/html
Content-Length: 16412
Last-Modified: Mon, 07 Jul 2014 05:25:22 G MT
Connection: keep-alive
Vary: Accept-Encoding
ETag: "53ba2f42-401c"
Accept-Ranges: bytes
1.4、如何隐藏nginx的Response Header中返回的版本号信息
修改nginx配置文件,在全局配置中添加server_tokens off; 这一行
[root@zhuima_nginx ~]# [root@zhuima_nginx ~]# sed -n '/server_tokens/p' /usr/local/nginx/conf/nginx.conf server_tokens off; # 在nginx全局配置文件中添加这行即可 [root@zhuima_nginx ~]#
重启nginx服务然后客户端验证效果
[root@zhuima_client ~]# curl -I http://218.244.xxx.xxx
HTTP/1.1 OK
Server: nginx
Date: Sat, Jul :: GMT
Content-Type: text/html
Content-Length:
Last-Modified: Mon, Jul :: GMT
Connection: keep-alive
Vary: Accept-Encoding
ETag: "53ba2f42-401c"
Accept-Ranges: bytes
2、Apache版本信息查询及隐藏
2.1、apache版本信息查询
apache版本信息查询
[root@zhuima_httpd ~]# apachectl -v
Server version: Apache/2.2. (Unix)
Server built: Apr ::
[root@zhuima_httpd ~]#
apache编译参数查询
[root@zhuima_httpd ~]# apachectl -V
Server version: Apache/2.2. (Unix)
Server built: Apr ::
Server's Module Magic Number: 20051115:25
Server loaded: APR 1.3., APR-Util 1.3.
Compiled using: APR 1.3., APR-Util 1.3.
Architecture: -bit
Server MPM: Prefork
threaded: no
forked: yes (variable process count) Server compiled with....
-D APACHE_MPM_DIR="server/mpm/prefork"
-D APR_HAS_SENDFILE
-D APR_HAS_MMAP
-D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
-D APR_USE_SYSVSEM_SERIALIZE
-D APR_USE_PTHREAD_SERIALIZE
-D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
-D APR_HAS_OTHER_CHILD
-D AP_HAVE_RELIABLE_PIPED_LOGS
-D DYNAMIC_MODULE_LIMIT=
-D HTTPD_ROOT="/etc/httpd"
-D SUEXEC_BIN="/usr/sbin/suexec"
-D DEFAULT_PIDLOG="run/httpd.pid"
-D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
-D DEFAULT_LOCKFILE="logs/accept.lock"
-D DEFAULT_ERRORLOG="logs/error_log"
-D AP_TYPES_CONFIG_FILE="conf/mime.types"
-D SERVER_CONFIG_FILE="conf/httpd.conf" [root@zhuima_httpd ~]#
2.2、apache版本信息隐藏
客户端验证apahce的Response Headers头信息
[root@zhuima_client ~]# curl -I http://192.168.xxx.xxx
HTTP/1.1 Forbidden
Date: Sat, Jul :: GMT
Server: Apache/2.2. (CentOS)
Accept-Ranges: bytes
Content-Length:
Connection: close
Content-Type: text/html; charset=UTF-
在Apache配置文件中添加ServerTokens ProductOnly
#ServerTokens OS # 注释掉改行
Servertokens off # 添加这行屏蔽apache版本信息
ServerSignature Off # 添加这行屏蔽系统信息
重启httpd服务之后客户端再次验证
[root@zhuima_client ~]# curl -I http://192.168.xxx.xxx
HTTP/1.1 Forbidden
Date: Sat, Jul :: GMT
Server: Apache
Accept-Ranges: bytes
Content-Length:
Connection: close
Content-Type: text/html; charset=UTF-
3、略
4、tengine版本信息查询及隐藏
4.1、tengine版本信息查询
这里为什么要把tengine单独拿出来说事呢,初装tengine的童鞋肯定会有点迷茫,为毛tengine会显示出那么多的系统版本信息,除此之外其他操作和nginx一样,这里仅说下nginx版本的隐藏相关
显示的信息有:
Server----->服务器名称
tengine版本信息
服务器端的时间
有图为证:
4.2、tengine版本信息隐藏
在tengine配置文件中添加下面三项即可
server_tag off;
server_info off;
server_tokens off;
重启tengine服务再次进行验证

5、tomcat版本信息查询及隐藏
5.1、tomcat版本信息查询
tomcat版本信息查询(新接手环境的时候很有必要查看的)
[root@zhuima_tomcat ~]$ catalina.sh version
...............................
Server version: Apache Tomcat/7.0.
Server built: Jul ::
Server number: 7.0.42.0
OS Name: Linux
OS Version: 2.6.-.el6.x86_64
Architecture: amd64
JVM Version: 1.7.0_09-b05
JVM Vendor: Oracle Corporation
客户端验证tomcat版本信息
5.2、tomcat版本信息隐藏
隐藏tomcat版本信息
到apache-tomcat安装目录下的lib子文件夹,找到catalina.jar这包,并进行解
解压之后进度到org/catalina/apache/util/目录下,编辑ServerInfo.properties
vim /path/tomcat/lib/org/apache/catalina/util/ServerInfo.properties
来张修改前后的对比图吧

再次验证页面显示信息

总结:
新的环境中尽可能多用help指令查看老的环境的部署
操作之前尽可能做的备份,要不然你懂得后果的
最主要的还是要了解并掌握大多数常用服务,要不然也是干瞪眼
本篇文章纯属扯淡,没啥技术含量
打完收工
查看nginx | apache | php | tengine | tomcat版本的信息以及如何隐藏版本信息【转】的更多相关文章
- (总结)Linux下查看Nginx Apache MySQL的并发连接数和连接状态
1.查看Web服务器(Nginx Apache)的并发请求数及其TCP连接状态:netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a ...
- (转)Linux下查看Nginx Apache MySQL的并发连接数和连接状态
转自: http://www.ha97.com/4106.html 1.查看Web服务器(Nginx Apache)的并发请求数及其TCP连接状态:netstat -n | awk '/^tcp/ { ...
- Linux下查看Nginx,tomcat等的并发连接数和连接状态
1.查看Web服务器(Nginx Apache)的并发请求数及其TCP连接状态: netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print ...
- nginx/apache/php隐藏http头部版本信息的实现方法
有时候我们需要隐藏我们的服务器版本信息,防止有心人士的研究,更安全,这里介绍下在nginx/apache/php中如何隐藏http头部版本信息的方法. nginx隐藏头部版本信息方法 编辑nginx. ...
- 查看mysql apache php nginx的编译参数
查看mysql编译参数: cat /usr/local/mysql/bin/mysqlbug|grep configure 查看apache编译参数: cat /usr/local/apache2/b ...
- 查看Nginx、PHP、Apache和MySQL的编译参数
1.查看Nginx编译参数 [root@portal finance]# your_nginx_dir/sbin/nginx -V nginx version: nginx/ built by (Re ...
- 查看nginx版本和安装的模块
查看nginx版本 # nginx -v nginx version: nginx/1.12.2 查看nginx配置了哪些模块 # nginx -V nginx version: nginx/1.12 ...
- linux中查看nginx、apache、php、mysql配置文件路径的方法
如何在Linux中查看nginx.apache.PHP.MySQL配置文件路径了,如果你接收一个别人配置过的环境,但没留下相关文档.这时该怎么判断找到正确的加载文件路径了.可以通过以下来判断1.判断a ...
- 查看nginx的版本
查看nginx的版本 -v 显示 nginx 的版本-V 显示 nginx 的版本,编译器版本和配置参数 # /app/nginx/sbin/nginx -v nginx version: nginx ...
随机推荐
- 数学口袋精灵app(小学生四则运算app)开发需求
数学口袋精灵APP,摒除了传统乏味无趣学习数学四则运算的模式,采用游戏的形式,让小朋友在游戏中学习,培养了小朋友对数学的兴趣,让小朋友在游戏中运算能力得到充分提升.快乐学习,成长没烦恼! 项目名字:“ ...
- Exchange2010批量删除邮件
在Exchange2010里若要删除某个用户发出的邮件,可以通过EMC控制台授予管理员“管理完全访问权限”,通过OWA登录到用户邮箱删除.另外,更简便的方法为使用Exchange2010的命令来处理, ...
- css文本垂直居中
1,一般flexca 2,行高 3,行高加边框或者透明边框
- Django-基本指令
目录 Django基本指令 下载Django 创建Django项目 创建APP应用 启动Django项目 更新数据库表或字段 清空数据库数据 创建超级管理员 查看更多命令 Django基本指令 下载D ...
- Java == ,equals 和 hashcode 的区别和联系(阿里面试)
今天阿里的人问我 equals 与hashcode的区别,我答不上来, 仔细查了一下,做了总结: (1) == 这是Java 比较内存地址,就是内存中的对象: java中的==是比较两个对象在JVM中 ...
- sessionStorage & localStorage in-depth
sessionStorage & localStorage in-depth Web Storage API https://developer.mozilla.org/en-US/docs/ ...
- 用send_keys输入文本的方法
我们使用app时,输入文字都是调用软键盘.在自动化测试中当然也可以调用软键盘,但是由于输入法设计上的差异,有时候不能达到很好的效果. 例如,搜狗拼音输入法: 选择4-咖啡,然而多打几次,输入法就把“咖 ...
- MT【170】裂项相消
已知$a,b>0$证明:$\dfrac{1}{a+2b}+\dfrac{1}{a+4b}+\dfrac{1}{a+6b}<\dfrac{3}{\sqrt{(a+b)(a+7b)}}$ 证明 ...
- 【arc093f】Dark Horse(容斥原理,动态规划,状态压缩)
[arc093f]Dark Horse(容斥原理,动态规划,状态压缩) 题面 atcoder 有 \(2^n\) 名选手,编号为 \(1\) 至 \(2^n\) .现在这 \(2^n\) 名选手将进行 ...
- mybatis与分布式事务的面试
mybatis的面试: https://www.cnblogs.com/huajiezh/p/6415388.html 本地事务与分布式事务: https://www.cnblogs.com/xcj2 ...