隐藏apache版本信息
隐藏apache版本信息
网站建设哪家好,找创新互联公司!专注于网页设计、网站建设、微信开发、微信小程序定制开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了岱岳免费建站欢迎大家使用!
######################################33
隐藏Apache信息
[root@LAMP ~]# 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
##由此可见版本号为2.2.27
[root@LAMP ~]#
1 主配置中启用httpd-default.conf
# vi /application/apache/conf/httpd.Conf
//找到httpd-default.conf,删除includes前面的“#”,改成如下
Include conf/extra/httpd-default.conf
或者用sed命令
cd /application/apache/conf/
grep "Include conf/extra/httpd-default.conf" httpd.conf
sed -i 's$#Include conf/extra/httpd-default.conf$Include conf/extra/httpd-default.conf$g' httpd.conf
grep "Include conf/extra/httpd-default.conf" httpd.conf
修改httpd-default.conf
文件:/application/apache/conf/extra/httpd-default.conf
找到
ServerTokens Full
ServerSignature On
改成
ServerTokens Prod
ServerSignature off
########
或者用sed命令
cd /application/apache/conf/extra/
egrep "ServerTokens Full|ServerSignature On" httpd-default.conf
sed -i 's/ServerTokens Full/ServerTokens Prod/g' httpd-default.conf
sed -i 's/ServerSignature On/ServerSignature off/g' httpd-default.conf
egrep "ServerTokens |ServerSignature " httpd-default.conf
#########sed过程
[root@LAMP conf]# cd /application/apache/conf/extra/
[root@LAMP extra]# egrep "ServerTokens Full|ServerSignature On" httpd-default.conf
ServerTokens Full
ServerSignature On
[root@LAMP extra]# sed -i 's/ServerTokens Full/ServerTokens Prod/g' httpd-default.conf
[root@LAMP extra]# sed -i 's/ServerSignature On/ServerSignature off/g' httpd-default.conf
[root@LAMP extra]# egrep "ServerTokens |ServerSignature " httpd-default.conf
####################
重启apache,查看是否修改了版本号
curl -I 10.0.0.3
/application/apache/bin/apachectl graceful
curl -I 10.0.0.3
[root@LAMP extra]# /application/apache/bin/apachectl graceful
[root@LAMP extra]# curl -I 10.0.0.3
HTTP/1.1 200 OK
Date: Thu, 24 Sep 2015 01:54:18 GMT
Server: Apache
X-Powered-By: PHP/5.3.27
Content-Type: text/html
##由此可见版本号2.2.27不见了。但是版本apache还在
[root@LAMP extra]#
上面的方法只能修改版本号,不能改变版本,如果需要改变版本,是默认情况下安装的Apache,如果是编译安装的,还可以用修改源码编译的方法:
修改下面两个文件的内容:
/home/lvnian/tools/httpd-2.2.27/include/ap_release.h
/home/lvnian/tools/httpd-2.2.27/os/unix/os.h
cp /home/lvnian/tools/httpd-2.2.27/include/ap_release.h /home/lvnian/tools/httpd-2.2.27/include/ap_release.h.ori
cp /home/lvnian/tools/httpd-2.2.27/os/unix/os.h /home/lvnian/tools/httpd-2.2.27/os/unix/os.h.ori
修改内容如下:
#####################
40 #define AP_SERVER_BASEVENDOR "Apache Software Foundation"
41 #define AP_SERVER_BASEPROJECT "Apache HTTP Server"
42 #define AP_SERVER_BASEPRODUCT "Apache"
43
44 #define AP_SERVER_MAJORVERSION_NUMBER 2
45 #define AP_SERVER_MINORVERSION_NUMBER 2
46 #define AP_SERVER_PATCHLEVEL_NUMBER 27
47 #define AP_SERVER_DEVBUILD_BOOLEAN 0
修改成下面内容
40 #define AP_SERVER_BASEVENDOR "lvnian IIS6 Software Foundation"
41 #define AP_SERVER_BASEPROJECT "lvnian IIS6 HTTP Server"
42 #define AP_SERVER_BASEPRODUCT "lvnian IIS6 "
43
44 #define AP_SERVER_MAJORVERSION_NUMBER 1
45 #define AP_SERVER_MINORVERSION_NUMBER 3
46 #define AP_SERVER_PATCHLEVEL_NUMBER 5
47 #define AP_SERVER_DEVBUILD_BOOLEAN 7
###########################3
用sed 修改如下:
grep -n '"Apache' /home/lvnian/tools/httpd-2.2.27/include/ap_release.h
cd /home/lvnian/tools/httpd-2.2.27/include/
sed -i 's/"Apache/"lvnian IIS6/g' ap_release.h
sed -n '40,42p' ap_release.h
sed -n '44,47p' ap_release.h
grep "AP_SERVER_MAJORVERSION_NUMBER 2" ap_release.h
sed -i 's/AP_SERVER_MAJORVERSION_NUMBER 2/AP_SERVER_MAJORVERSION_NUMBER 1/g' ap_release.h
sed -i 's/AP_SERVER_MINORVERSION_NUMBER 2/AP_SERVER_MINORVERSION_NUMBER 3/g' ap_release.h
sed -i 's/AP_SERVER_PATCHLEVEL_NUMBER 27/AP_SERVER_PATCHLEVEL_NUMBER 5/g' ap_release.h
sed -i 's/AP_SERVER_DEVBUILD_BOOLEAN 0/AP_SERVER_DEVBUILD_BOOLEAN 7/g' ap_release.h
sed -n '44,47p' ap_release.h
sed -n '39,47p' ap_release.h
############sed 命令过程
[root@LAMP ~]# grep -n '"Apache' /home/lvnian/tools/httpd-2.2.27/include/ap_release.h
38: * Example: "Apache/1.1.0 MrWidget/0.1-alpha"
40:#define AP_SERVER_BASEVENDOR "Apache Software Foundation"
41:#define AP_SERVER_BASEPROJECT "Apache HTTP Server"
42:#define AP_SERVER_BASEPRODUCT "Apache"
[root@LAMP ~]# cd /home/lvnian/tools/httpd-2.2.27/include/
[root@LAMP include]# sed -i 's/"Apache/"lvnian IIS6/g' ap_release.h
[root@LAMP include]# sed -n '40,42p' ap_release.h
#define AP_SERVER_BASEVENDOR "lvnian IIS6 Software Foundation"
#define AP_SERVER_BASEPROJECT "lvnian IIS6 HTTP Server"
#define AP_SERVER_BASEPRODUCT "lvnian IIS6"
[root@LAMP include]# sed -n '44,47p' ap_release.h
#define AP_SERVER_MAJORVERSION_NUMBER 2
#define AP_SERVER_MINORVERSION_NUMBER 2
#define AP_SERVER_PATCHLEVEL_NUMBER 27
#define AP_SERVER_DEVBUILD_BOOLEAN 0
[root@LAMP include]# grep "AP_SERVER_MAJORVERSION_NUMBER 2" ap_release.h
#define AP_SERVER_MAJORVERSION_NUMBER 2
[root@LAMP include]# sed -i 's/AP_SERVER_MAJORVERSION_NUMBER 2/AP_SERVER_MAJORVERSION_NUMBER 1/g' ap_release.h
[root@LAMP include]# sed -i 's/AP_SERVER_PATCHLEVEL_NUMBER 27/AP_SERVER_PATCHLEVEL_NUMBER 5/g' ap_release.h
[root@LAMP include]# sed -i 's/AP_SERVER_DEVBUILD_BOOLEAN 0/AP_SERVER_DEVBUILD_BOOLEAN 7/g' ap_release.h
[root@LAMP include]# sed -n '44,47p' ap_release.h
#define AP_SERVER_MAJORVERSION_NUMBER 1
#define AP_SERVER_MINORVERSION_NUMBER 3
#define AP_SERVER_PATCHLEVEL_NUMBER 5
#define AP_SERVER_DEVBUILD_BOOLEAN 7
#############################################################################3
修改 /home/lvnian/tools/httpd-2.2.27/os/unix/os.h文件的下面内容 ,修改成你想要修改的内容
35 #define PLATFORM "Unix"
如修改成
#define PLATFORM "win32"
sed命令如下
cd /home/lvnian/tools/httpd-2.2.27/os/unix/
sed -n '/#define PLATFORM /p' os.h
sed -i 's/#define PLATFORM "Unix"/#define PLATFORM "LVNIAN WIN"/g' os.h
sed -n '/#define PLATFORM /p' os.h
##########
[root@LAMP unix]# sed -n '/#define PLATFORM /p' os.h
#define PLATFORM "Unix"
[root@LAMP unix]# sed -i 's/#define PLATFORM "Unix"/#define PLATFORM "LVNIAN WIN"/g' os.h
[root@LAMP unix]# sed -n '/#define PLATFORM /p' os.h
#define PLATFORM "LVNIAN WIN"
[root@LAMP unix]#
记得要上面的都不需要把#注销去掉
备份配置文件,
重新编译安装
pkill httpd
rm -rf /application/apache2.22.27
cd /home/lvnian/tools
cd httpd-2.2.27
./configure \
--prefix=/application/apache2.22.27 \
--enable-deflate \
--enable-expires \
--enable-headers \
--enable-modules=most \
--enable-so \
--with-mpm=worker \
--enable-rewrite
make && make install
##解决启动apache慢问题
grep -i "#ServerName" /application/apache/conf/httpd.conf
sed -i '/#ServerName/aServerName 127.0.0.1:80' /application/apache/conf/httpd.conf
grep -i "ServerName" /application/apache/conf/httpd.conf
##启动apache
pkill httpd
netstat -lnt
/application/apache/bin/apachectl -t
/application/apache/bin/apachectl start
##测试
[root@LAMP httpd-2.2.27]# curl -I 10.0.0.3
HTTP/1.1 200 OK
Date: Thu, 24 Sep 2015 02:55:18 GMT
Server: lvnian IIS6/1.3.5-dev (LVNIAN WIN) DAV/2
Last-Modified: Sat, 20 Nov 2004 20:16:24 GMT
ETag: "20c8e-2c-3e9564c23b600"
Accept-Ranges: bytes
Content-Length: 44
Content-Type: text/html
文章题目:隐藏apache版本信息
文章起源:http://myzitong.com/article/jogssh.html