2015-10-28 217 views
0

我知道Kerberos不能與IP地址協同工作,它只依賴於域名和正確的DNS條目。Kerberos:通過IP地址訪問主機

但我發現舊版本的overthere庫允許使用Kerberos身份驗證的IP地址。

我從overthere提取的代碼,並創建了一個證明https://github.com/igolikov/KerberosWithIP

它使用Apache的HttpClient發送的WSMan請求發送到Hyper-V主機小型的Java項目。

我還發現,它與HttpClient的4.3.3,它不與HttpClient的4.4.1

工作,它是如何可能的,它的工作原理與IP?

UPD1。我想httpclient或sun.security中的某些東西可能會使用反向DNS查找。我試圖用Wireshark攔截流量,並發現1 Revers DNS查找(in-addr.arpa),但它迴應「沒有這樣的主機」,因爲默認DNS服務器無法爲此IP反向DNS。

UPD2。這裏是服務器的配置 有主機名和IP地址

SPN(1) =  WSMAN/10.10.64.60 1+=1 
SPN(1) =  HOST/somehost.corp.org.com 1+=1 
SPN(1) =  HOST/somehost 1+=1 
+0

你的問題是什麼? – hexafraction

+0

對不起,忘了問。它如何與IP協同工作? – John

回答

1

的Kerberos,而不DNS工作得很好的SPN,問題解決了DNS是同意在同一服務主體使用的連接的兩側。如果我使用kerberos API將該主體修復爲標準主體,那麼只要服務器端具有該主鍵中的prinicpal,它將繼續工作。

I.E.你必須知道你所連接的服務所使用的Kerberos委託人使用之前,你可以連接。大多數的服務主體是形式

service/dns.name.of.host 

,但作爲客戶端軟件知道用什麼「莫名其妙」的服務主體可以,只要是任何東西。