PowerDNS позволяет фильтровать записи в AXFR с помощью сценария LUA.
Я пытаюсь изменить записи NS.
Похоже, PowerDNS даже не пытается запустить мой скрипт. Передача зоны прошла успешно, но переданная зона не изменилась.
Я установил пакет pdns на RHEL7 из EPEL (версия 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?