如何隐藏 Nginx 是反向代理?

如何隐藏 Nginx 是反向代理?

运行命令nmap -A -sS mysite.com,显示服务器是Nginx,并且用作代理。是否可以隐藏此信息?

命令输出:80/tcp open http nginx (reverse proxy)

我使用的是 Nginx 1.18.0。在我的 nginx.conf 中,我进行了以下设置(一些非安全设置已被隐藏。“...”表示。):

load_module modules/ngx_http_headers_more_filter_module.so;

user                 www-data;
pid                  /run/nginx.pid;
worker_processes     auto;
worker_rlimit_nofile 65535;

events {
    multi_accept       on;
    worker_connections 65535;
}

http {
     ...
     more_set_headers       'Server: none';
     server_tokens          off;
     ...

    # Connection header for WebSocket reverse proxy
    map $http_upgrade $connection_upgrade {
        default upgrade;
        ""      close;
    }

    # Load configs
    include /etc/nginx/conf.d/*.conf;
    include /etc/nginx/sites-enabled/*;

}

答案1

尝试删除more_set_headers指令并再次运行 Nmap。我注意到,当我在 nginx.conf 文件中设置指令时,Nmap 将 nginx 检测为反向代理,但当我注释掉指令时,它却无法检测到它。

相关内容