带有 LUA 过滤器的 PowerDNS BIND 后端

带有 LUA 过滤器的 PowerDNS BIND 后端

PowerDNS 允许您使用 LUA 脚本过滤 AXFR 上的记录。
我正在尝试让它更改 NS 记录。

看来 PowerDNS 甚至没有尝试运行我的脚本。区域转移成功,但转移的区域没有变化。

我在 RHEL7 上从 EPEL 安装了 pdns 包(版本为 3.4.5)。我将其设置为混合模式,因为元数据表应该位于 sqlite 数据库。

/etc/pdns/pdns.conf

launch=bind

bind-config=/etc/pdns/bind/named.conf
bind-hybrid=yes
bind-dnssec-db=/etc/pdns/bind/metadata.db

slave=yes

/etc/pdns/bind/named.conf

options {
    directory "/etc/pdns/bind";
};

zone "example.com" IN {
    type slave;
    masters { 192.0.2.20; };
    file "example.com.zone";
};

SQLite 数据库是用 创建的pdnssec create-bind-db /etc/pdns/bind/metadata.db
它目前包含

sqlite> .schema
CREATE TABLE domainmetadata ( id INTEGER PRIMARY KEY, domain     VARCHAR(255) COLLATE NOCASE, kind       VARCHAR(32) COLLATE NOCASE, content    TEXT);
CREATE INDEX domainmetanameindex on domainmetadata(domain);
CREATE TABLE cryptokeys ( id INTEGER PRIMARY KEY, domain VARCHAR(255) COLLATE NOCASE, flags INT NOT NULL, active BOOL, content    TEXT);
CREATE INDEX domainnameindex on cryptokeys(domain);
CREATE TABLE tsigkeys ( id INTEGER PRIMARY KEY, name VARCHAR(255) COLLATE NOCASE, algorithm VARCHAR(50) COLLATE NOCASE, secret VARCHAR(255));
CREATE UNIQUE INDEX namealgoindex on tsigkeys(name, algorithm);

sqlite> SELECT * FROM domainmetadata;
1|example.com|LUA-AXFR-SCRIPT|/etc/pdns/lua/change-ns.lua

是否可以将 LUA 过滤器与 BIND 后端一起使用?

相关内容