본문 바로가기
IT/OS

[Windows] Active Directory 관리센터 암호정책 그룹 적용/변경하기

by 퐁시냥 2022. 2. 11.

새로워진 Active Directory 암호정책 생성/그룹 적용방법(Password Policy GPO)에 대해 공유하려 한다. 

이 기능을 사용하면 특정 그룹별 암호 복잡도, 최소 암호 길이 등 세부 암호 정책을 편리하게 적용하고 관리할 수 있다. 

 

세분화된 암호 정책 적용 방식은 Active Directory 관리 센터(Active Directory Administrative Center)의 주요 개선점이다. 개선된 부분은 크게 세가지이다. 

 

적용 대상 : Windows Server 2022, Windows Server 2019, Windows Server 2016, Windows Server 2012 R2, Windows Server 2012

 

1. Active Directory 휴지통(Active Directory Recycle Bin)
2. 세분화된 암호 정책(Fine-Grained Password Policy)
3. Windows PowerShell 기록 뷰어(Windows PowerShell History Viewer)

 

AD 휴지통 기능은 실수로 삭제된 AD 개체를 복원하는 방법이다. 윈도우의 휴지통 기능과 비슷하다.

Active Directory 휴지통은 삭제된 개체의 연결 속성, 특성이 삭제 전 상태와 동일하게 모두 복구하는 기능이다.

PowerShell 기록 뷰어는 파워쉘 실행 히스토리를 관리하고, 스크립트를 편리하게 실행할 수 있도록 하는 기능이다. 

 

그 중에 세분화된 암호 정책은 가장 크게 변화된 기능이다. 암호 정책을 신규하고, 특정 그룹에 추가하는 기능이 개선되었다.

 

기존에는 특정 그룹에 대해 암호 정책을 별도로 적용하려면 암호 정책을 생성하고, 특정 OU에 해당 GPO를 연결,

적용할 그룹&사용자를 해당 OU로 옮겨야 가능했다. 


기존(AS-IS)

1. 그룹 정책 관리
2. 그룹 정책 개체 생성(GPO)
3. 정책 편집
4. 컴퓨터 구성 > Windows 설정 > 보안설정 > 계정정책 > 암호 정책
5. GPO를 OU에 연결
6. 적용 대상 사용자 OU/그룹 변경

 

개선(TO-BE)

1. Active Directory 관리 센터
2. System
3. Password Settings Containter
4. 새로만들기(암호설정)
5. 특정 그룹 직접 적용대상 추가

0. Active Directory 관리 센터 실행

Windows PowerShell 아이콘 우클릭 > 관리자 권한으로 실행 > 입력 dsac.exe

 

1. 도메인 기능 수준 올리기

나는 Windows Server 2016 버전인데, "이 포리스트(도메인)는 가장 높은 기능 수준에서 작동 중입니다." 라고 떠서 따로 도메인 기능 수준을 올릴 필요는 없었다.

  1. 관리, 탐색 노드 추가를 차례로 클릭하고 탐색 노드 추가 대화 상자에서 원하는 대상 도메인을 선택한 후 확인을 클릭.
  2. 왼쪽 탐색 창에서 대상 도메인을 클릭하고 작업 창에서 도메인 기능 수준 올리기 클릭. Server 2008 이상에서 Windows 포리스트 기능 수준을 선택한 다음 확인 클릭.

PowerShell Script

Set-ADDomainMode -Identity contoso.com -DomainMode 3

 

2. 암호 정책 만들기

새 암호 정책을 추가하는 방법을 설명한다. 기존에 "그룹 정책 관리 편집기 > 컴퓨터 구성 > Windows 설정 > 보안설정 > 계정정책 > 암호 정책"에서 적용한 기능을 더 쉽고 간단하게 설정할 수 있다. 

 

  1. 관리 > 탐색 노드 추가 후, 탐색 노드 추가 대화 상자에서 원하는 대상 도메인을 선택한 후 확인을 클릭.
  2. ADAC 탐색 창에서 System 컨테이너를 연 후 Password Settings Container를 클릭합니다.
  3. 작업 창에서 새로 만들기를 클릭한 다음 암호 설정을 클릭합니다.
  4. 암호 설정(Password Setting) 페이지의 필드에 내용을 입력하여 새 암호 설정 개체 생성. (*이름  우선 순위 필드는 필수)
    ADAC-Password-Setting-Container
    ADAC Password Setting Container
  5. 집적 적용 대상(Directly Applies To) 클릭 > 추가(Add) > 정책을 적용할 그룹 추가(ex. pwdgroup)
  6. 글로벌 그룹의 구성원과 암호 정책 개체가 연결됨.
  7. 확인을 클릭하여 만든 세분화된 암호 정책을 제출

위와 같이 설정할 수 있는 암호 정책 설정을 한 눈에 볼 수 있다. 기존에 암호 정책에서 정책으로 하나씩 설정해야했던 정책들을 한 화면에서 설정할 수 있다.

특히 직접 적용 대상에 그룹을 추가하면 특정 그룹만 암호 정책이 적용되어 별도 OU를 생성할 필요가 없다. 

 

[PowerShell Script]

암호 정책 추가, 생성, 조회, 삭제 스크립트 목록

Add-ADFineGrainedPasswordPolicySubject
Get-ADFineGrainedPasswordPolicy
Get-ADFineGrainedPasswordPolicySubject
New-ADFineGrainedPasswordPolicy
Remove-ADFineGrainedPasswordPolicy
Remove-ADFineGrainedPasswordPolicySubject
Set-ADFineGrainedPasswordPolicy

 

New-ADFineGrainedPasswordPolicy (암호 정책 생성)

  • Name : TestPswd 
  • ComplexityEnabled : $true (암호 복잡도 정책 사용함)
  • LockoutDuration : "00:30:00" (계정 잠금 시간 30분) 
  • LockoutObservationWindow : "00:30:00"
  • LockoutThreshold : "0" (계정 잠금정책 적용)
  • MaxPasswordAge : "42.00:00:00" (암호 최대 사용 시간 42일)
  • MinPasswordAge : "1.00:00:00" (암호 최소 사용 시간 1일)

ADAC-Password-Setting-Container-Fields
ADAC Password Setting Container Fields

ADFineGrainedPasswordPolicySubject (직접 적용 대상 그룹 추가)

  • Subjects : group1 (특정 그룹을 직접적용 대상에 추가)
New-ADFineGrainedPasswordPolicy TestPswd -ComplexityEnabled:$true -LockoutDuration:"00:30:00" -LockoutObservationWindow:"00:30:00" -LockoutThreshold:"0" -MaxPasswordAge:"42.00:00:00" -MinPasswordAge:"1.00:00:00" -MinPasswordLength:"7" -PasswordHistoryCount:"24" -Precedence:"1" -ReversibleEncryptionEnabled:$false -ProtectedFromAccidentalDeletion:$true
Add-ADFineGrainedPasswordPolicySubject TestPswd -Subjects group1

 

3. 생성된 사용자의 정책 결과 집합 보기

2. 에서 할당한 그룹 구성원인 사용자에 대한 결과 암호 설정을 볼 수 있다. 

  1. 관리 > 탐색 노드 추가 후, 탐색 노드 추가 대화 상자에서 원하는 대상 도메인을 선택한 후 확인을 클릭.
  2. 2)에서 만든 암호 정책(ex.TestPswd)과 연결한 그룹 group1에 속한 사용자 test1을 선택.
  3. 작업 창에서 결과 암호 설정 보기를 클릭.
  4. 암호 설정 정책을 확인한 후 취소를 클릭.
 

[PowerShell Script]

Get-ADUserResultantPasswordPolicy test1

 

4. 암호 정책 편집

2) 에서 생성한 암호 정책을 편집하는 방법.

  1. 관리 > 탐색 노드 추가 후, 탐색 노드 추가 대화 상자에서 원하는 대상 도메인을 선택한 후 확인을 클릭.
  2. ADAC 탐색 창에서 시스템을 확장한 다음 암호 설정 컨테이너를 클릭.
  3. 2)에서 만든 세분화된 암호 정책을 선택한 후 작업 창에서 속성을 클릭.
  4. 최근 암호 기억에서 기억할 암호 수의 값을 30으로 변경.
  5. 확인을 클릭합니다.
Set-ADFineGrainedPasswordPolicy TestPswd -PasswordHistoryCount:"30"

 

5. 암호 정책 삭제

  1. 관리 > 탐색 노드 추가 후, 탐색 노드 추가 대화 상자에서 원하는 대상 도메인을 선택한 후 확인을 클릭.
  2. ADAC 탐색 창에서 System을 확장한 후 Password Settings Container를 클릭합니다.
  3. 2)에서 생성한 세분환된 암호 정책을 선택한 후 작업 창에서 속성을 클릭.
  4. 실수로 삭제되지 않도록 보호 확인란의을 선택을 취소하고 확인을 클릭.
  5. 세분화된 암호 정책을 선택한 후 작업 창에서 삭제를 클릭.
  6. 확인 대화 상자에서 확인을 클릭.

[PowerShell Script]

Set-ADFineGrainedPasswordPolicy

  • ProtectedFromAccidentalDeletion $False (실수로 삭제되지 않도록 보호 해제)

Remove-ADFineGrainedPasswordPolicy

  • TestPswd 정책 삭제
Set-ADFineGrainedPasswordPolicy -Identity TestPswd -ProtectedFromAccidentalDeletion $False
Remove-ADFineGrainedPasswordPolicy TestPswd -Confirm

 

 

참고

댓글