2017-08-29 63 views
0

嘗試從我的客戶端應用程序下載位於我的服務器上的文件時,我出現不一致的錯誤。錯誤是請求URL與證書CN不匹配。在錯誤中,請求URL是服務器IP,但證書上的CN是域名,證書中沒有IP的SAN條目,所以我想這是導致錯誤的原因。證書有2個SAN條目,比如mydomain.com和www.mydomain.com。
我的客戶端應用程序使用請求的域名,所以這裏是我的問題: 哪裏的域名被更改爲IP?
我檢查了我的IIS服務器,我的webapp中沒有重寫規則(都不是重定向)。我確實有一個綁定我的IP地址,但這可能是問題嗎?什麼改變了請求的URL?

回答

0

我不知道正確的證書的具體內容,服務器的設置,多個未指定的系統和應用程序的行爲以及您認爲正確的URL的行爲。但我可以成像以下問題:

  • 根據應用的不同,可能會或可能不會使用Server Name Indication (SNI),並根據這可能導致對服務於不同的證書服務器的設置。
  • 根據應用程序的不同,它可能會查看CN進行驗證,或者可能不會。該標準指出,如果沒有SAN(主題備用名稱)DNS記錄,但只有諮詢CN才能諮詢CN,即使沒有SAN DNS記錄,即使存在SAN DNS記錄,其他用戶也不會諮詢CN但只有一個SAN IP記錄。有些人堅持不看CN,即使根本沒有SAN記錄。
  • 如果該URL不是每個域,而是一個IP地址,則某些應用程序可以正確地檢查SAN IP記錄,一些檢查會針對CN,一些會忽略任何SAN IP記錄,但錯誤地指望將IP地址包含在SAN DNS記錄中。
  • 除此之外,不同的應用程序實際上可能使用稍微不同的URL,即某些example.com,某些www.example.com,一些開始於HTTP,一些開始於HTTPS。這可能會導致不同的證書或重定向,具體取決於服務器的設置。

因此,爲了減少問題,請確保您只有一個證書獲得服務,無論是否使用SNI,無論使用哪個可能的URL。還要確保證書實際上包含您期望的所有域名作爲SAN DNS記錄。如果您希望通過URL中的IP地址而不是域來訪問該站點,請確保您有SAN IP和SAN DNS記錄。此外,您擁有的任何重定向都應指向完全相同的域名或IP地址。

一旦完成並且問題仍然存在,請嘗試在Stackoverflow的新帖子中添加足夠的有關網站設置,證書內容以及確切問題的詳細信息,以便問題可以由其他人和他們複製可以幫助您調試剩餘的問題。

+0

抱歉,如果您談論客戶端或服務器應用程序,則很難理解;我在這方面也澄清了我的問題。謝謝你回答 – guillaume

+0

@guillaume:我只是在這裏談論客戶網站檢查。但是根據您的信息不可能說您的URL中的主機名被更改爲IP地址。這可能是你沒有檢測到的一些重寫,或者它可能是客戶端中的錯誤。如果問題可以通過瀏覽器複製,您可以使用瀏覽器開發工具精確查看接收到的請求和響應,從而找出使用IP而不是主機名的來源。 –