我在尝试使用 BIND 9.10 启用 GSS-TSIG 时遇到了问题。
在我开始描述我所做的事情之前,我想说我已经在另一个领域中完成了这件事,没有任何问题。所以我认为我遗漏了一些非常具体的东西。如果有人能帮助我调试这个问题,我会非常高兴。
开始吧。
我在 FreeBSD 10.0 上运行 BIND9 9.10.0P2_5,由我自己编译,启用了 GSSAPI_BASE 选项。我使用同一个二进制包将其部署到其他正常运行的域上。
named.conf
然后我在我的文件中启用了 GSS-TSIG :
options {
( … )
tkey-gssapi-keytab "/etc/krb5.keytab”;
( … )
};
zone “local.example.com" {
type master;
file "/usr/local/etc/namedb/dynamic/local.example.com";
notify yes;
check-names ignore;
allow-query { clients; };
allow-transfer { intnameservers; };
# allow-update {
# key "iq-rndc-key";
# domaincontrollers;
# };
update-policy {
grant * subdomain local.iq.ufrj.br. ANY;
};
};
zone "10.in-addr.arpa" {
type master;
file "/usr/local/etc/namedb/dynamic/10.in-addr.arpa";
notify yes;
allow-query { clients; };
allow-transfer { intnameservers; };
# allow-update {
# key "iq-rndc-key";
# domaincontrollers;
# };
update-policy {
grant * subdomain 10.in-addr.arpa. PTR TXT;
};
};
然后我使用 Samba4 和 Kerberos 加入了 AD 域,方式如下:
/etc/krb5.conf
创建具有以下内容的文件:
[libdefaults]
default_realm = EXAMPLE.COM
dns_lookup_realm = true
dns_lookup_kdc = true
ticket_lifetime = 24h
renew_lifetime = 7d
forwardable = yes
/usr/local/etc/smb4.conf
安装 Samba 4.1 并创建包含以下内容的文件:
[global]
security = ads
realm = EXAMPLE.COM
workgroup = EXAMPLE
kerberos method = secrets and keytab
client signing = yes
client use spnego = yes
log file = /var/log/samba4/%m.log
请求管理员 Kerberos 票证:
$ kinit Administrator
然后加入域并创建 keytab
$ net ads join createupn=dns/[email protected] -k
$ net ads keytab create -k
毕竟我已经成功收到了一张票,并成功创建了一个计算机帐户和一个服务主体帐户。
下一步是 chown bind,/etc/krb5.keytab
以便 BIND9 可以成功读取 keytab。
毕竟,什么都没起作用……GSS-TSIG 甚至没有在日志中给出错误,这令人沮丧。我尝试使用 named.conf 中的这些选项来调试它:
logging {
channel update_log {
file "/var/log/named/bind-ddns-updates.log";
severity debug;
print-category yes;
print-severity yes;
print-time yes;
};
category update {
update_log;
};
category update-security {
update_log;
};
};
但我在日志文件中没有看到任何有用的内容。
提前致谢,