1、使用deny
指令:在Nginx的配置文件中,可以使用deny
指令来禁止特定IP的访问。例如,要禁止IP地址为192.168.1.100的访问,可以在配置文件中添加以下内容:
location / {
deny 192.168.1.100;
...
}
这样,当有请求来自IP地址为192.168.1.100时,Nginx将返回403 Forbidden错误。
2、使用allow
和deny
指令的组合:可以通过使用allow
和deny
指令的组合来限制IP访问。例如,要允许IP地址为192.168.1.0/24的访问,但禁止IP地址为192.168.1.100的访问,可以在配置文件中添加以下内容:
location / {
allow 192.168.1.0/24;
deny 192.168.1.100;
...
}
这样,除了IP地址为192.168.1.100的请求之外,其他IP地址都将被允许访问。
3、使用HTTP模块的limit_conn
和limit_req
指令:除了使用deny
和allow
指令来禁止特定IP的访问外,还可以使用HTTP模块的limit_conn
和limit_req
指令来限制特定IP的连接数和请求频率。这些指令可以在Nginx的配置文件中的http
块中设置。例如,要限制IP地址为192.168.1.100的连接数为1,并限制其请求频率为10个请求/秒,可以在配置文件中添加以下内容:
http {
...
limit_conn_zone $binary_remote_addr zone=conn_limit_per_ip:10m;
limit_conn conn_limit_per_ip 1;
limit_req_zone $binary_remote_addr zone=req_limit_per_ip:10m rate=10r/s;
limit_req zone=req_limit_per_ip burst=20;
...
}
这样,当IP地址为192.168.1.100的客户端的连接数超过1或请求频率超过10个请求/秒时,Nginx将限制其访问。 通过以上几种方法,可以在Nginx中有效地禁用特定IP的访问。
原文地址:https://blog.csdn.net/weixin_39934453/article/details/131582413
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_24206.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!