기업 IT 환경에서 보안 정책을 효과적으로 관리하는 것은 선택이 아닌 필수입니다. 특히 Windows 환경에서 그룹 정책 개체(GPO)를 활용한 보안 관리는 일관된 보안 체계를 구축하는 핵심 요소입니다. 이 글에서는 다양한 케이스별로 Windows GPO 보안 정책 관리 방법을 자세히 살펴보고자 합니다. 이론보다는 실제 현장에서 바로 적용할 수 있는 설정 방법과 경로를 중심으로 살펴 보겠습니다.
Windows GPO란 무엇인가?
그룹 정책 개체(Group Policy Object, GPO)는 Microsoft Windows 환경에서 사용자와 컴퓨터 설정을 중앙 집중식으로 관리할 수 있게 해주는 강력한 도구입니다. 기업 네트워크에서 수백, 수천 대의 컴퓨터에 일관된 보안 설정을 적용하는 것은 엄청난 작업이지만, GPO를 통해 이 과정을 자동화하고 표준화 할 수 있습니다.
GPO 보안 정책의 핵심 영역
GPO를 통해 관리할 수 있는 보안 정책은 매우 다양합니다. 주요 영역을 살펴보면:
- 계정 정책: 암호 복잡성, 암호 기간, 계정 잠금
- 로컬 정책: 감사, 사용자 권한 할당, 보안 옵션
- 소프트웨어 제한 정책: 허용된 애플리케이션만 실행 가능
- Windows 방화벽 설정: 인바운드/아웃바운드 규칙
- 고급 감사 정책: 상세한 시스템 활동 모니터링
- AppLocker 정책: 응용 프로그램 실행 제어
- BitLocker 정책: 디스크 암호화 설정
이 영역들은 상호 연결되어 있으며, 전체적인 보안 태세를 강화하는 데 중요한 역할을 합니다.
1. 비밀번호 정책 설정하기
복잡한 비밀번호는 보안의 기본입니다. 비밀번호 정책을 설정하는 방법을 알아봅시다.
설정 경로
그룹 정책 관리 편집기 > 컴퓨터 구성 > 정책 > Windows 설정 > 보안 설정 > 계정 정책 > 암호 정책
설정 방법
- 서버 관리자에서 ‘도구’ 메뉴 클릭 후 ‘그룹 정책 관리’ 선택
- 도메인 > ‘그룹 정책 개체’ 폴더 우클릭 > ‘여기에서 GPO 만들기’ 선택
- 이름 입력(예: “강화된 비밀번호 정책”) > ‘OK’ 클릭
- 새 GPO 우클릭 > ‘편집’ 선택
- 위 경로로 이동하여 다음 설정 구성:
- 최소 암호 길이: 12자
- 암호 복잡성 요구: ‘사용’으로 설정
- 최대 암호 사용 기간: 90일
- 암호 기록 유지: 24개
2. 사용자 권한 할당 설정하기
적절한 권한 할당은 내부자 위협을 방지하는 핵심입니다. 자세한 설정 방법을 살펴봅시다.
설정 경로
그룹 정책 관리 편집기 > 컴퓨터 구성 > 정책 > Windows 설정 > 보안 설정 > 로컬 정책 > 사용자 권한 할당
설정 방법
- 생성한 GPO 편집 화면에서 위 경로로 이동
- 다음 주요 권한 설정 구성:
- “로컬 로그온 허용”: 오른쪽 창에서 더블클릭 > ‘사용자 및 그룹 추가’ 클릭 > 필요한 그룹 추가(예: “Domain Users”)
- “시스템 종료”: 필수 그룹만 포함
- “네트워크에서 이 컴퓨터 액세스”: 필요한 서비스 계정과 사용자만 허용
- “원격 데스크톱 서비스를 통해 로그온”: IT 지원팀 그룹만 추가
- 특히 중요한 권한 설정:
"백업 파일 및 디렉터리" - 백업 관리자 그룹만 추가 "프로그램 디버그" - 개발자 그룹만 추가 "도메인 컨트롤러로 워크스테이션 연결" - 기본 그룹만 유지
3. 감사 정책 구성하기
보안 사고 발생 시 증거 수집을 위한 감사 정책을 세부적으로 설정해보겠습니다.
설정 경로
그룹 정책 관리 편집기 > 컴퓨터 구성 > 정책 > Windows 설정 > 보안 설정 > 고급 감사 정책 구성
설정 방법
- 위 경로로 이동하여 세부 카테고리 확인
- 각 카테고리별 중요 설정:계정 로그온
- “자격 증명 유효성 검사”: 더블클릭 > ‘성공 및 실패 감사’ 체크
계정 관리
- “사용자 계정 관리”: ‘성공 및 실패 감사’ 설정
- “보안 그룹 관리”: ‘성공 및 실패 감사’ 설정
자세한 추적
- “DPAPI 활동”: ‘실패 감사’ 설정
- “PNP 활동”: ‘성공 감사’ 설정
시스템
- “보안 상태 변경”: ‘성공 및 실패 감사’ 설정
- “보안 시스템 확장”: ‘성공 및 실패 감사’ 설정
- 감사 로그 크기 및 보존 설정:
경로: 컴퓨터 구성 > 정책 > Windows 설정 > 보안 설정 > 이벤트 로그 설정: '보안' 로그 선택 > 최대 로그 크기: 4GB, 최대 로그 수명: '필요 시 이벤트 덮어쓰지 않음'
4. Windows 방화벽 설정하기
네트워크 보안의 핵심인 Windows 방화벽을 GPO를 통해 구성하는 방법을 알아봅시다.
설정 경로
그룹 정책 관리 편집기 > 컴퓨터 구성 > 정책 > Windows 설정 > 보안 설정 > Windows 방화벽 및 고급 보안
설정 방법
- 위 경로로 이동하여 “Windows 방화벽 및 고급 보안” 우클릭 > “속성”
- 도메인, 개인, 공용 프로필 각각에 대해 다음 설정:
- 방화벽 상태: 켜기
- 인바운드 연결: 차단
- 아웃바운드 연결: 허용
- 인바운드 규칙 생성하기:
- “인바운드 규칙” 우클릭 > “새 규칙”
- “포트” 선택 > “다음”
- TCP/UDP 선택 및 포트 번호 입력(예: “TCP” 및 “443”)
- “연결 허용” 선택 > “다음”
- 적용할 프로필 선택 > “다음”
- 이름 및 설명 입력 > “마침”
- 로깅 설정:
"Windows 방화벽 및 고급 보안" 우클릭 > "속성" > "로깅" 탭 로그 파일 경로: 기본값 유지 로그 파일 최대 크기: 8192 KB 차단된 연결 기록: 예 성공한 연결 기록: 예
5. AppLocker 정책 구성하기
악성 애플리케이션 실행을 방지하는 AppLocker를 구성해봅시다.
설정 경로
그룹 정책 관리 편집기 > 컴퓨터 구성 > 정책 > Windows 설정 > 보안 설정 > 응용프로그램 제어 정책 > AppLocker
설정 방법
- 위 경로로 이동
- “실행 파일 규칙” 우클릭 > “기본 규칙 만들기”
- 이 작업은 기본적인 보안 규칙을 생성합니다.
- 추가 허용 규칙 만들기:
- “실행 파일 규칙” 우클릭 > “새 규칙 만들기”
- “허용” 선택 > “다음”
- “게시자” 선택(가장 권장됨) > “다음”
- 참조할 파일 선택(예: 회사 내부 애플리케이션)
- 게시자 정보 슬라이더 조정(파일 이름, 제품 이름, 게시자 또는 특정 버전 선택)
- “다음” > 예외 지정(필요시) > “다음”
- 이름 및 설명 입력 > “만들기”
- AppLocker 서비스 활성화:
컴퓨터 구성 > 정책 > Windows 설정 > 보안 설정 > 시스템 서비스 애플리케이션 ID(AppIDSvc) 서비스 찾기 > 더블클릭 '서비스 시작 모드 정의' 체크 > '자동' 선택 > 확인
6. BitLocker 드라이브 암호화 정책 설정
데이터 유출 방지를 위한 BitLocker 설정 방법을 알아보겠습니다.
설정 경로
그룹 정책 관리 편집기 > 컴퓨터 구성 > 정책 > 관리 템플릿 > Windows 구성 요소 > BitLocker 드라이브 암호화
설정 방법
- 위 경로로 이동
- 운영 체제 드라이브 설정:
- “운영 체제 드라이브” 폴더 열기
- “시작 시 추가 인증 필요” 더블클릭 > “사용” 선택 > “적용”
- “BitLocker로 보호되는 운영 체제 드라이브에 대한 복구 옵션 구성” 설정:
- “사용” 선택
- “BitLocker 복구 정보를 AD DS에 백업 허용” 체크
- “48자리 복구 암호 허용” 체크
- “적용” 클릭
- 이동식 데이터 드라이브 설정:
- “이동식 데이터 드라이브” 폴더 열기
- “이동식 드라이브에서 BitLocker 사용 제어” > “사용” 선택
- “이동식 데이터 드라이브에 대한 암호화 방법 및 암호화 수준 선택” > “사용” 선택
- 암호화 방법 드롭다운에서 “AES-256(가장 강력)” 선택
- 하드웨어 보안 활용 구성:
경로: 컴퓨터 구성 > 정책 > 관리 템플릿 > Windows 구성 요소 > BitLocker 드라이브 암호화 > 운영 체제 드라이브 설정: "TPM 플랫폼 유효성 검사 프로필 구성" > "사용" 선택 > "PCR 0, 2, 4, 11" 체크
7. 장치 제어 정책 설정
USB 및 기타 이동식 장치에 대한 접근을 제어하는 정책을 구성해 보겠습니다.
설정 경로
그룹 정책 관리 편집기 > 컴퓨터 구성 > 정책 > 관리 템플릿 > 시스템 > 장치 설치 > 장치 설치 제한
설정 방법
- 위 경로로 이동
- 기본 정책 설정:
- “장치 설치 제한 정책에 의해 제한되지 않은 장치 클래스 지정” 더블클릭
- “사용” 선택 > “표시” 버튼 클릭
- 허용할 장치 클래스 GUID 입력(예: 키보드, 마우스 GUID)
- 저장 장치 제한:
- “이동식 저장 장치 설치 방지” 더블클릭
- “사용” 선택 > “적용”
- 예외 사용자 그룹 설정:
- “이러한 정책 설정의 영향을 받지 않는 관리자 지정” 더블클릭
- “사용” 선택 > “표시” 버튼 클릭
- 예외 그룹 추가(예: “IT 지원”, “도메인 관리자”)
- 세부 저장 장치 제어를 위한 WMI 필터 생성:
1. 그룹 정책 관리 콘솔 > WMI 필터 우클릭 > "새로 만들기" 2. 이름 입력: "USB 제어" 3. 쿼리 추가: SELECT * FROM Win32_PnPEntity WHERE DeviceID LIKE '%USB%' 4. 생성한 GPO와 이 WMI 필터 연결
8. 스크립트 실행 정책 구성
PowerShell 스크립트 실행을 제어하여 악성 스크립트로부터 시스템을 보호합니다.
설정 경로
그룹 정책 관리 편집기 > 컴퓨터 구성 > 정책 > 관리 템플릿 > Windows 구성 요소 > Windows PowerShell
설정 방법
- 위 경로로 이동
- “PowerShell 스크립트 실행 활성화” 더블클릭:
- “사용” 선택
- 실행 정책 옵션: “원격 서명됨”
- (이 설정은 신뢰할 수 있는 게시자가 서명한 스크립트만 실행 허용)
- 스크립트 블록 로깅 활성화:
- “PowerShell 스크립트 블록 로깅 켜기” 더블클릭
- “사용” 선택
- “옵션:” 아래 “스크립트 블록 내용 로깅 사용” 체크
- “적용” 클릭
- 추가 스크립트 제한:
사용자 구성 > 정책 > 관리 템플릿 > 시스템 > 스크립트 "스크립트 처리 방지" > "사용" > 특정 파일 확장자 추가(.vbs, .js 등)
9. 원격 데스크톱 보안 설정
원격 데스크톱 서비스를 안전하게 구성하여 무단 접근을 방지합니다.
설정 경로
그룹 정책 관리 편집기 > 컴퓨터 구성 > 정책 > 관리 템플릿 > Windows 구성 요소 > 터미널 서비스 > 원격 데스크톱 서비스 > 원격 데스크톱 세션 호스트 > 보안
설정 방법
- 위 경로로 이동
- 기본 보안 설정:
- “원격 RPC 연결 필요” 더블클릭 > “사용” 선택
- “서버 인증 인증서 필요” > “사용” 선택
- “보안 RDP 연결 필요” > “사용” 선택 > “SSL(TLS 1.2) 사용” 옵션 선택
- 세션 보안 강화:
- “세션 시간 제한 및 설정” 폴더 열기
- “유휴 세션 제한 시간 설정” > “사용” 선택 > “15분” 설정
- “연결 해제된 세션 종료” > “사용” 선택 > “1시간” 설정
- 사용자 인증 강화:
- “원격 데스크톱 서비스 사용자의 네트워크 수준 인증 요구” > “사용” 선택
- “컴퓨터 구성 > 정책 > Windows 설정 > 보안 설정 > 로컬 정책 > 사용자 권한 할당”으로 이동
- “원격 데스크톱 서비스를 통해 로그온 허용” 설정에 특정 그룹만 추가
10. 소프트웨어 업데이트 관리 정책
Windows Update 및 서드파티 소프트웨어 업데이트를 자동화하여 알려진 취약점을 패치합니다.
설정 경로
그룹 정책 관리 편집기 > 컴퓨터 구성 > 정책 > 관리 템플릿 > Windows 구성 요소 > Windows 업데이트
설정 방법
- 위 경로로 이동
- 기본 업데이트 설정:
- “자동 업데이트 구성” 더블클릭
- “사용” 선택
- 구성 옵션: “4 – 자동 다운로드 및 예약된 설치”
- 예약된 설치 일: 매주 일요일
- 예약된 설치 시간: 03:00
- 업데이트 유형 및 소스 설정:
- “Microsoft 제품의 업데이트 제공” > “사용” 선택
- “다른 Microsoft 제품에 대한 업데이트 제공” > “사용” 선택
- 업데이트 소스 구성:
- “Windows Update 서비스 위치 지정” > “사용” 선택
- 내부 WSUS 서버 URL 입력: “http://wsus.yourcompany.com:8530”
- 재부팅 정책 구성:
"자동 업데이트로 인한 재부팅 예약 구성" > "사용" 선택 "다음 기간(분) 내에 재부팅 예약" > "15" 설정 "설치 중에 자동 재부팅하지 않음" > "사용" 선택(서버에만 적용)
11. 루프백 처리 모드를 활용한 키오스크 및 공용 컴퓨터 설정
공용 컴퓨터나 키오스크 등 특수 환경을 위한 설정을 구성합니다.
설정 경로
그룹 정책 관리 편집기 > 컴퓨터 구성 > 관리 템플릿 > 시스템 > 그룹 정책
설정 방법
- 루프백 처리 활성화:
- 위 경로로 이동
- “사용자 그룹 정책 루프백 처리 구성” 더블클릭
- “사용” 선택
- “대체” 모드 선택 (컴퓨터 설정이 사용자 설정을 완전히 대체)
- 제한된 환경 구성:
사용자 구성 > 정책 > 관리 템플릿 > 제어판 "제어판 항목 표시 또는 숨기기" > "사용" > "숨기기" 선택 사용자 구성 > 정책 > 관리 템플릿 > 데스크톱 "데스크톱 아이콘 표시 안 함" > "사용" 선택
- 자동 로그온 설정(주의: 보안 위험이 있음, 필요한 경우만 사용):
명령 프롬프트(관리자 권한)에서: reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v AutoAdminLogon /t REG_SZ /d 1 /f reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DefaultUserName /t REG_SZ /d "사용자이름" /f reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DefaultPassword /t REG_SZ /d "비밀번호" /f
사례별 GPO 문제 해결 방법
GPO 적용 문제가 발생했을 때 체계적으로 진단하고 해결하는 방법을 알아봅시다.
진단 도구 및 명령어
- GPResult 명령어 사용:
명령 프롬프트(관리자 권한)에서: gpresult /h c:\temp\gpreport.html /f
- 이 보고서를 열어 어떤 정책이 적용되었는지, 어떤 정책이 거부되었는지 확인
- Group Policy Modeling 사용:
1. 그룹 정책 관리 콘솔 열기 2. 그룹 정책 모델링 우클릭 > "Group Policy Modeling 마법사" 3. 사용자 및 컴퓨터 지정, 다양한 GPO 설정 시뮬레이션
- 이벤트 로그 확인:
1. 이벤트 뷰어 열기 2. 응용 프로그램 및 서비스 로그 > Microsoft > Windows > GroupPolicy 3. 오류 및 경고 메시지 검토
일반적인 문제 해결
- 정책이 적용되지 않는 문제:
해결 방법: 1. 명령 프롬프트에서 'gpupdate /force' 실행 2. 컴퓨터 재부팅 3. WMI 필터 확인 - 조건이 맞지 않아 적용되지 않을 수 있음 4. 보안 필터링 확인 - 사용자/컴퓨터가 허용 목록에 있는지 확인 5. GPO 링크 상태 확인 - '링크 사용' 옵션이 켜져 있는지 확인
- 충돌하는 정책 해결:
해결 방법: 1. GPResult 보고서에서 '승리한 GPO' 확인 2. 정책 우선순위 이해: 로컬 < 사이트 < 도메인 < OU 3. 같은 수준에서는 'GPO 링크 순서'가 낮은 것이 우선 4. 'GPO 강제' 옵션이 설정된 정책은 항상 우선 적용됨 5. 차단된 상속이 있는지 확인
- 성능 문제 해결:
해결 방법: 1. 불필요한 CSE 비활성화 2. 너무 많은 GPO 링크 제거 3. 빠른 링크 속도 미사용 동안 처리 사용 4. 백그라운드 처리 활성화 5. 대역폭 사용량 최적화를 위해 GPO 정리 및 통합
GPO 로그 찾기 및 분석
1. C:\Windows\debug\usermode\gpsvc.log - 그룹 정책 서비스 로그
2. C:\Windows\System32\Grouppolicy\Machine\registry.pol - 컴퓨터 정책 설정
3. C:\Users\{사용자}\AppData\Local\Microsoft\Group Policy\History - 사용자별 GPO 처리 기록
효과적인 GPO 보안 정책 관리를 위한 팁
Windows GPO를 통한 보안 정책 관리는 단순한 설정 작업이 아닌 지속적인 관리 과정입니다. 다음 팁을 참고하세요:
- 계층적 접근 방식 – 전체 도메인용 기본 정책부터 시작하여 OU별 세부 정책으로 구체화하세요.
- 명확한 명명 규칙 – 모든 GPO에 명확한 이름과 설명을 부여하세요. 예: “SEC-비밀번호-기본정책”, “SEC-원격접속-관리자”
- 정기적인 감사 – 최소 분기별로 모든 GPO 설정을 검토하고 필요한 부분을 업데이트하세요.
- 테스트 환경 활용 – 중요한 변경사항은 테스트 OU에 먼저 적용하여 영향을 평가하세요.
- 문서화 – 모든 GPO 변경사항을 기록하고, 각 정책의 목적과 적용 범위를 문서화하세요.
- 최소 권한 원칙 – 사용자와 시스템에 필요한 최소한의 권한만 부여하세요.
- 정기적인 백업 – GPO 백업 계획을 수립하고 정기적으로 백업을 수행하세요.
- 성능 고려 – 너무 많은 개별 GPO는 성능 저하를 유발할 수 있으니 적절히 통합하세요.
효과적인 GPO 관리는 단순한 기술적 작업이 아니라 조직의 비즈니스 요구사항, 규제 요건, 그리고 위험 관리 전략을 모두 고려한 종합적인 접근이 필요합니다. 이 가이드를 통해 여러분 조직의 보안 태세를 한층 강화하시길 바랍니다!