본문 바로가기

Secure UC

[연재] Secure IP Telephony 길라잡이 - (1) CTL Client 개요 및 설치

글 싣는 순서

1. CTL Client 개요 및 설치
2. CTL Client 설정하기
3. 전화기를 보안모드로 설정하기 
4. 외부 CA 서버에서 CUCM 인증서 받기
5. 외부 CA 서버에서 IP Phone 인증서 받기
6. 외부 CA 서버에서 CUBE 인증서 받기
7. CUCM과 CUBE간 TLS 연동


 "Secure IP Telephony의 이해"와 "Secure IP Telephony 길라잡이"가 동시에 연재되기 때문에 앞뒤는 맞지 않을 수 있습니다. 실제 구현해보고 이론적 배경을 쌓는 것도 나쁜 방법이 아니므로 같이 연재합니다. UC 엔지니어들분에게는 "Secure IP Telephony 길라잡이"가 훨씬 기다려지리라 생각됩니다. ^^

어쩄든, 지금까지  "Secure IP Telephony의 이해"를 통해 TLS 및 SRTP의 이해와 CUCM 동작방식을 모두 이해한 것으로 가정하고 실제 구현하는 방법을 정리해 보겠습니다. 

이글은 "CUCM Security Guide, Release 9.0(1)"을 기반으로 작성되었으니 참조하시기 바랍니다. 


Security 관련 서비스 활성화
데모용 CUCM을 정상적으로 설치하고 난 후에 엔지니어들은 모든 서비스를 활성화합니다. 물론, 실제 운영중인 CUCM은 부하를 최소화하기 위해 필요한 서비스만을 구동합니다. 여기에서는 활성화한다기 보다는 보안과 관련된 서비스가 무엇이지를 확인해 보겠습니다.

우선, CUCM의 우측 상단의 Navigation 메뉴에서 "Cisco Unified Serviceability"를 선택합니다.  메뉴바에서 "Tools>> Service Activation" 메뉴를 선택합니다. 

                                                                                  

Service Activation 페이지의 하단에 아래 두 서비스가 있습니다. 

Cisco CTL Provider와 Cisco Certificate Authority Proxy Function(CAPF) 서비스를 활성화합니다. 

  • Cisco CTL Provider (모든 CUCM 서버에서 활성화)
    CTL ( Certificate Trust List)는 전화기가 신뢰할 수 있는 CUCM 서버의 리스트입니다. 우리가 흔히 "토큰"이라고 부르는  Cisco Site Administrator Security Token에 의해 서명됩니다.  CTL Provider는 CTL Client에 의해 생성된 CTL을 모든 전화기에 제공합니다. 


  • Cisco CAPF (Publisher에서만 활성화)
    CAPF (Certificate Authority Proxy Function)는 전화기의 Public Key를 Self-sign하는 프로세스입니다. Certificate(인증서)는 Public Key가 CA에 의해 서명된 것을 의미합니다. CAPF는 인증기관인 CA의 Proxy 역할을 한다는 의미입니다.


Security Token 확보
인증 및 암호화를 활성화하기 위해서는 반드시 아래 그림과 같은 Security Token이 필요합니다. Security Token은 USB Dongle, eToken, SAST등으로 불리며, 예전에는 파란색이였는 데 요즘은 녹색으로 된 USB입니다.  

Security Token은 생성된 CTL File을 서명합니다.  CTL 파일은 클러스터 당 생성되므로 클러스터 당 2개의 Security Token이 필요합니다. 만일 CTL 파일을 재 생성하여 업데이트가 필요할 경우에는 한 개의  Security Token만  있으면 됩니다. 이 제품의 Part Number는 KEY-CCM-ADMIN-K9=  입니다.




CTL Client의 개요
CUCM을 보안 (Security) 모드로 동작하도록 하기 위해서는  CTL Client가 필요합니다. 
CTL Client가 하는 일은 구체적으로 다음과 같습니다. 
  • CUCM 클러스터를 보안모드로 설정
  • 전화기가 신뢰할 수 있는 CTL (Certificate Trust List)를 생성
    전화기는 부팅 시에 아래의 Certificate를 자동으로 확보하여 아래의 서버와 TLS 연결을 합니다. 
    System Administrator Security Token
    CUCM의 CallManager 및 TFTP서비스
    CAPF
    - TFTP Servers
    - ASA Firewalls

    CTL Client는 최대 16개의 Call Processing Servers, 1 Publisher, 2 TFTP Servers and 9 media resources 까지 지원합니다. 



CTL Client의 설치전 주의 사항
CTL을 만들기 위해서는 CTL Client를 설치해야 합니다. 쉽게 실수 할 수 있는 몇 가지를 나열합니다.

  • PC의 운영체제 확인
    Windows XP, Windows Vista, Windows 7에서 동작되며, CUCM 8.x 이상 버전은 64-bit로 운영체제 설치해야 합니다. 

  • PC의 USB 포트 확인
    Security Token이 USB로 동작하므로 반드시 USB 포트가 있는 PC에 설치해야 합니다. 설치 중에 저도 했던 실수있니다만, Cisco UCS 서버의 USB 포트에는 USB 메모리가 동작하지 않으므로 CTL Client를 VMware 상에 설치할 때는 VMware에서 vSphere Client PC의 USB를 인식할 수 있도록 설정하시기 바랍니다. 


  • CTL 파일의 최대 파일 크기는 32Kbyte
    CUCM노드수와 ASA의 최대 숫자를 고려해야 합니다. 또한, External CA를 이용하여 서명할 경우에도 마찬가지 입니다. 크러스터가 크게 구성되었고, 외부 CA를 사용한다면 고려해야 합니다. 


  • CTL Client가 설치된 PC는 CUCM Hostname으로 접근 가능해야 함
    CUCM이 IP address가 아닌 Hostname으로 되어 있다면, DNS에 등록시키거나 PC의 hosts 파일을 수정 해야 합니다. 저는 귀차니즘이 많기 때문에 CUCM의 Hostname을 항상 IP address로 바꾸어 놓습니다. 




  • PC의 모든 보안 클라이언트 중지
    특히 웜 및 바이러스를 방지하기 위한 보안 클라이언트는 반드시 죽인 후에 설치하시기 바랍니다. 


CTL Client 파일 다운로드 
CTL Client가 매우 민감한 녀석이라 설치간에 많은 문제가 발생합니다. 설치 또는 설정 중에 문제가 발생한다면, 위의 주의 사항을 다시 살펴볼 것을 강추합니다.  

CTL Client는 아래 그림과 같이 CUCM의 Plugins 파일내에 포함되어 있습니다. 특별히 문제가 없는 한 호환성문제를 해결하기 위해 CUCM이 제공하는 CTL Client를 사용하시는 것이 좋습니다. 

위의 그림에서 "다운로드"를 클릭하면 파일 다운로드가 시작됩니다. 



CTL Client 설치하기
다운로드한 파일을 클릭하여 아래그림과 같이 설치를 시작합니다. 

"NEXT"를 선택하시고 라인센스에 대해 동의합니다.



CTL Client를 설치할 디렉토리를 선택한 후에 "NEXT"를 선택합니다. 


이제 설치를 시작합니다. 


"Finish"를 클릭하여 설치를 완료합니다. 


바탕화면에 아래와 같이 촌시러운 아이콘이 표시됩니다. 

 


마치며
CTL Client를 설치해보신 분들은 아실 것입니다. 처음에 아무생각없이 설치했다가 계속된 문제로 인해 결국 설치하는 데만 하루 꼬박 걸립니다.  저는 세 번 설치하였는 데 세 번 모두 한 번에 설치하지 못했습니다. CTL Client는 범용성이 제로에 가까운 대충만든 소프트웨어가 아닌지 의심스럽습니다. 
 


----------------- --------------------------------------------------------

라인하트 (CCIEV #18487) 
ucwana@gmail.com (라인하트의 구글 이메일) 
http://twitter.com/ucwana (라인하트의 트위터 ) 
http://twitter.com/nexpertnet (넥스퍼트 블로그의 트위터, 최신 업데이트 정보 및 공지 사항) 
http://groups.google.com/group/cciev (시스코 UC를 공부하는 사람들이 모인 구글 구룹스) 
http://groups.google.com/group/ucforum (벤더에 상관없이 UC를 공부하는 사람들이 모인 구글 구룹스) 
정리하고 보니 나도 디지털 네이티브 _____________________________________________________