현재 로컬 Windows 관리자 암호를 어떻게 처리하고 있습니까? 모든 Windows 시스템에는 각 PC의 통치의 열쇠가 있는 하나의 암호가 있습니다. 로컬 관리자 암호는 Active Directory (AD)의 일부가 아니기 때문에 각 컴퓨터의 계정을 별도로 관리해야 합니다. 이것은 골칫거리입니다.
대부분의 경우, 조직은 그냥 각 Windows 기기에 표준 관리자 암호를 설정하고 많이 생각하지 않습니다. 이 편리한 관행은 잘못된 손에 그 하나의 마스터 암호가 들어가면 조직에 더 큰 문제를 초래합니다. 각 컴퓨터에 별도의 로컬 관리자 암호가 있는 것은 악의적인 개인이 한 대의 PC에 접근하는 것을 방지하지 않지만 다른 PC의 측면적인 이용을 상당히 방지합니다.
Microsoft Local Administrator Password Solution (LAPS)를 사용하면 도움이 됩니다.
이 기사에서는 LAPS를 설정하여 AD에 가입된 컴퓨터를 안전하게 보호하는 방법을 배우게 될 것입니다.
Microsoft LAPS란 무엇인가요?
LAPS는 Windows 환경을 안전하게 유지하는 핵심 요소입니다. LAPS는 스마트한 방식으로 작동하는 도구입니다. LAPS가 활성화된 도메인 컴퓨터의 로컬 관리자 암호를 자동으로 무작위로 변경하고 정기적으로 암호를 변경합니다.
LAPS는 도메인 전반에 걸친 로컬 관리자 비밀번호를 무작위화하여 해커와 악성 소프트웨어의 수평 이동을 방지합니다. 이제 클라이언트에 긴 로컬 관리자 비밀번호가 있으면 이로부터 보호받을 것이라고 생각할 수 있지만, 그것은 사실이 아닙니다.
해커들은 Pass-The-Hash 방법을 사용하여 빠르게 도메인을 퍼져 나가며, 동일한 방법을 사용하여 도메인 관리자 자격 증명을 찾아낼 수도 있습니다. LAPS는 악의적인 개인들이 각각의 개별 기계에 대한 비밀번호를 찾아내는 것을 강제함으로써 이러한 활동을 방지합니다.
LAPS in Practice
LAPS는 세 가지 주요 부분으로 구성되어 있습니다:
고정된 AD 속성
LAPS는 모든 제어 컴퓨터의 각 로컬 관리자 비밀번호를 ms-Mcs-AdmPwd라는 AD에 저장합니다. LAPS는 비밀번호가 만료되는 시간을 알아야 변경할 수 있으므로 또 다른 AD 속성인 ms-Mcs-AdmPwdExpirationTime도 저장합니다. 이러한 AD 속성은 그룹이나 사용자와 같은 지정된 AD 주체와 비밀번호를 사용하는 컴퓨터 계정에 의해만 읽고/쓸 수 있습니다.
GPO 설정
컴퓨터에 LAPS를 제공하고 비밀번호를 변경하기 위해 LAPS는 GPO 설정 집합도 가지고 있습니다. GPO가 일련의 컴퓨터에 연결되면, LAPS 설정이 각 컴퓨터에 분배됩니다. 컴퓨터가 GPO 설정을 적용하면, LAPS는 특별한 DLL 파일을 사용하여 이들을 해석합니다.
LAPS가 현재 날짜가 비밀번호의 만료일을 지났다고 판단하면 다음을 수행합니다:
- 새로운 비밀번호를 무작위로 생성하고 로컬 관리자 비밀번호로 설정합니다.
- 새로운 로컬 관리자 비밀번호를 AD의 Ms-Mcs-AdmPwd 속성에 기록합니다.
- ms-Mcs-AdmPwdExpirationTime에 새로운 만료일을 기록합니다.
이 똑똑하면서도 간단한 방법을 사용하여 도메인 컴퓨터의 보안을 더욱 강화합니다.
LAPS 설정
충분한 정보가 있으니, LAPS가 무엇을 할 수 있는지 실제로 확인해 봅시다! LAPS 설정은 복잡하지 않지만 이 튜토리얼에서 배울 몇 가지 단계가 필요합니다. 다음과 같습니다:
- 관리자 컴퓨터에 LAPS 관리 도구 설치
- AD 스키마 확장하여 LAPS에서 사용하는 두 가지 사용자 정의 AD 속성 추가
- AD의 다양한 구성 요소에 적절한 권한 설정
- Windows 컴퓨터에 적용되는 LAPS GPO 작성
- 해당 Windows 컴퓨터에 LAPS GPO 확장 배포
위의 단계를 완료하면 완전히 기능이 구현된 LAPS 환경이 설정되어 있습니다!
전제 조건
이 문서에서는 LAPS를 실제로 설정합니다. 따라 해보려면 몇 가지 전제 조건을 충족해야 합니다.
- AD 도메인(2003 이상)
- A computer running Windows (10 or Server 2012+ is recommended) has RSAT for Active Directory installed.
- AD 도메인 관리자 및 스키마 관리자 그룹의 구성원인 계정에 액세스할 수 있어야 합니다.
이 문서의 모든 예시는 contoso.com이라는 AD 도메인을 사용합니다.
스키마 관리 그룹에 대한 최선의 방법은 권한이 필요할 때만 해당 그룹의 구성원이 되는 것입니다.
Microsoft LAPS 관리 도구 설치
먼저 관리 컴퓨터에 LAPS 관리 도구를 설치해야 합니다. 이 관리 도구는 LAPS GPO 확장 기능(선택한 경우)과 LAPS를 구성하는 관리 도구를 모두 설치합니다.
- 먼저 LAPS.x64.msi 파일을 다운로드하고 관리자 권한으로 실행한 다음 다음을 클릭합니다.

2. 사용자 정의 설정까지 다음을 누르고 관리 도구와 전체 기능이 로컬 하드 드라이브에 설치됩니다를 선택하여 이 두 구성 요소를 모두 설치합니다. 현재 컴퓨터를 LAPS로 관리하지 않으려면 AdmPwd GPO 확장을 선택합니다.

3. 설치가 완료될 때까지 다음을 클릭한 다음 설치 프로그램을 종료합니다.
이제 LAPS GPO 확장(선택한 경우)과 관리 도구를 설치했으므로 AD 스키마를 확장하고 GPO를 추가할 수 있습니다.
AD 스키마 확장
앞서 언급한 대로 LAPS는 ms-Mcs-AdmPwd와 ms-Mcs-AdmPwdExpirationTime이라는 두 개의 AD 속성을 사용합니다. 이 두 속성은 기본적으로 제공되지 않으며 AD 스키마에 추가해야 합니다.
- 도메인 관리자 그룹의 구성원을 스키마 관리자 그룹에 추가하십시오. 계정이 이미 구성원이 아닌 경우에만 추가하십시오. 이것을 “관리자 계정”이라고 부르겠습니다.
- 관리자 계정으로 PowerShell을 시작하고
Import-module AdmPwd.PS
를 실행하여 AdmPwd PowerShell 모듈을 가져오십시오. - 모듈이 가져와지면 명령어
Update-AdmPwdADSchema
를 실행하여 AD 스키마를 업데이트하고 두 개의 AD 속성을 추가하십시오. 다음 스크린샷에서 결과를 확인할 수 있습니다.

이제 LAPS를 지원하기 위해 AD 스키마를 확장하고 Active Directory에서 권한을 설정할 준비가 되었습니다.
Active Directory 권한 구성
각 컴퓨터는 로컬 관리자 비밀번호와 만료 시간 AD 속성을 업데이트할 수 있는 권한이 필요합니다. 이를 위해 각 컴퓨터는 ms-Mcs-AdmPwd와 ms-Mcs-AdmPwdExpirationTime AD 속성에 대한 자체 쓰기 권한을 가져야 합니다. 다행히도 대부분의 작업은 AdmPwd PowerShell 모듈을 사용하여 쉽게 수행할 수 있습니다.
컴퓨터가 비밀번호를 저장할 수 있도록 허용
먼저, 각 컴퓨터가 ms-Mcs-AdmPwd AD 속성에 비밀번호를 저장하고 ms-Mcs-AdmPwdExpirationTime AD 속성에서 비밀번호 만료 일자를 업데이트할 수 있도록 해야 합니다. AdPwd PowerShell 모듈에는 이러한 권한을 설정할 수 있는 Set-AdmPwdComputerSelfPermission
이라는 명령어가 있으며 이는 조직 단위(OU)별로 적용되며 모든 하위 OU에 적용됩니다.
PowerShell에서 Set-AdmPwdComputerSelfPermission -OrgUnit ‘OU=Workstations,DC=contoso,DC=com’
을 실행하십시오. 특정 OU와 도메인 이름을 업데이트해야합니다.

LAPS가 더 많은 OU를 제어하도록하려면 AD에서 각 OU에 대해 위의 명령을 반복하십시오.
확장 권한을 찾아 AD 속성 잠금
각 컴퓨터의 로컬 관리자 암호를 읽고 재설정할 권한이있는 사용자 및 그룹 만 허용하려면 액세스 권한을 감사해야합니다. 특히 “확장 권한”을 가질 필요가있는 계정만 가지고 있는지 확인해야합니다.
확장 권한이있는 계정을 찾으려면 Find-AdmPwdExtendedRights -OrgUnit 'OU=Workstations,DC=contoso,DC=com' | Select -ExpandProperty ExtendedRightHolders
를 실행하십시오. OU와 도메인 이름을 대체해야합니다.
다음 스크린 샷에서 CONTOSO\joe-the-admin 및 CONTOSO\MDT-service가 Workstations OU에 대해 확장 권한을 가지고 있다는 것을 확인할 수 있습니다.

MDT-service 권한은 확장 권한이 필요하지만 joe-the-admin 권한은 필요하지 않습니다. 이제 joe-the-admin의 권한을 제거해야합니다.
이전 단계에서 self-write 권한을 설정한 모든 OU에 대해이 프로세스를 반복해야합니다.
확장 권한 제거
확장 권한을 제거해야 할 각 계정을 식별 한 후 실제로 수행해야합니다.
- 활성 디렉터리 사용자 및 컴퓨터를 열고 상단 메뉴에서 보기를 클릭하고 고급 기능이 활성화되었는지 확인하십시오. 고급 기능을 활성화하면 다음 스크린샷에 표시된 대로 일반적으로 숨겨진 OU가 모두 표시됩니다.

2. 확장된 권한을 제거하려는 OU에서 마우스 오른쪽 버튼을 클릭하고 속성을 클릭하십시오.

3. 보안 탭을 클릭한 다음 고급 버튼을 클릭하십시오.
4. 확장된 권한을 제거하려는 계정이나 그룹을 찾아 선택한 후 제거를 클릭하여 제거하십시오.

5. 확장된 권한을 가진 모든 주체에 대해 필요한 만큼 이러한 단계를 반복하십시오.
로컬 관리자 비밀번호의 읽기 및 재설정 권한 부여
적절한 계정만이 확장된 권한을 가지도록 확인한 후, 이제 LAPS Workstations Password Read와 LAPS Workstations Password Reset라는 두 개의 AD 그룹을 생성해야 합니다.
여기에서 지정된 그룹 이름은 필수 사항이 아닙니다. 원하는 그룹 이름을 자유롭게 사용할 수 있습니다.
관리자 계정이 여전히 열린 상태에서 PowerShell 콘솔에 다음 명령을 입력하여 Workstations OU의 컴퓨터에 대해 두 AD 그룹이 로컬 관리자 비밀번호를 읽을 수 있는 권한을 부여하십시오.
이제 위에서 AD 그룹에 컴퓨터의 로컬 관리자 암호를 읽고 재설정할 수 있는 권한을 부여했습니다. 이제 암호를 읽거나 재설정하는 데 필요한 관리자 또는 그룹을 추가해야 합니다.
그룹 정책 템플릿을 위한 중앙 저장소 생성
LAPS를 컴퓨터에 설치한 후 LAPS가 자동으로 활성화되도록 하려면, 먼저 그룹 정책 템플릿을 PolicyDefinition 저장소로 가져와서 그룹 정책을 생성합니다. PolicyDefinition 저장소는 모든 도메인 컨트롤러에 위치한 폴더입니다.
도메인 컨트롤러를 대상으로 하는 LAPS GPO를 활성화하지 마십시오. 이는 지원되지 않으며 예기치 않은 문제가 발생할 수 있습니다.
- AD에서 도메인 컨트롤러를 선택하십시오. 어떤 도메인 컨트롤러든 작동합니다.
- \\contoso.com\SYSVOL\Policies\PolicyDefinitions이 존재하는지 확인하십시오. 그렇지 않으면 지금 생성하십시오.
- 관리자 컴퓨터(C:\Windows\PolicyDefinitions)의 내용을 도메인 컨트롤러의 \\contoso.com\SYSVOL\Policies\PolicyDefinitions 폴더로 복사하십시오.
GPO 생성
이제 LAPS GPO 템플릿을 중앙 저장소(PolicyDefinitions 폴더)로 복사합시다.
- 관리자 계정으로 그룹 정책 관리를 열고, LAPS를 활성화하고자 하는 OU를 마우스 오른쪽 버튼으로 클릭한 후 기존 GPO 연결…

2. 컴퓨터 구성 —> 관리 템플릿 —> LAPS로 이동하여 로컬 관리자 암호 관리 사용를 활성화로 설정합니다. 암호 복잡성에 대한 다른 요구 사항이 있는 경우, 암호 설정을 편집하십시오.

거의 다 되었습니다! 이제 LAPS를 사용하려는 모든 OU에이 GPO를 연결하십시오.
LAPS GPO 확장 기능 배포
이 GPO가 해당되는 모든 컴퓨터가 있는 OU에 적용되면, 이제 LAPS GPO 확장 기능을 배포해야 합니다. MSI를 설치하거나 LAPS DLL 파일을 등록하여 이 확장 기능을 설치하는 몇 가지 다른 방법이 있습니다.
MSI를 설치하는 경우, LAPS로 제어되는 OU 내의 모든 컴퓨터에서 다음 명령을 실행하여 LAPS를 활성화합니다.
DLL을 등록하여 LAPS를 활성화하려면 다음 명령을 사용할 수 있습니다.
컴퓨터에서 이러한 명령을 실행하기 위해 사용할 수 있는 원격 실행 도구를 사용할 수 있습니다.
GPO를 사용하여 LAPS MSI 배포
LAPS GPO 확장 기능이 모든 컴퓨터에 설치되도록 보장하는 가장 쉬운 방법입니다.
- LAPS.x64.msi을 모든 도메인 컴퓨터에서 접근 가능한 네트워크 공유에 복사하십시오.
- 관리 컴퓨터에서 그룹 정책 관리를 열고 Install LAPS 또는 유사한 이름의 GPO를 생성하십시오.

3. Install LAPS GPO를 마우스 오른쪽 단추로 클릭하고 편집을 클릭한 다음 컴퓨터 구성 -> 정책 -> 소프트웨어 설정 -> 소프트웨어 설치로 이동하십시오.

4. 소프트웨어 설치를 마우스 오른쪽 단추로 클릭하고 새로 만들기—> 패키지…

5. LAPS.x64.msi를 복사한 공유로 이동하여 선택한 다음 확인을 클릭하고 할당을 선택하십시오.

6. 이제 LAPS를 구성한 OU에 GPO를 연결하십시오. 이제 LAPS를 테스트할 준비가 되었습니다!
LAPS 테스트
제어된 컴퓨터에서 LAPS가 설계대로 작동하는지 확인하기 위해, 방금 구성한 OU 중 하나에 속한 컴퓨터 중 하나를 강제로 앞서 말한 GPO를 적용하도록 하겠습니다.
- 방금 구성한 OU 중 하나에 위치한 컴퓨터를 다시 시작하십시오. 컴퓨터가 다시 실행되면 LAPS가 설치되기 시작해야 합니다.
- LAPS가 컴퓨터에 설치된 후에는 컴퓨터를 다시 재부팅하고 관리 컴퓨터에서 관리자 권한으로 PowerShell 콘솔을 열어 LAPS Workstation Password Read 및 LAPS Workstation Password Reset AD 그룹의 구성원인 계정으로 실행하십시오.
- 방금 재부팅하고 LAPS를 설치한 컴퓨터 이름을 사용하여
Get-AdmPwdPassword <컴퓨터이름>
명령을 실행하십시오. 모든 것이 잘 되었다면, 다음 스크린샷과 유사한 출력을 볼 수 있을 것입니다.

4. 이제 표시된 비밀번호를 사용하여 LAPS로 제어되는 컴퓨터에 로그인해 보십시오. 작동하면 로그인될 것입니다.
5. Reset-AdmPwdPassword <컴퓨터이름>
을 실행하고 컴퓨터를 재부팅하여 비밀번호를 재설정해 보십시오. 다음 스크린샷에서 비밀번호가 변경된 것을 확인할 수 있습니다.

이제 환경에서 LAPS가 작동합니다. 그리고 관리는 매우 쉽지만 실제로 알아야 할 몇 가지 사항이 있습니다.
실제 사용을 위한 팁과 요령
위에서 다룬 설정은 대부분의 작은 환경에 충분하지만, 대규모 조직에는 보안이 부족하거나 감사 수준을 제공하지 않을 수도 있습니다. 실제 환경에서 작동하도록하기 위해 몇 가지 팁이 있습니다.
1. 감사 기능 켜기
비밀번호를 읽거나 재설정할 때 감사 기능은 중요합니다. 특히 모든 컴퓨터의 비밀번호를 읽으면 경고를 받을 수 있습니다. 다행히 AdmPwd 모듈은 이를 가능하게하는 cmdlet을 제공합니다.
2. 사용자가 ms-mcs-AdmPwd AD 속성을 직접 읽을 수 없도록 보장합니다.
한 가지 방법은 사용자가 AD 속성 ms-mcs-AdmPwd를 읽을 수 없도록 하기 위해 컴퓨터의 로컬 관리자 암호를 얻을 수 있는 자체 서비스 방법을 만드는 것입니다. 이 글의 범위를 벗어나지만, 이와 관련하여 기존에 사용할 수 있는 적합한 자체 서비스 포털이 없는 경우 JEA나 WebJEA와 같은 도구를 확인해보세요.
3. 디스크 이미징 중에 Ms-Mcs-AdmPwdTime 속성 재설정하기
LAPS로 제어되는 컴퓨터를 이미징 할 때 Ms-Mcs-AdmPwdTime 속성을 재설정하는 것을 잊지 마십시오. 그렇지 않으면 이미지에서 제공된 로컬 관리자 암호가 변경되지 않으며 유지됩니다. 그러나 Ms-Mcs-AdmPwdTime이 만료된 후에는 변경이 트리거됩니다.
다음 PowerShell 명령을 사용하여 AdmPwd 모듈 없이 ExpirationTime
을 재설정할 수 있습니다.
4. ms-Mcs-AdmPwd 속성은 AD 재활용통에 남아 있습니다.
AD에서 개체를 삭제하고 AD 재활용통이 활성화되어 있는 경우, 일반적으로 AD는 중요한 속성을 제거합니다. 다행히 ms-Mcs-AdmPwd는 이로부터 보호됩니다!
5. LAPS는 일시적인 액세스용이 아닙니다.
LAPS는 공급업체, 사용자 및 기타 유형의 계정에 일시적인 액세스 권한을 부여하기 위한 것이 아닙니다. 대신 LAPS 대신 해당 컴퓨터의 로컬 관리자로 설정된 AD 그룹을 사용하고 그룹 멤버 자격에 대한 TimeToLive
을 사용하십시오. 결론은 다음과 같습니다.
LAPS를 배포하는 방법, 권한 설정 및 보안 강화를 위한 팁과 트릭을 배웠습니다. LAPS가 배포된 환경에서는 모든 로컬 관리자 비밀번호가 정기적으로 자동으로 변경됩니다. 이는 도메인에 가입된 컴퓨터가 해커나 악성 소프트웨어에 의해 점유되는 위험을 크게 줄여줍니다. 이로 인해 여러분은 많은 머리 아픔을 피할 수 있을 것입니다.
질문이 있으시면 @AlexAsplund로 트윗하거나 아래에 댓글을 남겨주시기 바랍니다.