auth_delay

auth_delay 指令在认证响应中引入可配置的延迟。 — NGINX HTTP Core

auth_delay
httpserverlocation
语法auth_delay time;
默认值none
上下文http, server, location
模块NGINX HTTP Core
参数1

说明

`auth_delay` 指令旨在在处理认证请求时引入特定的延迟。通过增加延迟,它有助于缓解暴力破解攻击并提高安全性,因为这会使攻击者在短时间内猜测凭证变得更加困难。该指令可以接受多种格式的时间值(例如秒或分钟),从而在配置上提供灵活性。例如,你可以配置在每次认证失败之后强加 5 秒的延迟。 在实现 `auth_delay` 时,它可以在不同的上下文中指定,包括 `http`、`server` 和 `location`。这意味着你可以全局应用延迟,或在更细粒度的级别应用,从而根据应用的特定部分制定定制的安全措施。虽然引入认证延迟可以提高安全性,但如果设置过高也会影响用户体验;因此在配置该指令时应找到适当的平衡。 此外,在使用 `auth_delay` 时,管理员应警惕合法请求响应时间可能增加,因此根据观察到的流量模式和威胁级别进行监控和相应调整至关重要。通常建议从最小延迟开始,并根据所保护资源的敏感性及遇到的威胁类型逐步增加延迟。

配置示例

http {
    auth_delay 5s;
}

server {
    location /login {
        auth_delay 3s;
    }
}

将延迟设置得太高可能会让合法用户感到沮丧。

此指令仅适用于认证请求;不会影响非认证操作。