在当今的互联网环境中,保护服务器安全至关重要。如果你使用 Nginx 作为反向代理服务器,那么通过设置 IP黑名单 来阻止恶意用户或爬虫是一种非常有效的方法。本教程将从零开始,一步步教你如何在 Nginx 中配置 IP 黑名单,即使你是新手也能轻松上手。
Nginx 反向代理 是指 Nginx 接收客户端请求后,将请求转发给后端服务器(如应用服务器、API 服务等),再将后端响应返回给客户端。这种方式不仅可以提高性能、负载均衡,还能增强安全性。
某些 IP 地址可能频繁发起攻击、暴力破解、爬取敏感数据等行为。通过将这些 IP 加入 IP黑名单,你可以直接拒绝它们的访问,从而提升 网络安全 等级,减少服务器资源浪费。
首先,我们创建一个专门存放黑名单 IP 的文件,方便管理。建议放在 /etc/nginx/ 目录下:
# 创建黑名单文件sudo nano /etc/nginx/blacklist.conf 在打开的文件中,按如下格式添加要屏蔽的 IP(每行一个):
deny 192.168.1.100;deny 203.0.113.45;deny 198.51.100.0/24; # 屏蔽整个子网 保存并退出(在 nano 中按 Ctrl+O 回车,再按 Ctrl+X)。
接下来,我们需要修改你的站点配置文件(通常位于 /etc/nginx/sites-available/ 或 /etc/nginx/conf.d/)。
假设你的反向代理配置如下:
server { listen 80; server_name example.com; location / { proxy_pass http://backend_server; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; }} 现在,在 server 块的顶部加入一行 include 指令,引入黑名单文件:
server { listen 80; server_name example.com; include /etc/nginx/blacklist.conf; # ← 在这里引入黑名单 location / { proxy_pass http://backend_server; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; }} 修改配置后,务必先测试语法是否正确,避免 Nginx 启动失败:
sudo nginx -t 如果看到 test is successful,说明配置无误。接着重载 Nginx 使配置生效:
sudo systemctl reload nginx 你可以从被屏蔽的 IP 尝试访问网站,应该会看到 403 Forbidden 错误页面。这表示 Nginx 配置 已成功拦截该 IP。
blacklist.conf 文件,无需重启 Nginx,只需重载即可。通过本教程,你已经学会了如何在 Nginx 反向代理 中配置 IP黑名单,有效提升服务器的 网络安全 防护能力。这种简单而强大的方法,是每个运维人员都应掌握的基础技能。希望这篇教程对你有帮助!
关键词:Nginx反向代理、IP黑名单、网络安全、Nginx配置
本文由主机测评网于2025-12-01发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://vpshk.cn/2025121785.html