配置Nginx解决http host头攻击漏洞【详细步骤】
- 前言
- 1、进入nginx目录下
- 2、修改nginx配置文件
- 3、添加上后重启配置文件
- Nginx常用基本命令
- 仰天大笑出门去,我辈岂是蓬蒿人
前言
大概内容:
安全系统渗透测试出host头攻击漏洞
,下面是解决步骤,本人已测过无问题。
1、进入nginx目录下
找到nginx存放的地方,一般存放路径/usr/local/nginx
进入到nginx/conf目录下
2、修改nginx配置文件
使用vi命令vi nginx.conf命令进入配置文件
点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;
}
}
样例
添加完成后点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