본문 바로가기

STUDY/ㄴ WINDOWS

Windows Vista의 새 그룹 정책 템플릿 검토

At a Glance:
  • ADMX 살펴보기
  • ADMX 파일 편집
  • ADM 파일과 ADMX 파일의 차이점
  • 중앙 저장소 만들기

Windows Vista 이전에는 그룹 정책 내에서 레지스트리 값을 설정할 수 있었으며 이 값은 복잡한 전용 구문을 사용하는 ADM 파일에서 관리했습니다. Microsoft에서 표준 ADM 파일과 함께 제공하는 레지스트리 값보다 더 상세하게 레지스트리 값을 제어하려면

이러한 구문을 이해하고 사용자 지정 ADM 파일을 만들어야 했습니다. 또한 이러한 ADM 파일은 Active Directory® 환경에서 각 GPO(그룹 정책 개체)에 저장되었으며 도메인 내의 모든 도메인 컨트롤러에 이러한 개별 GPO와 관련 ADM 파일이 복제되었습니다.

Microsoft는 Windows Vista™의 릴리스에 맞추어 그룹 정책 기반의 레지스트리 템플릿 분야에서 큰 변화를 시도했습니다. Windows Vista에서는 ADM 파일(이제 ADMX라고 함)의 형식은 물론 이러한 ADMX 파일의 저장 방법까지 모두 변경되었습니다. 이 기사에서는 새로운 ADMX 형식에 대해 살펴보고 ADMX 파일이 기존의 ADM 파일과 어떻게 다른지 알아봅니다. 또한 Windows Vista 환경에서 ADMX 파일의 저장소가 처리되는 방법에 대해서도 알아봅니다.


ADMX의 차이점

Windows NT® 4.0부터 사용된 기존의 ADM 파일과 새로운 ADMX 파일의 가장 큰 차이점이라면, ADMX 파일은 XML 표준을 사용하여 레지스트리 정책 설정을 설명한다는 것입니다. XML 표준을 사용하면 몇 가지 이점을 얻을 수 있습니다. 우선 ADM 구문보다 XML을 편집할 수 있는 도구가 훨씬 다양하고 많습니다. 두 번째로, XML을 스키마화할 수 있으므로 향후 알맞은 위치에 알맞은 태그를 넣을 수 있는 도구를 더욱 쉽게 개발하여 올바른 형식의 ADMX 파일을 만들 수 있습니다. 스키마화할 수 있다는 것은 ADMX 형식과 같은 특정한 XML 적용 분야에서 사용 가능한 요소와 특성을 설명하고 이러한 것들이 구성되는 방법을 설명하는 문서화된 스키마를 사용할 수 있음을 의미합니다. 이에 대해서는 이 기사 후반부의 예제를 통해 살펴보겠습니다.

ADMX 파일과 ADM 파일의 또 다른 중요한 차이점은 기본 ADMX 파일의 문자열 섹션이 언어별 ADMX 파일로 분리된다는 점입니다. ADM 파일에 익숙한 사용자라면 모든 파일 끝에 "[strings]" 태그로 구분된 섹션이 있다는 것을 알고 있을 것입니다. 이 섹션에서 그룹 정책 편집기 및 관리 템플릿을 사용하여 표시할 텍스트 문자열에 값을 할당할 수 있습니다. 예를 들어 특정 정책의 설명 탭을 클릭하면 해당 문자열 섹션 내에 저장된 텍스트가 표시됩니다. 이 경우 해당 문자열이 ADM 파일 내에 저장되기 때문에 다른 언어로 실행되는 Windows® 시스템에서서 ADM을 사용하려면 해당 언어에 대한 문자열 섹션이 있는 ADM 파일을 새로 만들어야 하는 문제점이 있었습니다.

예를 들어 프랑스어 버전의 Windows 사용자가 영어로 작성된 ADM 파일이 사용된 기존 GPO를 편집할 경우에는 문제가 더 복잡해지는 것입니다. 프랑스어를 사용하는 관리자는 그룹 정책 편집기에서 영어로만 GPO를 볼 수 있습니다. Windows Vista에서는 [strings] 섹션을 XML 기반의 ADML(ADM Language) 파일에 분리함으로써 이 문제를 해결했습니다. ADML 파일은 지원되는 모든 언어로 제공될 수 있으며 정책을 저장하는 기본 ADMX 파일을 수정하지 않고도 간편한 변경 작업을 통해 새로운 언어를 지원할 수 있습니다. 더욱 중요한 점은 프랑스어를 사용하는 관리자가 Windows Vista 워크스테이션에서 GPO를 편집할 경우 그룹 정책 편집기에서는 현재 사용되고 있는 프랑스어 버전의 Windows를 검색한 다음 해당 GPO에 맞는 프랑스어 ADML 파일을 자동으로 로드한다는 것입니다.

c:\windows\policydefinitions(그림 1 참조)에서 해당 폴더를 열면 Windows Vista와 함께 설치된 ADMX 및 ADML 파일을 모두 볼 수 있습니다.

그림 1을 보면 파일 목록 맨 위에 en-us라는 폴더가 있습니다. 이 폴더는 영어(미국) 사용에 따른 해당 언어별 폴더이며 ADMX 파일에 대한 ADML 파일이 포함되어 있습니다. 이러한 파일들은 PolicyDefinitions 폴더에서 볼 수 있습니다. 각 ADMX에는 ADML 파일이 한 개씩 존재합니다. 이 기사를 작성한 시점을 기준으로 Windows Vista에는 132개의 ADMX/ADML 파일이 기본으로 포함되어 있습니다. 이는 이전 버전의 Windows와 Windows Vista의 또 다른 큰 차이점이라고 할 수 있습니다. Windows XP에서 만든 GPO에는 보통 다섯 개의 ADM 파일이 포함되어 있었습니다. 이 중 가장 큰 파일인 System.adm에는 정책 제어에 따라 대부분의 Windows 구성 요소에 대한 정책 항목이 포함되어 있었습니다. Windows Vista에서는 ADMX 파일을 기능별로 세분화하여 더 많은 수의 ADMX 파일로 나누는 방법을 선택했습니다. 일반적으로 각 ADMX 파일은 제어판, DNS 클라이언트, Windows 탐색기 등과 같은 단일 Windows 구성 요소와 관련이 있습니다.


ADMX 살펴보기

앞서 설명한 것처럼 XML로 작성된 ADMX는 매우 향상된 부분입니다. 그러나 다수의 관리자들이 XML을 쓰는 방법에 대해 잘 모르고 있으며 정책을 확장하기 위해 ADMX에 사용되는 스키마에 대해서만 이해하고 있는 실정입니다. 사용자 지정 ADMX를 만드는 방법은 이 문서에서 다루기에는 광범위한 주제이므로 여기에서는 ADMX가 어떻게 만들어지는지 간단히 살펴보겠습니다.

메모장을 비롯한 모든 텍스트 편집기에서 ADMX 또는 ADML 파일을 열 수 있지만 이러한 편집기에서 XML 구문을 지원하지 않는다면 별로 도움이 되지 못할 것입니다. 필자는 Visual Studio®를 사용하는데 여기에 포함된 IntelliSense®라는 기능을 사용하면 특정 요소를 쉽게 처리할 수 있습니다. 그림 2에서는 Windows Vista와 함께 제공되는 ADMX의 처음 몇 줄을 보여 줍니다.

XML에 익숙하지 않다면 위의 그림이 매우 이상하게 보일 수도 있습니다. 그러나 모든 ADMX 파일에서 이러한 XML 요소를 많이 볼 수 있습니다. 예를 들어 policyNamespaces 요소는 모든 ADMX 파일 내에 있는 이 ADMX 파일을 고유하게 식별합니다.

이전 버전의 Windows에서 사용자 지정 ADM 파일을 만들 경우에는 그룹 정책 편집기에 나타나는 정책 설정을 정의하기 위해 Category, Policy, ListBox 및 ActionList와 같은 여러 가지 태그를 적용했습니다. ADMX 형식에서도 대부분의 태그는 거의 변경되지 않거나 약소한 수준으로 변경되었음에도 불구하고 XML로 표현되기 때문에 매우 다른 형태로 보입니다. 예를 들어 그룹 정책 문제 해결을 위해 Windows 내에서 다양한 유형의 로깅을 설정하는 사용자 지정 ADM 파일을 만들었다고 가정해 보겠습니다. 이 사용자 지정 ADM 섹션은 그림 3에서 볼 수 있습니다. 이 파일을 그림 4와 같이 새로운 ADMX 형식으로 전환했습니다.

여러 가지 면에서 이 ADMX 조각은 ADM보다 훨씬 이해하기 쉽고 간결합니다. 정책 요소는 해당 정책이 수행하는 내용(폴더 리디렉션 로깅)을 지정합니다. 접두사 $(string.이 붙은 특성은 해당 ADML 문자열 요소에 대한 참조입니다. 키 및 값 이름 특성은 이 정책에 영향을 받는 레지스트리 키 및 값을 지정합니다. parentCategory 요소는 이 정책이 그룹 정책 편집기 관리 템플릿 계층에서 나타나는 위치를 제어합니다. supportedOn 요소는 이 정책에 반영된 운영 체제 버전이 무엇인지 나타내고 이로 인해 enabledvalue 및 disabledvalue 요소는 이 정책이 사용 및 사용 안 함으로 설정되는 경우 레지스트리에 들어갈 값을 지정합니다.

이것은 매우 간단한 설정/해제 정책입니다. ADM 구문에서와 마찬가지로 그룹 정책 편집기 내에서 보다 복잡한 UI 요소를 만들 수 있습니다. ADMX에서 이를 수행할 경우에는 구문에 더 많은 내용을 추가하게 됩니다. 즉, ADML 파일에서 UI 요소의 텍스트 레이블이 있는 부분을 참조하는 프레젠테이션 특성을 구문에 사용합니다. 그러나 ADMX 구문이 그리 복잡하지는 않습니다. 한 가지 기억해야 할 것은 ADM에서 ADMX로 오면서 일부 태그 이름이 변경되었다는 점입니다. 예를 들어 ADM에서 사용하는 "edittext" 및 "listbox" 태그의 경우 ADMX에서는 ADMX 파일 내에서 "text" 및 "list"로 사용되는 것을 볼 수 있습니다. 이러한 요소는 텍스트를 지정하는 ADML 파일에서 해당 항목을 갖게 되며, 이 텍스트는 해당 요소와 함께 표시됩니다.

이미 아는 내용일 수도 있지만 관리자는 기존의 사용자 지정 ADM 파일을 Windows Vista 그룹 정책 개체 편집기에 로드할 수 있습니다. 필자는 Microsoft에서 사용자 지정 ADM 파일을 ADMX 구문으로 전환할 수 있는 유틸리티를 제공할 계획이 있는지에 대해 이따금 질문을 받기도 합니다. 실제로 Microsoft에서는 FullArmor Corp.과의 협력을 통해 ADMX Migrator라는 전환 도구를 무료로 배포하고 있습니다. 이 도구는 두 가지 기능을 수행합니다. 우선 기존의 사용자 지정 ADM 파일을 ADMX 형식으로 전환해 줍니다. 그림 5에서는 이 도구를 사용하여 필자가 사용한 사용자 지정 gpolog.adm 파일을 전환하는 것을 보여 줍니다.

두 번째로 ADMX Migrator를 사용하면 ADMX Editor에서 새로운 ADMX 파일을 처음부터 만들 수 있습니다. 이 도구는 go.microsoft.com/fwlink/?LinkID=77409(영문)에서 다운로드할 수 있습니다.


ADMX 저장소

주목할 만한 또 다른 변화로 ADMX 및 ADML 파일을 저장하는 방법을 들 수 있습니다. Windows Vista 이전 버전의 Windows에서는 새 GPO를 편집하는 경우 사용자가 편집 작업을 수행하는 로컬 워크스테이션에서 Active Directory 도메인의 도메인 컨트롤러에 있는 GPO의 SYSVOL 부분으로 ADM 파일이 자동으로 복사되었습니다. 이러한 ADM 파일은 이후 만들어지는 모든 GPO에 대해 도메인 내 각 DC에 복제되었습니다. 위와 같은 프로세스에서는 많은 네트워크 대역폭과 디스크 저장소가 낭비되었으며, 특히 수천 개의 GPO가 있는 대규모 환경에서 이러한 경향이 뚜렷했습니다. Windows Vista에서는 이러한 소모적인 프로세스를 개선했습니다. 기본적으로 Windows Vista 워크스테이션에서 Active Directory 기반의 GPO를 만들 경우 그룹 정책 편집기에 나타나는 관리 템플릿 정책은 사용자가 GPO를 편집하고 있는 컴퓨터의 c:\windows\policydefinitions 폴더에서 로드됩니다.

ADMX 및 ADML 파일은 SYSVOL에 복사되지 않으며 로컬에서만 참조됩니다. 따라서 그룹 정책 환경에서 ADM 파일로 인해 나타나는 저장소 및 네트워크 부담이 해소됩니다. 그러나 이보다 더욱 개선된 사항이 또 있습니다. Windows Vista에서는 관리 템플릿을 위한 리포지토리인 중앙 저장소를 지원하므로 GPO를 편집하는 사용자에 관계없이 GPO 편집에 사용되는 ADMX 파일을 효율적으로 제어할 수 있게 되었습니다. 이렇게 하려면 모든 공식적인 ADMX 및 ADML 파일(모든 사용자 지정 파일 포함)을 네트워크 위치에 복사합니다. 그러면 이후에 Windows Vista 워크스테이션에서 그룹 정책을 편집할 때 개별적인 로컬 버전이 아니라 네트워크 기반의 버전을 모두 참조하게 됩니다. 도메인 하나에 중앙 저장소를 한 번만 설정해 주면 되므로 작업이 간편합니다. 자세한 단계를 보려면 "중앙 저장소 만들기"를 참조하십시오.


요약

Windows Vista의 ADMX 형식은 기존 OS 버전에서 사용된 ADM 파일의 문제점을 눈에 띄게 개선한 새로운 형식입니다. XML을 사용함으로써 이러한 파일을 편집하고 검색할 수 있는 더 나은 프레임워크를 얻게 됩니다. 언어별 문자열을 개별 파일로 분리함으로써 완벽한 다국어 그룹 정책 편집이 가능해졌을 뿐 아니라 중앙 저장소에서는 ADM 파일 복사본이 저장된 모든 GPO를 일일이 복사하고 업데이트해야 할 필요가 없어졌습니다. 이러한 이점을 제공하는 ADMX를 활용해 보시기 바랍니다.

중앙 저장소 만들기

중앙 저장소를 만드는 방법은 비교적 간단합니다. 간단한 다음 단계를 따라 Active Directory 도메인 내부에 하나의 저장소를 만들어 보십시오.

1단계: 탐색기를 열고 사용자 환경의 PDC 에뮬레이터 DC에 있는 SYSVOL 공유로 이동합니다. 모든 DC를 사용할 수 있으나 PDC 역할 소유자는 일반적으로 모든 그룹 정책 변경 사항이 집중된 위치에 있습니다.

2단계: SYSVOL 아래의 Policies 폴더를 찾은 다음 PolicyDefinitions라는 이름으로 새 폴더를 만듭니다.

3단계: Windows Vista 워크스테이션에서 언어별 ADML 폴더(예: 영어(미국) 컴퓨터의 경우 en-us 폴더)를 비롯하여 C:\windows\policydefinitions 폴더의 내용을 새 PolicyDefinitions 폴더로 복사합니다.

ADMX 및 ADML 파일이 중앙 저장소 폴더로 복사되면 Windows Vista의 그룹 정책 개체 편집기에서 해당 파일을 참조하게 되며 로컬로 저장된 파일은 무시하게 됩니다.




Darren Mar-Elia는 Microsoft 그룹 정책 MVP이며 유명한 그룹 정책 사이트인 www.gpoguy.com의 제작자이자 Microsoft Windows Group Policy Guide(Microsoft Press, 2005년)의 공동 저자이기도 합니다. 또한 그는 SDM Software, Inc.의 CTO이자 설립자입니다. 문의 사항이 있으면 Darren@gpoguy.com으로 연락하십시오.