我们创建了一个容器映像,并通过该执行环境运行我们的剧本。
有 4 个域:
example1
域名有 ex1
IPexample2
和 example3
目前在同一个 ex2
IP 下工作example4
域名有 ex3
IP我的krb5.conf:
[logging]
default = FILE:/var/log/krb5libs.log
kdc = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmind.log
[libdefaults]
default_realm = example1.net
dns_lookup_realm = false
dns_lookup_kdc = false
ticket_lifetime = 24h
renew_lifetime = 7d
forwardable = true
[realms]
EXAMPLE1.NET = {
kdc = HOSTNAME.example1.net
admin_server = HOSTNAME.example1.net
}
EXAMPLE2.NET = {
kdc = HOSTNAME.example2.net
admin_server = HOSTNAME.example2.net
}
EXAMPLE3.NET = {
kdc = HOSTNAME.example3.net
admin_server = HOSTNAME.example3.net
}
EXAMPLE4.NET = {
kdc = HOSTNAME.example4.net
admin_server = HOSTNAME.example4.net
}
[domain_realm]
.example1.net = EXAMPLE1.NET
example1.net = EXAMPLE1.NET
.example2.net = EXAMPLE2.NET
example2.net = EXAMPLE2.NET
.example3.net = EXAMPLE3.NET
example3.net = EXAMPLE3.NET
.example4.net = EXAMPLE4.NET
example4.net = EXAMPLE4.NET
resolv.conf
:名称服务器 ex1
名称服务器 ex2
名称服务器 ex3
如果我更改
resolv.conf
,例如,将 ex1
保留在第二行,则无法连接,并且出现错误:“在获取初始凭据时无法联系领域‘example1’的任何 KDC。”
如果我将
ex1
移回到第一行,它就可以工作。但是,如果我将 ex3
(对应于 example4
)移至第三行,则不起作用。如果我将其保留在第一行,它将成功执行 ping 操作。
请帮忙!一个多月过去了,我还没能解决这个问题。
your text
我能够 nslookup
,并且 kinit
适用于所有域。我尝试过使用 /etc/hosts
文件,但它不起作用,所以我只是尝试使用 resolv.conf
。
我尝试过更改
resolv.conf
,但如果第一个名称服务器可以工作,那么第三个名称服务器就不行。
听起来这不是 Kerberos 问题,纯粹是 DNS 问题。
如果他们“知道”不同的数据,则您不能在resolv.conf中“堆叠”
nameservers
。系统将它们视为“平等”的替代方案,并且如果第一个名称服务器提供回复 – 即使该回复是“未找到域名”– 系统不会费心尝试第二个或第三个名称服务器;因为它确实收到了第一个的回复。
通常,“没有通用 DNS”问题可以通过设置 DNS 委托(“NS”记录)来解决,就像对公共互联网域名所做的那样 – 没有人将“名称服务器 ns1.google.com、名称服务器 ns1.facebook.com”放在一起。 com 等”在他们的 resolv.conf 中 – 但如果这在您的情况下不是一个选项(假设这些名称与真实的域名注册不对应),有一些方法可以在内部进行设置。
也就是说,首先部署您自己的 DNS 解析服务器(Unbound 是我最初的选择,但 Dnsmasq 或 BIND9 也可以);确保它可以解析各种互联网域;然后将其配置为您需要的每个内部域具有“存根区域”或“转发区域”。
存根地址:192.168.1.53区域“example1.com”{ | 服务器地址 { 192.168.1.53; };}; |