OS X Server: TLS, TTLS 또는 PEAP를 사용 중인 경우 구성 프로파일에서 RADIUS 서버 트러스트를 구성하는 방법

이 문서에서는 구성 프로파일을 사용 중인 경우 트러스트를 올바르게 설정하는 방법에 대해 설명합니다.

OS X에서 구성 프로파일은 802.1x 보호된 네트워크를 연결하도록 클라이언트를 구성하는 데 사용됩니다. 구성 프로파일에서 트러스트를 보안 터널(TLS, TTLS, PEAP)을 설정하는 EAP 유형의 RADIUS 서버에 적절하게 구성하지 않으면 다음 문제 중 하나가 발생할 수 있습니다.

  • 자동으로 연결할 수 없음
  • 인증 실패
  • 새로운 액세스 포인트에 대한 로밍이 작동하지 않음

트러스트를 적절하게 구성하려면 인증 시 RADIUS 서버에서 어떤 인증서가 표시되는지 알아야 합니다. 이와 같은 인증서가 이미 있는 경우 13단계로 건너뜁니다.

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

    sudo defaults write /Library/Preferences/SystemConfiguration/com.apple.eapolclient LogFlags -int -1
     
  2. EAPOL 로그를 활성화한 후 802.1x 보호된 네트워크에 수동으로 연결합니다. RADIUS 서버 인증서를 신뢰하라는 메시지가 나타납니다. 인증을 완료하려면 인증서를 신뢰합니다.
  3. EAPOL 로그를 찾습니다.
    - OS X Lion 및 Mountain Lion에서는 /var/log/에서 이와 같은 로그를 찾을 수 있습니다. 로그의 이름은 eapolclient.en0.log 또는 eapolclient.en1.log입니다.
    - OS X Mavericks에서는 /Library/Logs/CrashReporter/com.apple.networking.eapol.XXXXXXXX에서 이와 같은 로그를 찾을 수 있습니다.
  4. 콘솔에서 eapolclient.enX.log를 열고 TLSServerCertificateChain라는 키를 찾습니다. 다음과 같이 표시됩니다. 


  5. <data>와</data> 사이의 텍스트 블록이 인증서입니다. 텍스트 블록을 복사한 다음 텍스트 편집기에 붙여 넣습니다. 텍스트 편집기가 일반 텍스트 파일을 저장하도록 구성되어 있는지 확인합니다.
  6. -----BEGIN CERTIFICATE----- 머리말과 -----END CERTIFICATE-----꼬리말을 추가합니다. 다음과 같이 표시됩니다.

  7. 파일을 .pem 확장자로 저장합니다.
  8. 유틸리티 폴더에 있는 '키체인 접근' App을 엽니다.
    참고: 새로운 키체인을 생성하면 다음 단계에서 가져올 인증서를 쉽게 찾을 수 있습니다.
  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

 

게시일: