testcookie_refresh_encrypt_cookie_iv

指令 'testcookie_refresh_encrypt_cookie_iv' 配置用于使用 AES-128 加密算法对挑战 cookie 进行加密的初始化向量。

语法testcookie_refresh_encrypt_cookie_iv base64_encoded_iv;
默认值none
上下文http, server, location
参数1

说明

在 NGINX testcookie 机器人缓解模块中,指令 'testcookie_refresh_encrypt_cookie_iv' 用于指定 AES-128 在 CBC 模式下加密时使用的初始化向量 (IV)。该指令接受单个参数,该参数应为表示在对挑战 cookie 进行加密时使用的 IV 的 base64 编码字符串。初始化向量对于 AES 等加密算法至关重要,因为它可确保相同的明文在多次加密后产生不同的密文,从而增强 cookie 值的安全性。

使用此指令时,指定的 IV 应唯一且随机以维持较高安全性。不当配置的 IV 可能削弱加密效果,可能使攻击者利用加密数据中可预测的模式。此外,开发人员应确保所提供的 IV 格式符合预期规范,否则可能导致运行时错误或在模块实现的挑战-响应过程中导致 cookie 处理失败。该指令可以放置在包括 'http'、'server' 或 'location' 在内的不同上下文中,便于在不同服务器配置中使用。

在实践中,该指令与其他 testcookie 指令一起使用,以有效管理和保护基于 cookie 的挑战响应,帮助缓解机器人流量。对于使用此类缓解措施的 Web 服务用户而言,它尤其有助于维护会话完整性和安全性。

配置示例

http {
    testcookie on;
    testcookie_refresh_encrypt_cookie_iv 'Y2hhbGxlbmdl'; # Example base64_encoded IV
}

确保 IV 在每个会话中都是随机且唯一的,以防止安全缺陷。

Base64 encoding 必须正确格式化;否则,NGINX 可能无法启动。

调整此指令需要相应地更新 client-side 的解密过程。

← 返回所有指令