allow

NGINX RTMP 模块中的 'allow' 指令通过允许特定 IP 地址来限制流媒体访问。

语法allow IP | CIDR;
默认值none
上下文
参数1-2

说明

在 RTMP 应用上下文中使用 'allow' 指令来指定哪些 IP 地址被允许发布或播放流。使用此指令时,它与 'deny' 指令配合使用以管理流操作的访问控制。可以为该指令指定一个或两个参数:要么是单个 IP 地址(例如,'127.0.0.1'),这将仅允许该地址访问,要么是用于表示 IP 范围的 CIDR 表示法(例如,'192.168.1.0/24')。如果没有存在任何 'deny' 指令,则任何未被明确拒绝的地址都将被允许访问;在未定义 'allow' 时,将应用默认的 'deny all' 行为。

'allow' 指令的放置顺序非常关键;它必须出现在任何 'deny' 指令之前才能正确生效。此外,如果同时使用 'allow' 和 'deny' 指令,则后者将具有优先权,从而实施更严格的访问控制。因此,这些指令声明的顺序决定了 RTMP 应用访问控制策略的实际效果。

配置示例

rtmp {
    server {
        listen 1935;
        application myapp {
            allow publish 127.0.0.1;
            deny publish all;
            allow play all;
        }
    }
}

确保 'allow' 出现在 'deny' 之前,以保证正确的优先级。

错误使用 CIDR 表示法可能导致意外的访问权限。

如果未指定 'deny',且 'allow' 使用不明确,可能导致访问安全性降低。

← 返回所有指令