配置Nginx解决http host头攻击漏洞【详细步骤】
作者:mmseoamin日期:2024-02-22

配置Nginx解决http host头攻击漏洞【详细步骤】

  • 前言
  • 1、进入nginx目录下
  • 2、修改nginx配置文件
  • 3、添加上后重启配置文件
  • Nginx常用基本命令
  • 仰天大笑出门去,我辈岂是蓬蒿人

    前言

    大概内容:

    安全系统渗透测试出host头攻击漏洞,下面是解决步骤,本人已测过无问题。


    1、进入nginx目录下

    找到nginx存放的地方,一般存放路径/usr/local/nginx

    进入到nginx/conf目录下

    配置Nginx解决http host头攻击漏洞【详细步骤】,在这里插入图片描述,第1张

    2、修改nginx配置文件

    使用vi命令vi nginx.conf命令进入配置文件

    配置Nginx解决http host头攻击漏洞【详细步骤】,在这里插入图片描述,第2张

    点i添加内容

    • listen写服务的端口号
    • server_name 填ip地址,多个地址用空格代替如果请求的地址是域名就把域名放上
    • if判断里把地址放进去用|隔开

      注意是在http下添加下面的内容

    server {
    		
            listen 9000;
            server_name 127.0.0.1 192.168.1.66 www.yang.cn localhost;
            if ($http_Host !~* ^192.168.1.66|127.0.0.1|www.yang.cn|localhost$)
            {
                return 403;
            }                
        }
    

    样例

    配置Nginx解决http host头攻击漏洞【详细步骤】,在这里插入图片描述,第3张

    添加完成后点esc退出编辑模式,:wq保存

    3、添加上后重启配置文件

    ./nginx -s reload

    测试能否访问,如果不能检查是不是ip不对;

    如果报错nginx: [emerg] "server" directive is not allowed here in /usr/local/nginx/conf/nginx.conf:38,检查{}符号有没有对应上是不是少了个}

    如果没有报错能正常访问项目,就是配好了

    Nginx常用基本命令

    1、启动Nginx服务器命令:
    到sbin路径:cd /usr/local/nginx/sbin
    启动Nginx服务器: ./nginx
    2、查看Nginx 版本号命令:
    ./nginx -v
    或
    ./nginx -V
    3、查看Nginx进程命令:
    ps aux|grep nginx
    4、检查Nginx配置文件是否正确命令:
     ./nginx -t
    指定检测特定Nginx配置文件:-c表示configuration,指定配置文件
    ./nginx -t -c /usr/local/nginx/conf/nginx.conf
    5、Nginx服务器指定启动配置文件命令:
    ./nginx -c /usr/local/nginx/conf/nginx.conf
    6、暴力停止Nginx服务器命令:
    ./nginx -s stop
    7、优雅停止Nginx服务器命令:
    ./nginx -s quit
    8、Nginx重新加载配置文件命令:
    ./nginx -s reload
    

    仰天大笑出门去,我辈岂是蓬蒿人