Nginx(17)-安全管控之防暴露、限制访问、防DDos攻击、防爬虫、防非法引用

        安全是每个系统都需要考虑的关键因素,Nginx在这方面提供了丰富的功能,使我们可以就实际情形做很精细调整。这些功能包括防信息暴露、客户端访问限制、通讯加密、防DDos攻击、防爬虫、防非法引用及防非法域名请求等。

目录

防信息暴露

关闭版本号

关闭目录列表

客户端访问限制

限制客户端地址访问

国家或城市位置限制访

禁止不安全的HTTP方法

HTTPS加密

防DDos攻击

防非法域名指向

防爬虫

利用请求头变量防爬虫

使用Robots.txt文件防爬虫

最佳实践

限制系统访问权限

定期巡检

备份数据

检查日志文件

问题排查

安装最新版本

防信息暴露

关闭版本号

        Nginx默认会在HTTP的响应头中包含服务器版本号信息,攻击者可以利用此信息进行攻击和细节披露。可关闭版本号的显示,指令如下:

server_tokens off;

关闭目录列表

        如果Nginx的目录没有默认的index文件,会自动展示目录下的文件列表,这可能会暴露敏感信息。可以通过禁止自动目录列表的方式来阻止此行为。
示例代码:

location / {
    autoindex off ;
}

客户端访问限制

        Nginx可以对客户端进行访问限制。

限制客户端地址访问

直接通过allow或deny限制某些客户端地址的访问。指令如下:

allow address | CIDR | unix: | all;  

deny address | CIDR | unix: | all;

允许或不允许客户端访问。

参数:address:直接IP地址形式;CIDR:无类别域间路由;unix: unix套接字;all-所有

示例:

location / {
    # 将按顺序检查规则,直到找到第一个匹配项
    # 单独ip 192.168.1.1可访问
    deny  192.168.1.1;
    # CIDR: 192.168.1.1-192.168.1.255(掩码:255.255.255.0)可访问
    allow 192.168.1.0/24;
    # CIDR: 10.1.1.1-10.1.255.255(掩码:255.255.0.0)可访问 (注意不包括10.1.0.x)
    allow 10.1.1.0/16;
    # IPv6网络2001:0db8::/32进行访问
    allow 2001:0db8::/32;
    # 符合上述之外的不可访问
    deny  all;
}

国家或城市位置限制访

        可以通过国家或城市位置限制访问,详见精通Nginx(12)-流量管控

禁止不安全的HTTP方法

默认情况下,Nginx支持多种HTTP方法,包括GETHEADPOSTPUTDELETEMKCOLCOPYMOVEOPTIONSPRO

  • 17
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

乐享技术

每一个打赏,都是对我最大的鼓励

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值