OS X Server: konfigurowanie zaufania serwera RADIUS w profilach konfiguracji, gdy jest używana metoda TLS, TTLS lub PEAP
W tym artykule wyjaśniono, jak poprawnie skonfigurować zaufanie podczas używania profilów konfiguracji.
W systemie OS X profile konfiguracji umożliwiają skonfigurowanie klienta do przełączania się do sieci chronionej protokołem 802.1x. Jeśli profil konfiguracji nie konfiguruje odpowiednio zaufania do serwera/serwerów RADIUS dla typów uwierzytelniania EAP, które ustanawiają bezpieczny tunel (TLS, TTLS, PEAP), może wystąpić jeden z następujących problemów:
automatyczne przyłączanie do sieci jest niemożliwe,
niepowodzenie uwierzytelniania,
przechodzenie do nowych punktów dostępu nie działa.
Zanim będzie możliwe poprawne skonfigurowanie zaufania, musisz się dowiedzieć, które certyfikaty przedstawia serwer RADIUS w trakcie uwierzytelniania. Jeśli masz już te certyfikaty, przejdź do kroku 13.
Certyfikaty przedstawiane przez serwer RADIUS w trakcie uwierzytelniania można sprawdzić w dziennikach EAPOL. Aby włączyć dzienniki EAPOL w systemie Mac OS X, użyj następującego polecenia w aplikacji Terminal:
sudo defaults write /Library/Preferences/SystemConfiguration/com.apple.eapolclient LogFlags -int -1
Po włączeniu dzienników EAPOL połącz się ręcznie z siecią chronioną protokołem 802.1x. Powinien się pojawić monit o zaufanie certyfikatowi serwera RADIUS. Zaufaj certyfikatowi, aby ukończyć uwierzytelnianie.
Znajdź dzienniki EAPOL.
- In OS X Lion and Mountain Lion, these logs can be found in /var/log/. The log will be called eapolclient.en0.log or eapolclient.en1.log.
- In OS X Mavericks, these logs can be found in /Library/Logs/CrashReporter/com.apple.networking.eapol.XXXXXXXX .
Otwórz dziennik eapolclient.enX.log w aplikacji Konsola i znajdź klucz o nazwie TLSServerCertificateChain. Powinno to wyglądać tak:
Blok tekstu pomiędzy znacznikami oraz to certyfikat. Skopiuj ten blok tekstu i wklej go do edytora tekstu. Upewnij się, że edytor jest skonfigurowany do zachowywania zwykłych plików tekstowych.
Dodaj nagłówek
-----BEGIN CERTIFICATE-----
and a footer of-----END CERTIFICATE-----
. It should look like this:Zachowaj plik z rozszerzeniem PEM.
Otwórz aplikację Keychain Access (Dostęp do pęku kluczy) w folderze Utilities (Narzędzia).
Note: It may be helpful to create a new keychain so that you can easily find the certificate you import in the next step.
Przeciągnij utworzony plik PEM do nowego pęku kluczy lub wybierz kolejno opcje File (Plik) > Import Items (Importuj rzeczy) i wybierz utworzony wcześniej plik PEM. Zaimportuj plik do wybranego pęku kluczy.
Powtórz powyższe kroki dla każdego z certyfikatów w tablicy TLSCertificateChain. Najprawdopodobniej będzie to więcej niż jeden certyfikat.
Sprawdź każdy zaimportowany certyfikat, aby dowiedzieć się, co to za certyfikat. Należy mieć co najmniej certyfikat główny i certyfikat serwera RADIUS. Możesz także mieć certyfikat pośredniczący. Do pakietu Certificates (Certyfikaty) profilu konfiguracji musisz włączyć certyfikat główny i wszystkie certyfikaty pośredniczące przedstawiane przez serwer RADIUS. Włączenie certyfikatu/certyfikatów serwera RADIUS jest opcjonalne, jeśli nazwy serwera RADIUS są włączone do sekcji Trusted Server Certificate Names (Nazwy zaufanych certyfikatów serwera) pakietu Network (Sieć). W przeciwnym razie włącz certyfikaty serwera RADIUS do profilu.
Po ustaleniu, które certyfikaty przedstawia serwer RADIUS, możesz je wyeksportować z pęku kluczy jako pliki CER i dodać je do profilu konfiguracji. Dodaj każdy certyfikat główny i pośredniczący do pakietu Certificates (Certyfikaty) w profilu konfiguracyjnym. W razie potrzeby możesz także dodać certyfikaty serwera RADIUS.
W pakiecie Network (Sieć) znajdź sekcję Trust (Zaufanie) i zaznacz dodane właśnie certyfikaty jako zaufane. Upewnij się, że nie zaznaczasz żadnych innych certyfikatów, które także występują w pakiecie Certificates (Certyfikaty) jako zaufane, bo inaczej uwierzytelnianie nie powiedzie się. Upewnij się, że zaznaczono tylko te certyfikaty, które serwer RADIUS rzeczywiście przedstawia jako zaufane.
Następnie dodaj nazwy serwerów RADIUS do sekcji Trusted Server Certificate Names (Nazwy zaufanych certyfikatów serwera). Konieczne jest użycie dokładnie tej samej nazwy (z uwzględnieniem wielkości liter), która jest widoczna jako nazwa pospolita certyfikatu serwera RADIUS. Na przykład jeśli nazwa pospolita certyfikatu serwera RADIUS to TEST.example.com, musisz dokładnie odtworzyć wielkość liter z nazwy certyfikatu. Wartość „test.example.com” nie byłaby prawidłowa, a „TEST.example.com” tak. Dla każdego z serwerów RADIUS musisz dodać nowy wpis. Możesz także użyć symbolu wieloznacznego w nazwie hosta. Na przykład użycie nazwy *.example.com spowoduje uznanie wszystkich serwerów RADIUS w domenie example.com za zaufane.
Jeśli wcześniej włączono dzienniki EAPOL, możesz wyłączyć zapisywanie danych w dzienniku za pomocą poniższego polecenia:
sudo defaults write /Library/Preferences/SystemConfiguration/com.apple.eapolclient LogFlags -int 0
Jeśli nie masz pewności, czy zaufanie jest skonfigurowane poprawnie, możesz to sprawdzić w pliku /var/log/system.log. Otwórz plik system.log. w programie Konsola i wyfiltruj informacje według kryterium „eapolclient”, aby zobaczyć komunikaty związane z procesem eapolclient. Typowy błąd zaufania wygląda następująco:
Mar 31 12:27:14 Macintosh.local eapolclient[5961]: [eapttls_plugin.c:968] eapttls_verify_server(): server certificate not trusted status 3 0