Udostępnij za pośrednictwem


Klienci funkcji DirectAccess mogą nie być w stanie nawiązać połączenia z błędem 0x80092013

Ten artykuł zawiera pomoc w rozwiązaniu problemu polegającego na tym, że klienci funkcji DirectAccess nie mogą łączyć się z serwerem funkcji DirectAccess przy użyciu protokołu internetowego za pośrednictwem połączeń protokołu SECURE Hypertext Transfer Protocol (IP-HTTPS).

Oryginalny numer KB: 2980672

Symptomy

Klienci funkcji DirectAccess mogą nie być w stanie nawiązać połączenia z serwerem funkcji DirectAccess przy użyciu adresu IP za pośrednictwem połączeń IP-HTTPS, ponieważ sprawdzanie odwołania kończy się niepowodzeniem.

Dane wyjściowe polecenia netsh interface http show interface będą wyświetlać następujący błąd:

Błąd: 0x80092013

Przekłada się na: CRYPT_E_REVOCATION_OFFLINE
# Funkcja odwołania nie mogła sprawdzić odwołania, ponieważ serwer odwołania był w trybie offline.

Przyczyna

Ten błąd może wystąpić z jednego z następujących powodów:

  1. Lokalizacja listy CRL (CDP) jest niemożliwa do osiągnięcia.
  2. Lokalizacja listy CRL (CDP) jest nieopublikowana.
  3. Lista CRL wygasła i nowa nie została opublikowana.
  4. Lista CRL jest osiągalna, ale klient wybiera ze starej pamięci podręcznej.

Rozwiązanie

Jeśli lokalizacja listy CRL (CDP) jest niemożliwa do osiągnięcia, sprawdź, czy lista CRL jest pobierana z kontekstu systemu, wykonując następujące kroki:

  1. Ustal, czy problem z łącznością jest spowodowany przez ustawienia serwera proxy. Aby to określić, możesz wykonać zapytanie przy użyciu następujących wartości rejestru:

    • cmd.exe /c reg query
      HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Internet Settings /v ProxyEnable
    • cmd.exe /c reg query
      HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Internet Settings /v ProxyServer
    • cmd.exe /c reg query
      HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Internet Settings /v ProxyOverride
    • cmd.exe /c reg query
      HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Internet Settings /v AutoConfigURL
    • cmd.exe /c reg query
      HKEY_USERS\S-1-5-18\Software\Microsoft\Windows\CurrentVersion\Internet Settings /v ProxyEnable
    • cmd.exe /c reg query
      HKEY_USERS\S-1-5-18\Software\Microsoft\Windows\CurrentVersion\Internet Settings /v ProxyServer
    • cmd.exe /c reg query
      HKEY_USERS\S-1-5-18\Software\Microsoft\Windows\CurrentVersion\Internet Settings /v ProxyOverride
    • cmd.exe /c reg query
      HKEY_USERS\S-1-5-18\Software\Microsoft\Windows\CurrentVersion\Internet Settings /v AutoConfigURL
    1. Jeśli wartość ProxyEnable jest równa 1 w obu. Wartość domyślna lub S-1-5-18 oznacza to, że nie wykrywaj automatycznie ustawień. Oznacza to, że połączenia są wykonywane tylko przy użyciu serwera proxy zdefiniowanego w proxyServer lub AutoConfigURL.
    2. Jeśli wartość ProxyEnable jest równa 0, oznacza to, że automatycznie wykrywaj ustawienia. W związku z tym nie można zmienić wartości w rejestrze, aby da działał jako gałąź HKU\<UserSID> jest zrzut gałęzi HKCU. Wszelkie zmiany wprowadzone do jednostki HKU zostaną zastąpione za każdym razem, gdy usługa systemowa jest aktywna. Aby zmienić to ustawienie, należy uruchomić program Internet Explorer lub CMD.exe na koncie systemowym (NT AUTHORITY\System). W tym celu w wierszu polecenia z podwyższonym poziomem uprawnień uruchom polecenie:
    • psexec.exe -s -i cmd.exe /c reg add HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings /v ProxyEnable /t REG_DWORD /d 0 /f
      • Lokalizacja listy CRL może być niedostępna z jednego z następujących powodów:
      1. Serwer proxy kontekstu systemu jest stosowany, ale nie jest osiągalny i wymaga uwierzytelniania użytkownika.
      2. Logowanie do hotspotu oczekuje.
      3. Lokalizacja listy CRL jest niedostępna w Internecie.
      4. Lokalizacja listy CRL wymaga uwierzytelnienia przed udzieleniem dostępu.
      5. Lokalizacja listy CRL jest osiągalna. Ale pliki listy CRL nie mogą być obsługiwane.
      • W takim przypadku sprawdź uprawnienia systemu plików w plikach listy CRL i różnicowej listy CRL.
      • Upewnij się, że funkcja DoubleEscaping jest włączona dla lokalizacji CDP:
        • Set-WebConfiguration -Filter system.webServer/security/requestFiltering -PSPath 'IIS:\Sites<SiteName> -Value @{allowDoubleEscaping=$true}
  2. Jeśli lokalizacja listy CRL (CDP) nie została opublikowane, wykonaj następujące kroki:

    1. Kliknij przycisk Start, wskaż pozycję Narzędzia administracyjne, a następnie kliknij pozycję Urząd certyfikacji.
    2. W drzewie konsoli kliknij prawym przyciskiem myszy corp-DC1-CA, a następnie kliknij polecenie Właściwości.
    3. Kliknij kartę Rozszerzenia, a następnie kliknij przycisk Dodaj.
    4. W polu Lokalizacja wpisz http://\<Public-IIS-URL>/crld/ (adres URL sieci WAN wymagany dostęp do Internetu)
    5. W zmiennej kliknij przycisk <CAName>, a następnie kliknij przycisk Wstaw.
    6. W zmiennej kliknij pozycję <CRLNameSuffix>, a następnie kliknij pozycję Wstaw.
    7. W zmiennej kliknij pozycję <DeltaCRLAllowed>, a następnie kliknij pozycję Wstaw.
    8. W polu Lokalizacja wpisz .crl na końcu ciągu Lokalizacja, a następnie kliknij przycisk OK.
    9. Wybierz pozycję Uwzględnij w listach CRL. Klienci używają tego do znajdowania lokalizacji listy CRL różnicowej. Wybierz pozycję Uwzględnij w rozszerzeniu CDP wystawionych certyfikatów, a następnie kliknij przycisk OK. Następnie kliknij pozycję Dodaj.
    10. W polu Lokalizacja wpisz \<IIS-ServerName>\crldist$\ (lokalizacja wewnętrzna używana przez urząd certyfikacji do publikowania w usługach IIS i przez usługi IIS do obsługi klientów).
    11. W zmiennej kliknij przycisk <CAName>, a następnie kliknij przycisk Wstaw.
    12. W zmiennej kliknij pozycję <CRLNameSuffix>, a następnie kliknij pozycję Wstaw.
    13. W zmiennej kliknij pozycję <DeltaCRLAllowed>, a następnie kliknij pozycję Wstaw.
    14. W polu Lokalizacja wpisz .crl na końcu ciągu, a następnie kliknij przycisk OK.
    15. Wybierz pozycję Publikuj listy CRL w tej lokalizacji i Opublikuj listy CRL różnicowe w tej lokalizacji, a następnie kliknij przycisk OK.
    16. Kliknij przycisk Tak, aby ponownie uruchomić usługi certyfikatów Active Directory.
    17. Zamknij konsolę Urząd certyfikacji.
  3. Jeśli lista CRL wygasła, wykonaj następujące kroki:

    • Ponowne publikowanie listy CRL
      • Certutil -crl
  4. Jeśli lista CRL jest osiągalna, ale klient wybiera ze starej pamięci podręcznej, wykonaj następujące kroki:

    Czyszczenie pamięci podręcznych klienta

    1. TVO (Czas zweryfikowanych obiektów)
      • Certutil -setreg chain\ChainCacheResyncFiletime @now
    2. Pamięć podręczna adresów URL
      • Certutil -urlcache * delete

Więcej informacji

Metody łączności funkcji DirectAccess

Klienci funkcji DirectAccess używają wielu metod do nawiązywania połączenia z serwerem funkcji DirectAccess. Umożliwia to dostęp do zasobów wewnętrznych. Klienci mają możliwość użycia protokołu Teredo, 6to4 lub IP-HTTPS w celu nawiązania połączenia z usługą DirectAccess. Zależy to również od konfiguracji serwera funkcji DirectAccess.

Gdy klient funkcji DirectAccess ma publiczny adres IPv4, spróbuje nawiązać połączenie przy użyciu interfejsu 6to4. Jednak niektórzy dostawcy usług internetowych dają iluzję publicznego adresu IP. To, co udostępniają użytkownikom końcowym, to pseudo publiczny adres IP. Oznacza to, że adres IP odebrany przez klienta funkcji DirectAccess (karta danych lub połączenie SIM) może być adresem IP z przestrzeni adresów publicznych, ale w rzeczywistości znajduje się za jedną lub większą jedną siecią dostępu do sieci.

Gdy klient znajduje się za urządzeniem NAT, spróbuje użyć teredo. Wiele firm, takich jak hotele, lotniska i kawiarnie, nie zezwalają na ruch Teredo przechodząc przez zaporę. W takich scenariuszach klient przejdzie w tryb failover do protokołu IP-HTTPS. Protokół IP-HTTPS jest oparty na protokole SSL (TLS) opartym na protokole TCP 443. Ruch wychodzący SSL najprawdopodobniej będzie dozwolony we wszystkich sieciach.

Mając to na uwadze, protokół IP-HTTPS został skompilowany w celu zapewnienia niezawodnego i zawsze dostępnego połączenia kopii zapasowej. Klient funkcji DirectAccess będzie używać tego, gdy inne metody (takie jak Teredo lub 6to4) kończą się niepowodzeniem.

Więcej informacji na temat technologii przejścia można znaleźć w artykule Technologie przejściowe IPv6.

Listy odwołania certyfikatów

Listy odwołania certyfikatów (CRL) służą do rozpowszechniania informacji o odwołanych certyfikatach dla użytkowników indywidualnych, komputerów i aplikacji, które próbują zweryfikować ważność certyfikatów. Listy CRL są kompletne, podpisane cyfrowo listy niewyświetlonych certyfikatów, które zostały odwołane. Lista CRL jest pobierana przez klientów, którzy mogą następnie buforować listę CRL (na podstawie skonfigurowanego okresu istnienia listy CRL) i używać jej do weryfikowania certyfikatów przedstawionych do użycia. Domyślnie lista CRL jest publikowana w dwóch lokalizacjach przez urząd certyfikacji przedsiębiorstwa firmy Microsoft:

  • http://CAName/certenroll/CRLName
  • LDAP:///CN=CAName,CN=CAComputerName,CN=CDP,CN=PublicKeyServices,CN=Services,CN=Configuration,DC=ForestRootDomain,DC=TLD

Podstawowa weryfikacja łańcucha certyfikatów

Gdy cryptoAPI kompiluje i weryfikuje łańcuch certyfikatów, występują trzy odrębne fazy:

  1. Wszystkie możliwe łańcuchy certyfikatów są tworzone przy użyciu lokalnie buforowanych certyfikatów. Jeśli żaden z łańcuchów certyfikatów nie kończy się certyfikatem z podpisem własnym, CryptoAPI wybiera najlepszy możliwy łańcuch i próbuje pobrać certyfikaty wystawcy określone w rozszerzeniu dostępu do informacji o urzędzie w celu ukończenia łańcucha. Ten proces jest powtarzany do momentu skompilowania łańcucha do certyfikatu z podpisem własnym.
  2. Dla każdego łańcucha kończącego się certyfikatem z podpisem własnym w zaufanym magazynie głównym jest przeprowadzane sprawdzanie odwołania.
  3. Sprawdzanie odwołania jest wykonywane z certyfikatu głównego urzędu certyfikacji w dół do ocenianego certyfikatu.

Więcej informacji na temat punktów dystrybucji listy odwołania certyfikatów można znaleźć w artykule Określanie punktów dystrybucji listy CRL

Sprawdzanie odwołania certyfikatów i punkty dystrybucji listy CRL

W przypadku połączenia IP-HTTPS między klientem funkcji DirectAccess i serwerem funkcji DirectAccess wymagane jest sprawdzenie odwołania certyfikatu. Jeśli sprawdzanie odwołania certyfikatu zakończy się niepowodzeniem, klienci funkcji DirectAccess nie mogą nawiązać połączeń opartych na protokole IP HTTPS z serwerem funkcji DirectAccess. W związku z tym w certyfikacie IP-HTTPS musi znajdować się internetowa lokalizacja punktu dystrybucji listy CRL i dostępna dla klientów funkcji DirectAccess połączonych z Internetem.

W przypadku połączenia opartego na protokole IP-HTTPS między klientem funkcji DirectAccess i serwerem lokalizacji sieciowej wymagane jest sprawdzenie odwołania certyfikatu. Jeśli sprawdzanie odwołania certyfikatu zakończy się niepowodzeniem, klienci funkcji DirectAccess nie mogą uzyskać dostępu do adresu URL opartego na protokole IP-HTTPS na serwerze lokalizacji sieciowej. W związku z tym lokalizacja punktu dystrybucji listy CRL oparta na intranecie musi znajdować się w certyfikacie serwera lokalizacji sieciowej i być dostępna dla klientów funkcji DirectAccess połączonych z intranetem, nawet jeśli istnieją reguły funkcji DirectAccess w tabeli zasad rozpoznawania nazw (NRPT).

W przypadku tuneli IPsec między klientem funkcji DirectAccess i serwerem funkcji DirectAccess wymagane jest sprawdzenie odwołania certyfikatu.