我们在哥斯达黎加有一个分支机构,那时候我们已经使用AD实施了一个SSO代理服务器,并且SSO工作正常。 就在最近,我们在现场实施了一个RODC。 一旦发生了,没有人能够validation,我无法解决这个问题。 我删除了用于kerberos身份validation的AD对象,并运行以下命令:
msktutil -c -b "CN=COMPUTERS" -s HTTP/PROXY.domain.com -k /etc/squid3/PROXY.keytab --computer-name PROXY-K --upn HTTP/PROXY.domain.com --server dc1.domain.com --verbose
该命令实际上在AD中创build对象,但不设置密码。 我得到以下错误:
错误:krb5_set_password_using_ccache失败(无法联系所请求域的任何KDC)错误:set_password失败
我确信这台机器可以parsing域控制器。
在这一点上,我迷路了。 已经争取了一个月的这个开关,真的可以使用一些指导。 我有其他四个相同的鱿鱼代理不坐在RODC后面,完美的工作。
我假设RODC运行正常,即:Kerberos正常,AD DS正常运行,等等。
我想我的下一步是捕获一个networking跟踪,只是过滤DNS和Kerberos,然后看看客户端在做什么。
— 07/01/2017 —
我可以看到在172.26.48.25和172.21.1.19之间发生了Kerberos握手。 但是,两个AS-REQ(身份validation服务请求)响应失败,并经常出现KRB5KDC_ERR_PREAUTH_REQUIRED。 这是Kerberos 5预期的一次。看到它两次是奇怪的, 通常表示KDC和Kerberos客户端之间的时间同步问题。
但是,我们然后看到客户端请求服务票证。 KDC的票证授予服务(TGS)部分以KRB5_NT_UNKNOWN(Kerberos名称types未知)做出响应。 因此,我可能会多调查一下这个错误,因为如果初始身份validation失败,我通常不希望客户端提前申请服务票据。
我决定使用最新版本的msktutil在Ubuntu的更高版本上构build一个新的代理,实际上它正在工作。 我想我只是迁移所有的数据,并在下一个维护时段交换IP。