在某些场景下,我们会使用 Nginx 反向代理将内部业务系统发布到公网。通常一台 Nginx 服务器会代理并承载多个网站,这也使其成为互联网扫描器和恶意请求的重点目标。

互联网上的一些扫描器会采集和映射 IP 资产情报,包括域名与 IP 的关联关系、所属机构和地理位置等信息,从而进行资产识别或构建攻击面。此外,部分未绑定 Host 的恶意请求也会直接针对服务器 IP 发起访问探测。

为降低此类风险,我们需要对“直接通过 IP 访问 Nginx”这一行为进行限制和防护,以避免被恶意收集、分析或利用,从而有效保障代理站点和源业务系统的资产安全与服务稳定。

最终实现效果,使用 IP 通过 HTTP 方式访问 Nginx 被阻断,通过 HTTPS 方式访问握手失败。

20251128221228

配置方式,配置 Nginx 的 Default Server:

1
2
3
4
5
6
7
8
9
server {
listen 80 default_server;
listen [::]:80 default_server;
listen 443 ssl default_server;
listen [::]:443 ssl default_server;
server_name _;
ssl_reject_handshake on;
return 444;
}