服务器banner是什么
服务器banner主要影响http响应中的头部字段server(http服务器信息)。格式一般为服务器名称/版本号,如nginx/1.18.0。
banner影响响应头server信息
默认banner带来的影响
攻击者可能通过该信息了解远程系统类型以便进行下一步的攻击。
如果修改缺省banner
响应头server由两部分信息组成服务器名称/版本号,一般情况下,需要把这两部分信息隐藏。下面以把server信息替换为unknown为例,说明Nginx如何修改。
隐藏版本号
修改Nginx配置文件nginx.conf,在http节点中添加属性server_tokens off;。
打开Nginx配置文件nginx.conf
vim nginx.conf
添加server_tokens off
配置文件添加server_tokens off
保存配置文件,重新加载配置
:wq
./nginx -s reload
修改前后比对
修改前:
去除版本号前
修改后:
去除版本号后
修改服务器名称
Nginx未提供通过修改配置文件达到修改服务器名称的方法。需要通过修改Nginx源代码中对服务器名称定义,编译安装才能达到修改的目的。
修改源代码中对服务器名称的定义
cd nginx-1.18.0/src/http
vim ngx_http_header_filter_module.c
:wq
源代码修改前
源代码修改前
源代码修改后
源代码修改后
编译安装
cd nginx-1.18.0
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module --with-file-aio --with-stream
启动Nginx
编译完成,启动Nginx。
cd /usr/local/nginx/sbin
./nginx
查看效果
修改后的服务器名称