共用方式為


針對 intune Microsoft SCEP 憑證配置檔的裝置對 NDES 伺服器通訊進行疑難解答

使用下列資訊來判斷接收和處理 Intune 簡單憑證註冊通訊協定 (SCEP) 憑證配置檔的裝置是否可以成功連絡網路裝置註冊服務 (NDES),以提出挑戰。 在裝置上,會產生私鑰,並將憑證簽署要求 (CSR) 和挑戰從裝置傳遞至 NDES 伺服器。 若要連絡 NDES 伺服器,裝置會使用 SCEP 憑證配置檔中的 URI。

本文參考 SCEP 通訊流程概觀的步驟 2

檢閱來自裝置之連線的 IIS 記錄

網際網路資訊服務 (IIS) 記錄檔包含所有平臺的相同類型專案。

  1. 在 NDES 伺服器上,開啟下列資料夾中找到的最新 IIS 記錄檔: %SystemDrive%\inetpub\logs\logfiles\w3svc1

  2. 搜尋記錄檔中是否有類似下列範例的專案。 這兩個範例都包含狀態 200,其出現在結尾附近:

    fe80::f53d:89b8:c3e8:5fec%13 GET /certsrv/mscep/mscep.dll/pkiclient.exe operation=GetCACaps&message=default 80 - fe80::f53d:89b8:c3e8:5fec%13 Mozilla/4.0+(compatible;+Win32;+NDES+client) - 200 0 0 186 0.

    fe80::f53d:89b8:c3e8:5fec%13 GET /certsrv/mscep/mscep.dll/pkiclient.exe operation=GetCACert&message=default 80 - fe80::f53d:89b8:c3e8:5fec%13 Mozilla/4.0+(compatible;+Win32;+NDES+client) - 200 0 0 3567 0

  3. 當裝置連絡 IIS 時,會記錄mscep.dll的 HTTP GET 要求。

    檢閱此要求結尾附近的狀態代碼:

    如果未記錄連線要求,裝置與 NDES 伺服器之間的網路可能會封鎖來自裝置的連絡人。

檢閱裝置記錄以連線到 NDES

Android 裝置

檢閱 裝置 OMADM 記錄。 尋找類似下列範例的專案,這些範例會在裝置連線到 NDES 時記錄:

2018-02-27T05:16:08.2500000  VERB  Event  com.microsoft.omadm.platforms.android.certmgr.CertificateEnrollmentManager  18327    10  There are 1 requests
2018-02-27T05:16:08.2500000  VERB  Event  com.microsoft.omadm.platforms.android.certmgr.CertificateEnrollmentManager  18327    10  Trying to enroll certificate request: ModelName=AC_51bad41f-3854-4eb5-a2f2-0f7a94034ee8%2FLogicalName_39907e78_e61b_4730_b9fa_d44a53e4111c;Hash=1677525787
2018-02-27T05:16:09.5530000  VERB  Event  org.jscep.transport.UrlConnectionGetTransport  18327    10  Sending GetCACaps(ca) to https://<server>.msappproxy.net/certsrv/mscep/mscep.dll?operation=GetCACaps&message=ca
2018-02-27T05:16:14.6440000  VERB  Event  org.jscep.transport.UrlConnectionGetTransport  18327    10  Received '200 OK' when sending GetCACaps(ca) to https://<server>.msappproxy.net/certsrv/mscep/mscep.dll?operation=GetCACaps&message=ca
2018-02-27T05:16:21.8220000  VERB  Event  org.jscep.message.PkiMessageEncoder  18327     10 Encoding message: org.jscep.message.PkcsReq@2b06f45f[messageData=org.<server>.pkcs.PKCS10CertificationRequest@699b3cd,messageType=PKCS_REQ,senderNonce=Nonce [D447AE9955E624A56A09D64E2B3AE76E],transId=251E592A777C82996C7CF96F3AAADCF996FC31FF]
2018-02-27T05:16:21.8790000  VERB  Event  org.jscep.message.PkiMessageEncoder  18327     10  Signing pkiMessage using key belonging to [dn=CN=<uesrname>; serial=1]
2018-02-27T05:16:21.9580000  VERB  Event  org.jscep.transaction.EnrollmentTransaction  18327     10  Sending org.<server>.cms.CMSSignedData@ad57775

索引鍵專案包含下列範例文字字串:

  • 有1個要求
  • 傳送 GetCACaps(ca) 時收到 '200 OK' https://<server>.msappproxy.net/certsrv/mscep/mscep.dll?operation=GetCACaps&message=ca
  • 使用屬於 [dn=CN=<username>; serial=1] 的密鑰簽署 pkiMessage

IIS 也會在 NDES 伺服器的 %SystemDrive%\inetpub\logs\LogFiles\W3SVC1\ 資料夾中記錄連線。 範例如下:

fe80::f53d:89b8:c3e8:5fec%13 GET /certsrv/mscep/mscep.dll operation=GetCACert&message=ca 443 - 
fe80::f53d:89b8:c3e8:5fec%13 Dalvik/2.1.0+(Linux;+U;+Android+5.0;+P01M+Build/LRX21V) - 200 0 0 3909 0
fe80::f53d:89b8:c3e8:5fec%13 GET /certsrv/mscep/mscep.dll operation=GetCACaps&message=ca 443 - 
fe80::f53d:89b8:c3e8:5fec%13 Dalvik/2.1.0+(Linux;+U;+Android+5.0;+P01M+Build/LRX21V) - 200 0 0 421

iOS/iPadOS 裝置

檢閱裝置偵 錯記錄檔。 尋找類似下列範例的專案,這些範例會在裝置連線到 NDES 時記錄:

debug    18:30:53.691033 -0500    profiled    Performing synchronous URL request: https://<server>-contoso.msappproxy.net/certsrv/mscep/mscep.dll?operation=GetCACert&message=SCEP%20Authority\ 
debug    18:30:54.640644 -0500    profiled    Performing synchronous URL request: https://<server>-contoso.msappproxy.net/certsrv/mscep/mscep.dll?operation=GetCACaps&message=SCEP%20Authority\ 
default    18:30:55.483977 -0500    profiled    Attempting to retrieve issued certificate...\ 
debug    18:30:55.487798 -0500    profiled    Sending CSR via GET.\  
debug    18:30:55.487908 -0500    profiled    Performing synchronous URL request: https://<server>-contoso.msappproxy.net/certsrv/mscep/mscep.dll?operation=PKIOperation&message=MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgMFADCABgkqhkiG9w0BBwGggCSABIIZfzCABgkqhkiG9w0BBwOggDCAAgEAMYIBgjCCAX4CAQAwZjBPMRUwEwYKCZImiZPyLGQBGRYFbG9jYWwxHDAaBgoJkiaJk/IsZAEZFgxmb3VydGhjb2ZmZWUxGDAWBgNVBAMTD0ZvdXJ0aENvZmZlZSBDQQITaAAAAAmaneVjEPlcTwAAAAAACTANBgkqhkiG9w0BAQEFAASCAQCqfsOYpuBToerQLkw/tl4tH9E+97TBTjGQN9NCjSgb78fF6edY0pNDU+PH4RB356wv3rfZi5IiNrVu5Od4k6uK4w0582ZM2n8NJFRY7KWSNHsmTIWlo/Vcr4laAtq5rw+CygaYcefptcaamkjdLj07e/Uk4KsetGo7ztPVjSEFwfRIfKv474dLDmPqp0ZwEWRQGZwmPoqFMbX3g85CJT8khPaqFW05yGDTPSX9YpuEE0Bmtht9EwOpOZe6O7sd77IhfFZVmHmwy5mIYN7K6mpx/4Cb5zcNmY3wmTBlKEkDQpZDRf5PpVQ3bmQ3we9XxeK1S4UsAXHVdYGD+bg/bCafMIAGCSqGSIb3DQEHATAUBggqhkiG9w0DBwQI5D5J2lwZS5OggASCF6jSG9iZA/EJ93fEvZYLV0v7GVo3JAsR11O7DlmkIqvkAg5iC6DQvXO1j88T/MS3wV+rqUbEhktr8Xyf4sAAPI4M6HMfVENCJTStJw1PzaGwUJHEasq39793nw4k268UV5XHXvzZoF3Os2OxUHSfHECOj

索引鍵專案包含下列範例文字字串:

  • operation=GetCACert
  • 嘗試擷取發行的憑證
  • 透過 GET 傳送 CSR
  • operation=PKIOperation

Windows 裝置

在連線到 NDES 的 Windows 裝置上,您可以檢視 Windows 事件檢視器 裝置,並尋找成功連線的指示。 聯機會記錄為 DeviceManagement-Enterprise-Diagnostics-Provide> Admin 記錄裝置中的事件標識碼 36。

若要開啟記錄檔:

  1. 在裝置上,執行 eventvwr.msc 以開啟 Windows 事件檢視器。

  2. 展開 [應用程式和服務記錄>Microsoft>Windows>DeviceManagement-Enterprise-Diagnostic-Provider>Admin。

  3. 尋找類似下列範例的事件 36,其中已順利產生 SCEP:憑證要求密鑰行

    Event ID:      36
    Task Category: None
    Level:         Information
    Keywords:
    User:          <UserSid>
    Computer:      <Computer Name>
    Description:
    SCEP: Certificate request generated successfully. Enhanced Key Usage: (1.3.6.1.5.5.7.3.2), NDES URL: (https://<server>/certsrv/mscep/mscep.dll/pkiclient.exe), Container Name: (), KSP Setting: (0x2), Store Location: (0x1).
    

疑難解答狀態代碼 500

與下列範例類似的連線,狀態代碼為 500,表示 在驗證用戶權力未指派給 NDES 伺服器上的IIS_IUSRS群組之後 模擬用戶端。 狀態值 500 會出現在結尾:

2017-08-08 20:22:16 IP_address GET /certsrv/mscep/mscep.dll operation=GetCACert&message=SCEP%20Authority 443 - 10.5.14.22 profiled/1.0+CFNetwork/811.5.4+Darwin/16.6.0 - 500 0 1346 31

完成下列步驟以修正此問題:

  1. 在 NDES 伺服器上,執行 secpol.msc 以開啟本機安全策略。
  2. 展開 [ 本機原則],然後選取 [ 用戶權力指派]。
  3. 在右窗格中的驗證之後,按兩下 [模擬用戶端]。
  4. 選取 [新增使用者或群組...],在 [輸入要選取的物件名稱] 方塊中輸入IIS_IUSRS,然後選取 [確定]。
  5. 選取 [確定]。
  6. 重新啟動計算機,然後再次嘗試從裝置連線。

測試和疑難解答 SCEP 伺服器 URL

使用下列步驟來測試 SCEP 憑證配置檔中指定的 URL。

  1. 在 Intune 中,編輯您的 SCEP 憑證設定檔,並複製伺服器 URL。 URL 應該類似 https://contoso.com/certsrv/mscep/mscep.dll

  2. 開啟網頁瀏覽器,然後流覽至該 SCEP 伺服器 URL。 結果應該是: HTTP 錯誤 403.0 – 禁止。 此結果表示 URL 正常運作。

    如果您沒有收到該錯誤,請選取類似您看到之錯誤的連結,以檢視問題特定指引:

一般 NDES 訊息

當您瀏覽至 SCEP 伺服器 URL 時,您會收到下列網路裝置註冊服務訊息:

網路裝置註冊服務訊息的螢幕快照。

  • 原因:此問題通常是Microsoft Intune 連接器安裝的問題。

    Mscep.dll是 ISAPI 擴充功能,會攔截連入要求,並在正確安裝時顯示 HTTP 403 錯誤。

    解決方案:檢查 SetupMsi.log 檔案,以判斷是否已成功安裝 Microsoft Intune 連接器。 在下列範例中, 安裝成功完成 ,安裝 成功或錯誤狀態:0 表示安裝成功:

    MSI (c) (28:54) [16:13:11:905]: Product: Microsoft Intune Connector -- Installation completed successfully.
    MSI (c) (28:54) [16:13:11:999]: Windows Installer installed the product. Product Name: Microsoft Intune Connector. Product Version: 6.1711.4.0. Product Language: 1033. Manufacturer: Microsoft Corporation. Installation success or error status: 0.
    

    如果安裝失敗,請移除 Microsoft Intune 連接器,然後重新安裝。 如果安裝成功,而且您繼續收到一般 NDES 訊息,請執行 iisreset 命令以重新啟動 IIS。

HTTP 錯誤 503

當您瀏覽至 SCEP 伺服器 URL 時,您會收到下列錯誤:

HTTP 錯誤 503 的螢幕快照。服務無法使用。

此問題通常是因為 IIS 中的 SCEP 應用程式集區未啟動。 在 NDES 伺服器上,開啟 [IIS 管理員 ],然後移至 [應用程式集區]。 找出 SCEP 應用程式集區,並確認它已啟動。

如果未啟動 SCEP 應用程式集區,請檢查伺服器上的應用程式事件記錄檔:

  1. 在裝置上,執行 eventvwr.msc 以開啟 事件檢視器 並移至 Windows Logs> 應用程式。

  2. 尋找類似下列範例的事件,這表示收到要求時應用程式集區當機:

    Log Name:      Application
    Source:        Application Error
    Event ID:      1000
    Task Category: Application Crashing Events
    Level:         Error
    Keywords:      Classic
    Description: Faulting application name: w3wp.exe, version: 8.5.9600.16384, time stamp: 0x5215df96
    Faulting module name: ntdll.dll, version: 6.3.9600.18821, time stamp: 0x59ba86db
    Exception code: 0xc0000005
    

應用程式集區當機的常見原因

  • 原因 1:NDES 伺服器的受信任跟證書授權單位證書存儲中有中繼 CA 憑證(非自我簽署)。

    解決方案:從受信任的跟證書授權單位證書存儲移除中繼憑證,然後重新啟動 NDES 伺服器。

    若要識別受信任跟證書授權單位證書存儲中的所有中繼憑證,請執行下列 PowerShell Cmdlet: Get-Childitem -Path cert:\LocalMachine\root -Recurse | Where-Object {$_.Issuer -ne $_.Subject}

    具有相同發行和發行值之憑證是跟證書。 否則,它是中繼憑證。

    拿掉憑證並重新啟動伺服器之後,請再次執行 PowerShell Cmdlet 以確認沒有中繼憑證。 如果有,請檢查組策略是否會將中繼憑證推送至 NDES 伺服器。 如果是,請從組策略中排除 NDES 伺服器,然後再次移除中繼憑證。

  • 原因 2:憑證吊銷清單 (CRL) 中的 URL 已封鎖或無法連線到 Intune 憑證連接器所使用的憑證。

    解決方案:啟用其他記錄以收集詳細資訊:

    1. 開啟 事件檢視器,選取 [檢視],確定已核取 [顯示分析和偵錯記錄] 選項。
    2. 移至 [應用程式和服務記錄>] Microsoft>[Windows>CAPI2>作業],以滑鼠右鍵單擊 [作業],然後選取 [啟用記錄]。
    3. 啟用CAPI2記錄之後,請重現問題,並檢查事件記錄檔以針對問題進行疑難解答。
  • 原因 3:CertificateRegistrationSvc 上的 IIS 許可權已啟用 Windows 驗證

    解決方案:啟用 匿名驗證 並停用 Windows 驗證,然後重新啟動 NDES 伺服器。

    匿名驗證和 Windows 驗證許可權的螢幕快照。

  • 原因 4:NDESPolicy 模組憑證已過期。

    CAPI2 記錄檔(請參閱原因 2 的解決方案)會顯示與憑證有效期間外部所參考 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\MSCEP\Modules\NDESPolicy\NDESCertThumbprint 憑證相關的錯誤。

    解決方案:更新憑證並重新安裝連接器。

    1. 使用 certlm.msc 開啟本機計算機證書存儲,展開 [個人],然後選取 [ 憑證]。

    2. 在憑證清單中,尋找符合下列條件的過期憑證:

      • 預期用途的值客戶端驗證
      • [發行至] 或 [一般名稱] 的值符合 NDES 伺服器名稱。

      注意

      需要客戶端驗證擴充金鑰使用方式 (EKU)。 如果沒有此 EKU,CertificateRegistrationSvc 會傳回對 NDESPlugin 要求的 HTTP 403 回應。 此回應將會記錄在 IIS 記錄中。

    3. 按兩下憑證。 在 [ 憑證 ] 對話框中,選取 [詳細數據 ] 索引卷標,找出 [指紋 ] 欄位,然後確認值符合登錄子機碼的值 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\MSCEP\Modules\NDESPolicy\NDESCertThumbprint

    4. 選取 [ 確定 ] 以關閉 [ 憑證 ] 對話框。

    5. 以滑鼠右鍵按下憑證,選取 [所有工作],然後選取 [使用新金鑰要求憑證] 或 [以新密鑰更新憑證]。

    6. 在 [ 憑證註冊 ] 頁面中,選取 [下一步],選取正確的 SSL 範本,然後選取 [需要更多資訊才能註冊此憑證]。按兩下這裡以設定設定

    7. 在 [ 憑證屬性 ] 對話框中,選取 [ 主體] 索引卷 標,然後執行下列步驟:

      1. [主體名稱] 底下的 [類型] 下拉式方塊中,選取 [一般名稱]。 在 [ 值] 方塊中,輸入 NDES 伺服器的完整功能變數名稱 (FQDN)。 然後選取 [新增]。
      2. [替代名稱] 底下的 [類型] 下拉式方塊中,選取 [DNS]。 在 [ 值] 方塊中,輸入 NDES 伺服器的 FQDN。 然後選取 [新增]。
      3. 選取 [ 確定 ] 以關閉 [ 憑證屬性 ] 對話框。
    8. 選取 [ 註冊],等待註冊成功完成,然後選取 [ 完成]。

    9. 重新安裝 Intune 憑證連接器,將它連結到新建立的憑證。 如需詳細資訊,請參閱 安裝 Microsoft Intune 的憑證連接器。

    10. 關閉憑證連接器 UI 之後,請重新啟動 Intune 連接器服務和萬維網發佈服務。

GatewayTimeout

當您瀏覽至 SCEP 伺服器 URL 時,您會收到下列錯誤:

Gatewaytimeout 錯誤的螢幕快照。

  • 原因未啟動Microsoft Entra 應用程式 Proxy 連接器 服務。

    解決方案:執行 services.msc,然後確定 Microsoft Entra 應用程式 Proxy 連接器 服務正在執行,且 啟動類型 設定為 [自動]。

HTTP 414 要求 URI 太長

當您瀏覽至 SCEP 伺服器 URL 時,您會收到下列錯誤: HTTP 414 Request-URI Too Long

  • 原因:IIS 要求篩選未設定為支援 NDES 服務收到的長 URL(查詢)。 當您 設定 NDES 服務 以搭配 SCEP 的基礎結構使用時,即會設定此支援。

  • 解決方案:設定長URL的支援。

    1. 在 NDES 伺服器上,開啟 IIS 管理員,選取 [預設網站>要求篩選>編輯功能設定] 以開啟 [編輯要求篩選設定] 頁面。

    2. 設定下列設定:

      • URL 長度上限 (位元元) = 65534
      • 查詢字串上限 (位元元組) = 65534
    3. 選取 [ 確定 ] 以儲存此設定並關閉 IIS 管理員。

    4. 藉由尋找下列登錄機碼來確認其具有指示的值,以驗證此組態:

      HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP\Parameters

      下列值會設定為 DWORD 專案:

      • 名稱: MaxFieldLength,十進位值為 65534
      • 名稱: MaxRequestBytes,十進位值為 65534
    5. 重新啟動 NDES 伺服器。

此頁面無法顯示

您已設定Microsoft Entra 應用程式 Proxy。 當您瀏覽至 SCEP 伺服器 URL 時,您會收到下列錯誤:

This page can't be displayed

  • 原因:當 SCEP 外部 URL 在 應用程式 Proxy 組態中不正確時,就會發生此問題。 此 URL 的範例是 https://contoso.com/certsrv/mscep/mscep.dll

    解決方案:在 應用程式 Proxy 組態中使用 SCEP 外部 URL 的預設網域 yourtenant.msappproxy.net

500 - 內部伺服器錯誤

當您瀏覽至 SCEP 伺服器 URL 時,您會收到下列錯誤:

500 - 內部伺服器錯誤的螢幕快照。

  • 原因 1:NDES 服務帳戶已鎖定或其密碼已過期。

    解決方案:解除鎖定帳戶或重設密碼。

  • 原因 2:MSCEP-RA 憑證已過期。

    解決方案:如果 MSCEP-RA 憑證已過期,請重新安裝 NDES 角色,或要求新的 CEP 加密和 Exchange 註冊代理程式 (離線要求) 憑證。

    若要要求新的憑證,請遵循下列步驟:

    1. 在證書頒發機構單位 (CA) 或發行 CA 上,開啟證書範本 MMC。 請確定登入的使用者和 NDES 伺服器具有 CEP 加密和 Exchange 註冊代理程式 (離線要求) 憑證範本的讀取註冊 許可權。

    2. 檢查 NDES 伺服器上的過期憑證,從憑證複製 主體 資訊。

    3. 開啟電腦帳戶憑證 MMC。

    4. 展開 [個人],以滑鼠右鍵按兩下 [憑證],然後選取 [所有工作>要求新憑證]。

    5. 在 [ 要求憑證] 頁面上,選取 [CEP 加密],然後選取 [需要更多資訊才能註冊此憑證]。按兩下這裡以設定設定

      [要求憑證] 頁面的螢幕快照,其中已選取 CEP 加密。

    6. [憑證內容] 中,選取 [主體] 索引標籤,以您在步驟 2 期間收集的資訊填入 [主體名稱],選取 [新增],然後選取 [確定]。

    7. 完成憑證註冊。

    8. 開啟 [我的使用者帳戶憑證] MMC。

      當您註冊 Exchange 註冊代理程式(離線要求)憑證時,必須在用戶內容中完成。 因為此憑證範本的 [主體類型] 設定為 [使用者]。

    9. 展開 [個人],以滑鼠右鍵按兩下 [憑證],然後選取 [所有工作>要求新憑證]。

    10. 在 [ 要求憑證] 頁面上,選取 [Exchange 註冊代理程式][脫機要求],然後選取 [需要更多資訊才能註冊此憑證]。按兩下這裡以設定設定

      [要求憑證] 頁面的螢幕快照,其中已選取 Exchange 註冊代理程式(離線要求)。

    11. [憑證內容] 中,選取 [主體] 索引標籤,以您在步驟 2 期間收集的資訊填入 [主體名稱],選取 [新增]。

      [憑證屬性] 視窗中 [主體] 索引標籤的螢幕快照。

      選取 [私鑰] 索引標籤,選取 [讓私鑰可匯出],然後選取 [確定]。

      [憑證屬性] 視窗中 [私鑰] 索引標籤的螢幕快照。

    12. 完成憑證註冊。

    13. 從目前的使用者證書存儲匯出 Exchange 註冊代理程式 (離線要求) 憑證。 在 [憑證導出精靈] 中,選取 [ 是],匯出私鑰

    14. 將憑證匯入本機計算機證書存儲。

    15. 在 [憑證] MMC 中,針對每個新憑證執行下列動作:

      以滑鼠右鍵按兩下憑證,選取 [所有工作>管理私鑰],將 [讀取] 許可權新增至 NDES 服務帳戶。

    16. 執行 iisreset 命令以重新啟動 IIS。

下一步

如果裝置成功連線到 NDES 伺服器以提出憑證要求,下一個步驟是檢閱 Intune 憑證連接器原則模組