Włączanie dostępu zdalnego z intranetu przy użyciu certyfikatu TLS/SSL (zaawansowane)
W tym samouczku dowiesz się, jak skonfigurować własne środowisko Integration Runtime z wieloma maszynami lokalnymi i włączyć dostęp zdalny z intranetu przy użyciu certyfikatu TLS/SSL (zaawansowane) w celu zabezpieczenia komunikacji między węzłami środowiska Integration Runtime.
Wymagania wstępne
- Wprowadzenie do silnego szyfrowania SSL/TLS.
- Certyfikat może być ogólnym certyfikatem TLS dla serwera sieci Web. Wymagania:
- Certyfikat musi być publicznie zaufanym certyfikatem X509 v3. Zalecamy używanie certyfikatów wystawionych przez urząd certyfikacji partnera publicznego.
- Każdy węzeł środowiska Integration Runtime musi ufać temu certyfikatowi.
- Zalecamy certyfikaty alternatywnej nazwy podmiotu (SAN), ponieważ wszystkie w pełni kwalifikowane nazwy domen (FQDN) węzłów środowiska Integration Runtime są wymagane do zabezpieczenia przez ten certyfikat. (Sprawdzanie poprawności protokołu TLS/SSL w programie WCF tylko sprawdzanie ostatniej nazwy DNS w sieci SAN zostało naprawione w .NET Framework 4.6.1. Aby uzyskać więcej informacji, zobacz Środki zaradcze: X509CertificateClaimSet.FindClaims.
- Certyfikaty wieloznaczne (*) nie są obsługiwane.
- Certyfikat musi mieć klucz prywatny (na przykład format PFX).
- Certyfikat może używać dowolnego rozmiaru klucza obsługiwanego przez Windows Server 2012 R2 dla certyfikatów TLS/SSL.
- Do tej pory obsługujemy tylko certyfikat CSP (dostawca usług kryptograficznych). Certyfikaty korzystające z kluczy CNG (dostawcy magazynu kluczy) nie są obsługiwane.
Kroki
Uruchom poniższe polecenie programu PowerShell na wszystkich maszynach, aby pobrać nazwy FQDN:
[System.Net.Dns]::GetHostByName("localhost").HostName
Na przykład nazwy FQDN są node1.domain.contoso.com i node2.domain.contoso.com.
Wygeneruj certyfikat przy użyciu nazw FQDN wszystkich maszyn w alternatywnej nazwie podmiotu.
Zainstaluj certyfikat na wszystkich węzłach na maszynie lokalnej —>Osobiste, aby można było go wybrać w menedżerze konfiguracji środowiska Integration Runtime:
Kliknij certyfikat i zainstaluj go.
Wybierz pozycję Maszyna lokalna i wprowadź hasło.
Wybierz pozycję Umieść wszystkie certyfikaty w następującym magazynie. Kliknij pozycję Browse (Przeglądaj). Wybierz pozycję Osobiste.
Wybierz pozycję Zakończ , aby zainstalować certyfikat.
Włącz dostęp zdalny z intranetu:
Podczas rejestracji węzła własnego środowiska Integration Runtime:
Wybierz pozycję Włącz dostęp zdalny z intranetu i wybierz pozycję Dalej.
Ustaw port Tcp (domyślnie 8060). Upewnij się, że port jest otwarty w zaporze.
Kliknij pozycję Wybierz. W oknie podręcznym wybierz odpowiedni certyfikat i wybierz pozycję Zakończ.
Po zarejestrowaniu węzła własnego środowiska Integration Runtime:
Uwaga
Własne środowisko Integration Runtime może zmienić ustawienia dostępu zdalnego tylko wtedy, gdy ma jeden węzeł, który jest zgodnie z projektem. W przeciwnym razie nie można sprawdzić przycisku radiowego.
Przejdź do pozycji self-hosted Integration Runtime Configuration Manager ->Settings -Remote access from intranet (Ustawienia —>dostęp zdalny z intranetu). Kliknij przycisk Zmień.
Wybierz pozycję Włącz przy użyciu certyfikatu TLS/SSL (zaawansowane).
Kliknij pozycję Wybierz. W oknie podręcznym wybierz odpowiedni certyfikat i wybierz przycisk OK.
Sprawdź ustawienia dostępu zdalnego w Integration Runtime Configuration Manager hostowanej samodzielnie.
Jeśli nie masz publicznie zaufanego certyfikatu, użyj certyfikatu z podpisem własnym:
Generowanie i eksportowanie certyfikatu z podpisem własnym (ten krok można pominąć, jeśli masz już certyfikat):
Wygeneruj certyfikat z podpisem własnym za pomocą programu PowerShell (z podwyższonym poziomem uprawnień):
New-SelfSignedCertificate -DnsName contoso.com, node1.domain.contoso.com, node2.domain.contoso.com -Provider "Microsoft Enhanced RSA and AES Cryptographic Provider" -CertStoreLocation cert:\LocalMachine\My
Aby wyeksportować wygenerowany certyfikat z kluczem prywatnym do pliku PFX chronionego hasłem, będzie potrzebny jego odcisk palca. Można go skopiować z wyników
New-SelfSignedCertificate
polecenia. Na przykład jestCEB5B4372AA7BF877E56BCE27542F9F0A1AD197F
to .Wyeksportuj wygenerowany certyfikat z kluczem prywatnym za pośrednictwem programu PowerShell (z podwyższonym poziomem uprawnień):
$CertPassword = ConvertTo-SecureString -String “Password” -Force -AsPlainText Export-PfxCertificate -Cert cert:\LocalMachine\My\CEB5B4372AA7BF877E56BCE27542F9F0A1AD197F -FilePath C:\self-signedcertificate.pfx -Password $CertPassword
Certyfikat został wyeksportowany z kluczem prywatnym do pliku C:\self-signedcertificate.pfx.
Zainstaluj certyfikat we wszystkich węzłach, aby: Magazyn lokalnych maszyn ->zaufane główne urzędy certyfikacji:
- Kliknij certyfikat i zainstaluj go.
- Wybierz pozycję Maszyna lokalna i wprowadź hasło.
- Wybierz pozycję Umieść wszystkie certyfikaty w następującym magazynie. Kliknij pozycję Browse (Przeglądaj). Wybierz pozycję Zaufane główne urzędy certyfikacji.
- Wybierz pozycję Zakończ , aby zainstalować certyfikat.
Rozwiązywanie problemów
Sprawdź, czy certyfikat istnieje w magazynie docelowym:
Wykonaj następującą procedurę : Wyświetlanie certyfikatów przy użyciu przystawki MMC — WCF w celu wyświetlenia certyfikatów (komputera lokalnego) w przystawce MMC.
Upewnij się, że certyfikat jest zainstalowany w magazynie osobistych i zaufanych głównych urzędów certyfikacji (jeśli jest to certyfikat z podpisem własnym).
Sprawdź, czy certyfikat ma klucz prywatny i nie wygasł.
Upewnij się, że konto usługi dla własnego środowiska Integration Runtime (domyślne konto to NT SERVICE\DIAHostService) ma uprawnienie do odczytu kluczy prywatnych certyfikatu:
Kliknij prawym przyciskiem myszy certyfikat ->Wszystkie zadania ->Zarządzaj kluczami prywatnymi.
Jeśli nie, przyznaj uprawnienie, Zastosuj i zapisz.