隐藏Apache Nginx PHP版本号
2019独角兽企业重金招聘Python工程师标准>>>
###############################################################################
隐藏Apache版本号
###############################################################################
[root@localhost tmp]# curl -I 192.168.93.143HTTP/1.1 403 ForbiddenDate: Wed, 21 Jul 2010 13:09:33 GMTServer: Apache/2.2.15 (CentOS)Accept-Ranges: bytesContent-Length: 5043Connection: closeContent-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 Off2、重启或重新加载Apache就可以了。
apachectl restart
测试一下,如下:
[root@localhost tmp]# curl -I 192.168.93.143HTTP/1.1 403 ForbiddenDate: Wed, 21 Jul 2010 13:23:22 GMTServer: ApacheAccept-Ranges: bytesContent-Length: 5043Connection: closeContent-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默认是显示版本号的:
[root@localhost ~]# 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 /nginx-0.8.44/src/core/nginx.h
修改以下两行:
#define NGINX_VERSION "1.0"
#define NGINX_VER "GWS/" NGINX_VERSION
为
#define NGINX_VERSION "1.8"
#define NGINX_VER "SWS/" NGINX_VERSION
vi nginx-0.8.44/src/http/ngx_http_header_filter_module.c
修改以下部分:
static char ngx_http_server_string[] = "Server: nginx" CRLF;
为
static char ngx_http_server_string[] = "Server: SWS" CRLF;
vi nginx-0.8.44/src/http/ngx_http_special_response.c
修改以下两部分:
static u_char ngx_http_error_full_tail[] =
"<hr><center>" NGINX_VER "</center>" CRLF
"</body>" CRLF
"</html>" CRLF
;
static u_char ngx_http_error_tail[] =
"<hr><center>nginx</center>" CRLF
"</body>" CRLF
"</html>" CRLF
为
:
static u_char ngx_http_error_full_tail[] =
"<center> "NGINX_VER" </center>" CRLF
"<hr><center>http://www.nginx.org</center>" CRLF
"</body>" CRLF
"</html>" CRLF
;
static u_char ngx_http_error_tail[] =
"<hr><center>SWS</center>" CRLF
"</body>" CRLF
"</html>" CRLF
;
重新编译nginx;
#这里修改为SWS等用以迷惑对方
以上就是伪装Nginx,隐藏Nginx版本号全部过程。隐藏PHP版本号
首先进入php.ini文件的目录(这里不区分源码安装还是yum或者apt-get):
vi php.ini
找到:
expose_php = On;
修改为:
expose_php = Off;
额外加两条:
屏蔽phpinfo函数,修改php.ini文件中的配置项disble_function = 为disble_function = phpinfo
为避免遭受恶意脚本注入的攻击,将php.ini文件中的配置项cgi.fix_pathinfo设置为0(默认开启)
重启nginx或者Apache服务!
以上就是隐藏Apache,Nginx、PHP版本号并提升服务器安全性全部过程。
转载于:https://my.oschina.net/HeAlvin/blog/303640
隐藏Apache Nginx PHP版本号相关推荐
- nginx 配置php版本号,隐藏Apache、nginx和PHP的版本号的配置方法
最近提示说有漏洞,暴露apache.nginx和php的版本号.网上搜了下,整理的方法如下: 首先说apache 在http.conf文件里添加下面两行,默认是没有的 ServerSignature ...
- 文件隐藏服务器版本信息,如何隐藏Apache版本号和其他敏感信息
当远程请求发送到您的Apache Web服务器时,默认情况下,一些有价值的信息,如Web服务器版本号,服务器操作系统详细信息,已安装的Apache模块等等,在服务器生成的文档中发送回客户端. 这是攻击 ...
- iis thinkphp隐藏index.php,thinkphp 隐藏index.php iis apache nginx
这篇文章介绍的内容是关于thinkphp 隐藏index.php iis apache nginx ,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 针对不同的web服务器,iis7 a ...
- linux隐藏apache信息,Linux下如何隐藏Apache版本号信息
利用linux搭建服务器的时候,如何隐藏自己Apache的版本号呢?或者连Apache名字直接隐藏,让别有用心的不知道自己网站用的是什么web服务器?至于为什么隐藏版本号,因为网上有很多教程都是关于A ...
- 如何将Nginx的版本号隐藏
介绍 我们使用Nginx进行代理时,所有的网络请求都是通过Nginx进行分发.而只要是软件那么都会有漏洞. Nginx也再所难免会有一些漏洞,而Nginx也在不断进行版本迭代,那么我们就需要在对外访问 ...
- linux隐藏版本信息,Linux下隐藏Apache版本号信息
利用linux搭建服务器的时候,如何隐藏自己Apache的版本号呢?或者连Apache名字直接隐藏,让别有用心的不知道自己网站用的是什么web服务器?至于为什么隐藏版本号,因为网上有很多教程都是关于A ...
- 隐藏Apache的版本号及其它敏感信息
安装完apache一般第一时间都是关闭apache的版本信息和其他信息,一些黑客会通过apache暴露出来的信息针对性的入侵,为了服务器的安全这些信息一定要及时关闭,配置如下 1. 隐藏Apache信 ...
- apache 隐藏php版本,PHP+Apache环境中怎么隐藏Apache版本
PHP+Apache环境中怎么隐藏Apache版本 发布时间:2021-02-08 09:57:43 来源:亿速云 阅读:104 作者:小新 小编给大家分享一下PHP+Apache环境中怎么隐藏Apa ...
- 为PHP设置服务器(Apache/Nginx)环境变量
为PHP设置服务器(Apache/Nginx)环境变量 设置环境变量常见的地方为区分开发环境/生产环境,或者定义一些数据库的帐号密码 设置Apache环境变量 指令 设置当前环境变量为DEV SetE ...
最新文章
- 2021年大数据Hive(十一):Hive调优
- python简单网页服务器示例
- c语言delay_利用C语言编程单片机,制作可以根据环境光照调整亮度的智能灯
- 我的Oracle 9i学习日志(18)-- 维护数据完整性.b
- django mysql模糊查询_Django 模糊查询
- 【java】修改包访问的数据
- cisco 设备的NTP客户端设置
- 3d打印机c语言程序下载,芯烨打印机设置软件工具
- 学习路线、站点推荐、工具软件、资源下载
- WPF 特殊符号集合
- 【组合数学】多项式定理 ( 多项式定理 | 多项式定理证明 | 多项式定理推论 1 项数是非负整数解个数 | 多项式定理推论 2 每项系数之和 )
- DNT精英论坛(暨.NET北京俱乐部)第3期沙龙:区块链跨链技术的设计与实践
- 飞腾PC机器与奔腾G645的PC机器以及E5-2630V4虚拟机内存性能简单对比
- 怎样学好英语?(多年英语学习经验总结)
- H5 开发内嵌页面跨域问题
- java加密常用的方法_java中常用接口对接加密方式
- windows计划任务执行powershell脚本
- 如何添加Android返回键的退出功能
- 神经网络训练失败原因总结
- 北京邮电大学21年计算机考研情况 数一英一408,分数并不低,竞争激烈