缺省情况下,Kerberos 会检查存储在本地 /etc/krb5/krb5.keytab 文件中的 host 主体的 KDC 与颁发票证授予票证 (ticket-granting ticket, TGT) 的 KDC 是否相同。此检查功能 (verify_ap_req_nofail) 可防止 DNS 欺骗攻击。
但是,对于 host 主体不可用的客户机配置,必须禁用此检查功能。以下配置要求禁用此检查功能:
客户机 IP 地址以动态方式分配,例如 DHCP 客户机。
客户机未配置为托管任何服务,所以没有创建 host 主体。
未在客户机上储存主机密钥。
要禁用 TGT 验证,请将 krb5.conf 文件中的 –verify_ap_req_nofail 选项设置为 false。可以在 krb5.conf 文件的 [libdefaults] 或 [realms] 部分中输入 –verify_ap_req_nofail 选项。[libdefaults] 部分中的设置用于所有领域:
client # pfedit /etc/krb5/krb5.conf [libdefaults] default_realm = EXAMPLE.COM verify_ap_req_nofail = false ...
如果该选项位于 [realms] 部分,则该设置仅应用到定义的领域。有关此选项的更多信息,请参见 krb5.conf(4) 手册页。