OS X Server: TLS, TTLS 또는 PEAP를 사용할 때 구성 프로파일에서 RADIUS 서버 신뢰를 구성하는 방법

이 문서에서는 구성 프로파일을 사용할 때 신뢰를 올바르게 설정하는 방법에 대해 설명합니다.

OS X에서 구성 프로파일은 클라이언트를 802.1x 보호 네트워크에 연결되도록 구성하는 데 사용됩니다. 구성 프로파일에서 보안 터널(TLS, TTLS, PEAP)을 설정하는 EAP 유형의 RADIUS 서버에 대한 신뢰가 제대로 구성되지 않을 경우, 다음 문제 중 하나가 나타날 수 있습니다.

  • 자동 연결 불가

  • 인증 실패

  • 새로운 액세스 포인트에 대한 로밍이 작동하지 않음

신뢰를 올바르게 구성하려면 인증 단계에서 RADIUS 서버가 어떤 인증서를 제시하는지 알아야 합니다. 이미 이 인증서가 있는 경우 13단계로 건너뜁니다.

  1. RADIUS 서버가 제시하는 인증서는 EAPOL 로그에 표시됩니다. Mac OS X에서 EAPOL 로그를 활성화하려면 터미널에서 다음 명령을 사용합니다.

    sudo defaults write /Library/Preferences/SystemConfiguration/com.apple.eapolclient LogFlags -int -1

  2. EAPOL 로그를 활성화한 후에 802.1x 보호 네트워크에 수동으로 연결합니다. 그러면 RADIUS 서버 인증서를 신뢰하라는 메시지가 표시됩니다. 인증을 완료할 수 있도록 인증서를 신뢰합니다.

  3. 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 .

  4. 콘솔에서 eapolclient.enX.log를 열고 TLSServerCertificateChain이라는 키를 찾습니다. 다음과 같이 표시되어야 합니다.

  5. 및 사이의 텍스트 블록이 인증서입니다. 텍스트 블록을 복사한 다음 텍스트 편집기에 붙여넣습니다. 텍스트 편집기가 일반 텍스트 파일을 저장하도록 구성되어 있는지 확인합니다.

  6. -----BEGIN CERTIFICATE----- and a footer of -----END CERTIFICATE-----. It should look like this:

  7. .pem 확장자로 파일을 저장합니다.

  8. 유틸리티 폴더에서 키체인 접근 앱을 엽니다.

    Note: It may be helpful to create a new keychain so that you can easily find the certificate you import in the next step.

  9. 생성한 .pem 파일을 새로운 키체인으로 드래그하거나, 파일 > 항목 가져오기를 선택하고 이전에 생성한 .pem 파일을 선택합니다. 파일을 원하는 키체인으로 가져옵니다.

  10. TLSCertificateChain 배열의 각 인증서에 대해 위의 단계를 반복합니다. 인증서가 여러 개일 수 있습니다.

  11. 가져온 각 인증서를 검사하여 어떤 인증서인지 확인합니다. 최소한 루트 인증서와 RADIUS 서버 인증서는 있어야 합니다. 또한 중간 인증서가 있을 수도 있습니다. RADIUS 서버가 제시하는 모든 루트 인증서와 중간 인증서를 구성 프로파일의 인증서 페이로드에 포함해야 합니다. 네트워크 페이로드의 신뢰할 수 있는 서버 인증서 이름 섹션에 RADIUS 서버 이름을 포함하는 경우, RADIUS 서버 인증서 포함은 선택 사항입니다. 그 외의 경우에는 RADIUS 서버 인증서도 프로파일에 포함합니다.

  12. RADIUS 서버에서 어떤 인증서를 제시하는지 알게 되면 해당 인증서를 키체인에서 .cer 파일로 내보낸 후 구성 프로파일에 추가할 수 있습니다. 루트 인증서와 중간 인증서를 각각 구성 프로파일의 인증서 페이로드에 추가합니다. 필요한 경우 RADIUS 서버 인증서를 추가할 수도 있습니다.

  13. 네트워크 페이로드에서 신뢰 섹션을 찾아 방금 추가한 인증서를 신뢰할 수 있는 것으로 표시합니다. 인증서 페이로드에 있을 수 있는 다른 인증서를 신뢰할 수 있는 것으로 표시하지 않도록 합니다. 그렇지 않으면 인증에 실패합니다. RADIUS 서버에서 실제로 제시된 인증서만 신뢰할 수 있는 것으로 표시해야 합니다.

  14. 이제 신뢰할 수 있는 서버 인증서 이름 섹션에 RADIUS 서버의 이름을 추가합니다. RADIUS 서버 인증서의 일반 이름으로 표시된 정확한 이름(대소문자 구분)을 사용해야 합니다. 예를 들어, RADIUS 서버 인증서의 일반 이름이 TEST.example.com인 경우 인증서에 사용된 이름과 대소문자가 일치해야 합니다. 'test.example.com'이라는 값은 유효하지 않지만 'TEST.example.com'은 유효합니다. 각 RADIUS 서버에 새 항목을 추가해야 합니다. 호스트 이름에 와일드카드를 사용할 수도 있습니다. 예를 들어 *.example.com을 사용하면 example.com 도메인의 모든 RADIUS 서버를 신뢰하도록 설정됩니다.

  15. 이전에 EAPOL 로그를 활성화한 경우 다음 명령을 사용하여 로깅을 비활성화할 수 있습니다.

    sudo defaults write /Library/Preferences/SystemConfiguration/com.apple.eapolclient LogFlags -int 0

신뢰가 올바르게 구성되었는지 확실하지 않다면 /var/log/system.log를 확인해 볼 수 있습니다. 콘솔에서 system.log를 열고 'eapolclient'로 필터링하여 eapolclient 프로세스와 관련된 모든 메시지를 확인합니다. 일반적인 신뢰 오류는 다음과 같이 표시됩니다.

Mar 31 12:27:14 Macintosh.local eapolclient[5961]: [eapttls_plugin.c:968] eapttls_verify_server(): server certificate not trusted status 3 0

게시일: