首页 火币交易所文章正文

Ngi中如何根据客户端IP地址控制访问

火币交易所 2022年07月25日 08:23 1022 Connor

NGINX Web 服务器安全加固有多种方法,其中一种是基于 IP 地址的访问控制。本指南解释了如何通过在 NGINX 中基于客户端的 IP 地址控制访问来保护 Web 应用程序。

NGINX中基于客户端IP地址控制访问

NGINX 中的ngx_ 地址的访问。您可以使用允许和拒绝指令激活它。

顾名思义,allow 指令允许访问特定的 IP 地址、网络、Unix 套接字或全部(前面实体的关键字),而拒绝指令拒绝访问特定的 IP 地址、网络、Unix 套接字或全部。

这两个指令在 服务的访问的示例:

upstream app_api {

keepalive 100;

server 10.1.1.50:5000;

server 10.1.1.71:5001;

server {

listen 80;

server_name _;

access_log /var/log/nginx/app_api_access.log main;

展开全文

error_log /var/log/nginx/app_api_error.log debug;

root /usr/share/nginx/html/;

location / {

try_files $uri /api;

location /api {

proxy_read_timeout 3600;

proxy_connect_timeout 3600s;

keepalive_timeout 15;

send_timeout 300;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

proxy_set_header X-Forwarded-Proto $scheme;

proxy_set_header Host $;

proxy_redirect off;

proxy_;

proxy_set_header Connection "";

proxy_pass ;

#list of allowed IPs to access API

allow 10.10.10.20;

allow 10.10.40.29;

allow 192.168.2.23;

allow 192.168.10.0/24;

deny all;

在上面的示例中,仅允许10.10.10.20、10.10.40.29、192.168.2.23 IP 地址以及192.168.10.0/24网络中的任何 IP 地址访问任何代理 API 端点的请求。来自任何其他 IP 地址或网络或 UNIX 域套接字的请求将被拒绝。

NGINX 将向客户端响应 403 禁止错误,如图所示。

当您检查/var/log/nginx/app_api_error.log错误日志时,您会发现类似于以下屏幕截图中的条目:

# cat /var/log/nginx/app_api_error.log debug

本指南在NGINX中基于客户端IP地址控制访问到此结束,你比较常用那一种呢?

发表评论

火币交易所(huobi) | 火币全球站官网入口 备案号:川ICP备66666666号