Nginx 环境屏蔽拉黑 IP 网段地址的方法
最近网站老是让恶意攻击、采集复制、甚至镜像网站和恶意扫描文件,防不胜防,建个博客操不完的心,想要根除这些问题,就要用到 Nginx 的 IP 黑名单了,它可以有效的屏蔽恶意地址,只需要使用到 deny 命令,如何在 Nginx 使用 deny 命令进行屏蔽,就往下看吧。
操作前了解下 Nginx 的“deny”和“allow”命令,deny 为“禁止”,allow 为“允许”,要注意的是配置中 allow 必须在 deny 的前面,否则 allow 会不生效,其中可能也或许会用到“all”命令,它代表“全部”的意思,
就比如想“禁止”或“允许”所有地址,则使用“allow all”或“deny all”,如使用“deny all”屏蔽所有地址,也可以使用“allow”单独放行,只使用“deny”进行屏蔽地址或网段,无需添加“allow all”,详解以 192.168.1.1 网段为示例。
# 屏蔽命令详解 allow all; //放行所有 deny all; //屏蔽所有 allow 192.168.1.1; //放行单独IP deny 192.168.1.1; //屏蔽单独IP deny 192.0.0.0/8; //屏蔽 192.0.0.1 到 192.255.255.254 段 deny 192.168.0.0/16; //屏蔽 192.168.0.1 到 192.168.255.254 段 deny 192.168.1.0/24; //屏蔽 192.168.1.1 到 192.168.1.254 段
打开需要配置的 nginx.conf 文件,一般情况下路径为“/usr/local/nginx/conf”下,屏蔽数量小的情况下可以参考上面详解在 nginx.conf 内的“server”中添加 deny 的 IP 地址,如果量大建议使用文件格式屏蔽,单独新建“ipblack.conf”黑名单文件,名字随意但要注意路径,实例如下:
# 默认配置文件路径 /usr/local/sbin/nginx # 配置单独屏蔽和文件屏蔽 server { listen 80; listen [::]:80; listen 443 ssl http2; listen [::]:443 ssl http2; ... deny 192.168.1.1; //单独屏蔽 deny 192.168.2.1; //单独屏蔽 # 二选一 include ipblack.conf; //通过文件屏蔽, ... }
使用黑名单文件,只需要把“deny”屏蔽地址放进去就可以,一行一条,配置完成重启 Nginx 即可生效,彧繎更加推荐使用单独文件管理,这样方便还不容易导致新手出错,希望对大家有所帮助吧。
原创文章,作者:凌哥SEO,如若转载,请注明出处:https://www.seoxyg.com/8834.html